yazılım

Spring'in Yöneticisi: applicationContext.xml

Konu:

Spring'de projeyi yöneten bir bağlama yani context'e ihtiyacımız var. Bu bağlam ile projenin kontrolü, iş yapıcı sınıfları (bean) ve veri transfer sınıfları (modeller ya da POJO'lar) framework'e verilir. Tabir yerindeyse bu yöneticiden habersiz iş yapılmaz. Yapmaya kalktığınızda istediğiniz sonuçları elde edemeyebilirsiniz.

Bir bağlam tanımlamak için çeşitli yollar var. Bunlardan biri applicationContext.xml dosyasını kullanmak. Spring MVC yapısındaki bir web projemizde WEB-INF klasörü altında tanımlayacağımız bir applicationContext.xml dosyası işlerimizi yönetecek olan proje yöneticimiz görevinde sayılabilir. Aşağıdaki örnek bağlam dosyası ile Spring 3.2.4.RELEASE versiyonuna uygun bir uygulama yapabilirsiniz:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xmlns:context="http://www.springframework.org/schema/context"
     xsi:schemaLocation="http://www.springframework.org/schema/beans
         http://www.springframework.org/schema/beans/spring-beans.xsd
         http://www.springframework.org/schema/context
         http://www.springframework.org/schema/context/spring-context.xsd">

   <context:component-scan base-package="org.hosaf.spring-ornek"/>

</beans>

Burada bağlamımızda temel bir paket olduğunu ve onun içindeki bileşenleri (component) tarayarak projedeki iş yapıcı sınıfları yani bean'leri tanımlayacağını bildirmiş oluyoruz. Taranacak bu temel paketin adı ise org.hosaf.spring-ornek

Bu paketin içinde tanımlayacağınız tüm @Component annotation'ınına sahip olan sınıflar birer bean olarak bağlam içinde yerlerini alacaklar ve birbirlerinden haberdar olarak iş yapabilecekler.

Eğer bağlam dosyanızın yerini ve adını beğenmediyseniz ve farklı bir yere koymak istiyorsanız bunu da web.xml içinde aşağıdaki gibi bildirmeniz gerekiyor:

<context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>
        classpath:/context/myContext.xml
    </param-value>
</context-param>

Burada Java kaynak dosyaları arasında context adındaki klasörün altında myContext.xml adında olduğunu bildirmiş olduk.

Kaynak: http://docs.spring.io/spring/docs/3.2.4.RELEASE/spring-framework-referen...

NodeJS Sunucuya Dosya Yükleme (Upload Server)

NodeJS ile bir sunucu oluşturup, sunucuya dosya yükleme işlemini basitçe şöyle yapabiliriz:

var fs = require('fs');
var http = require('http');

http.createServer(function(req,res){
  var newFile = fs.createWriteStream("benioku.txt");
  req.pipe(newFile);
  req.on('end',function(){
    res.end('Dosya yükleme tamamlandı...');
  });
}).listen(8080);

Bu kod çalıştırıldığında, sunucuya gelen her dosyayı benioku.txt adıyla kaydeder. Yükleme tamamlandığında ise 'Dosya yükleme tamamlandı...' cevabını gönderir.

Örneğin istemci (client) tarafından bunu curl ile deneyelim. Yükleme yapmak üzere bir dosya oluşturduktan sonra ya da uygun bir dosya bulduktan sonra;

curl --upload-file uygunDosya.txt http://localhost:8080

NodeJS Dosya Kopyalama

Konu:

NodeJS ile basit bir dosya kopyalama işlemini şu şekilde yapabiliriz:

var fs = require('fs');

var file = fs.createReadStream('kaynak.md');
var newFile = fs.createWriteStream('hedef.md');

file.pipe(newFile);

NodeJS Notları

Bu bölümde NodeJS hakkındaki notlarımı paylaşacağım.

Codeschool'dan 48 Saat Ücretsiz Ders İmkanı

Konu:

Daha önce 'İnternetten Eğitimler' başlığıyla belirttiğim eğitimlerden birini Codeschool.com veriyor. Codeschool genel olarak ücretli eğitimler veriyor fakat bazen de ücretsiz olarak kampanyalar yapıyor. Bu kampanyalardan biri de Hall Pass. Bu kampanyaya katılarak 48 saat ücretsiz olarak dilediğiniz kursu alabiliyorsunuz. Bu kampanya için katılım adresi şöyle:

http://go.codeschool.com/KFQrnw

Kurban bayramında iyi eğitimler...

Sayfalar

Subscribe to RSS - yazılım