ÜYE GİRİŞİ  
Kullanıcı adı :
Parola :
 
  Üye Ol!  
 
 
ANASAYFA HABERLER ASP ASP.NET PHP C/C++ C# JAVA ARAMA İLETİŞİM

ASP.NET
  Expression Web ile Site Yapimi
  Web Server Control Yazmak - 2
  Web Server Control Yazmak - 1
  Sql Cache Dependency
  Web Kontrollerini Etkin Kullanmak
  Xslt Kullanımı
  Bir Web Sayfasının Anatomisi
  Client Script Callback
  Login Kontrollerinin Kullanımı

ASP
  ASP Nesneleri
  29 Soruda ASP
  Matematiksel Uygulamalar
  Select Case Yapısı 2
  Fonksiyon(Function) Kullanımı
  IF-ELSE...
  GET Yöntemi ile İşlemler
  Asp de Tarih ve Saat fonksiyonları
  While-wend döngüsü

C Sharp (C#)
  C#'da klasör işlemleri
  C# ile diziyi tersine çevirme
  Çok Kullanılan Kontroller-1
  C# ile Kronometre Uygulaması
  Overloaded Metotların Gücü
  C# ile XMLQuery Örneği
  Rastgele Kod Üretimi
  Kontroller ile Çalışma
  Düzenli İfadeler Nedir?

DUYURULAR

F# Microsoft dil teknolojisinin en yeni üyesi.Common Lisp-Slime-Emacs tarzında etkileşimli,kıvrak,sonuçların anında görülebildiği ve yüksek performanslı bir betik dil olarak özetleyebiliriz bu yeni dili. devamı >>


Türk Telekom'dan yapılan yazılı açıklamada, Telekomünikasyon Kurumu'nun onayladığı yeni tariflerin, internet servis sağlayıcı şirketlerin maliyetlerini önemli oranlarda düşüreceği aktarıldı. devamı >>


Serialization İşlemleri | Asundinay.Com
JAVA İçin Eklenmiş Makale
 Makale Adı  :  Serialization İşlemleri
 Yayın Tarihi :  22.08.2007 23:20:48 Ekleyen :  Kazım Aydın Okunma : 557

Merhaba, Sizlere Java 1.1’den beri varolan ilginç bir özellikten bahsetmek istiyorum. “Nesne Serileştirmesi” ya da daha bilindik adıyla “Serileştirme’den bahsedeceğim. Java’da Serializable arayüzünü gerçekleyen her nesne bir byte dizisi haline çevrilebilir ve disk üzerinde (bir dosyada) saklanabilir. Daha sonra bu nesne tekrar geri elde edilebilir. Hatta bu bir network ortamında farklı platformlarda bile gerçekleştirilebilir. Yani windows platformunda serileştirdiğiniz bir nesneyi gidip linux platformunda geri elde edebilirsiniz. Data’nın prezentasyonunu, byte sırasını vs. düşünmenize gerek yoktur. Java tüm bunları çözümleyecektir. çünkü Java platform bağımsızdır. Nesne serileştirme uygulamalarımızda bir çok yerde kullanabileceğimiz bir özelliktir. Ama serileştirme özellikle Java Bean’ler ile birlikte kullanılır. çünkü bir bean kullanıldığında bean’in konfigürasyon bilgileri genellikle design time’da belirlenir. Bu bilgilerin bir şekilde saklanması ve program çalıştırıldığında da tekrar elde edilip bean’e aktarılması gerekir. İşte nesne serileştirmesi bu görevi yerine getirebilir. Bu verilen sadece kullanım alanlarından sadece bir tanesine örnektir. Bir çok yerde serileştirmeden faydalanabiliriz. Nesneyi serileştirmek oldukça basit bir işlemdir. Nesnenin Serializable ara yüzünü (interface) gerçeklemesi yeterlidir.

Şimdi teknik olarak bu işlemin Java’da nasıl yapıldığını anlatacağım. öncelikle serileştirilebilir nitelikte (yani serializable ara yüzünü gerçekleyen) bir sınıf oluşturalım. Bu sınıf basitçe ad, soyad ve yaş bilgilerini tutan bir sınıf olsun.

0 import java.io.*; //ilgili paketimizi import ediyoruz
1
2 //Sınıfımızın Serializable olduğuna dikkat edelim
3 public class Data implements Serializable
4 {
5      private String name;
6      private String surname;
7      private int age;
8
9       //Sınıfımızın constructor’ı
10     public Data(String nm,String snm,int age)
11     {
12         this.name=nm;
13         this.surname=snm;
14         this.age=age;
15     }
16
17      //Bize “name” değerini veren method
18     public String getName()
19     {
20          return this.name;
21      }
22
23      //Bize “surname” değerini veren method
24     public String getSurname()
25     {
26         return this.surname;
27     }
28
29      //Bize “age” değerini veren method
30     public int getAge()
31     {
32         return this.age;
33     }
34 }

Artık “Data” isimli sınıfımız hazır. Bundan sonra yapacağımız şey bu sınıfın bir örneğini oluşturmak (nesne oluşturmak) ve bu nesneyi serileştirerek bir dosya üzerinde saklamaktır. Daha sonra da bu serileştirilmiş nesneyi tekrar üzerinde saklandığı dosyadan okuyarak geri elde etmektir. Bunun için main metodumuzu içeren bir class (sınıf) oluşturalım. Bu sınıf içerisinden de serileştirme (serialization) ve geri elde etme (deserialization) işlemlerini gerçekleştirelim.

0 import java.io.*; //ilgili paketimizi import ettik
1
2 public class MClass
3 {
4 //Main metodumuz
5 public static void main (String [] args)
6 {
7      try
8      {
9             Data d1=new Data("XXXXX","YYYYY",22); //Nesnemizi oluşturduk
10
11           FileOutputStream fOut=new FileOutputStream("data.out");    //dosyamızı oluşturduk
12           ObjectOutputStream out=new ObjectOutputStream(fOut);    //serileştirme için nesneyi oluşturduk
13           out.writeObject(d1);   //nesnemizi dosyaya yazdık, serileştirme gerçekleştirildi
14           out.close();    //stream’i kapattık, aslında bu stream’i bir finally bloğunda kapatmak daha sağlıklı olur
15
16           System.out.println("Process ends...");
17      }
18      catch(Exception e)
19      {
20           System.out.println("Error in serializtion process!\n");
21           e.printStackTrace();
22      }
23 }
24 }

Şimdi yukarıda ne yaptık tekrar anlatayım. öncelikle serileştirmek istediğimiz nesneyi oluşturduk (satır 9). Daha sonra nesnemizi serileştirdikten sonra fiziksel olarak üzerinde saklayacağımız “data.out” isimli dosyamızı bir FileOutputStream nesnesi kullanarak oluşturduk (satır 11). Artık nesnemizi serileştirmekte kullanacağımız nesnemiz olan ObjectOutputStream nesnesini oluşturabiliriz (satır 12). Daha sonra nesnemizi bu nesneye (ObjectOutputStream tipindeki “out” nesnesi) parametre olarak göndererek serileştiririz (satır 13). Son olarak da stream’imizi kapatırız (satır 14). Eğer projemizin çalıştığı dizine gidip bakarsak orada “data.out” isminde bir dosyanın oluşturulmuş olduğunu görürüz. Bu aslında bizim “d1” nesnemizdir.

Peki nesnemizi serileştirerek kaydettik ve şimdi de nesneye tekrar ihtiyacımız var ve geri elde etmek istiyoruz. Bunu aşağıdaki şekilde yapabiliriz. Ben burada main metodumuzun içeriğini değiştirerek aynı bu işi yapıcam. Bu arada serileştirmede kullandığımız kodu comment içine alabiliriz.

0 import java.io.*;
1
2 public class MClass
3 {
4    public static void main (String [] args)
5    {
6         try
7         {
8                Data d; //Nesnemizi tanımladık
9
10              FileInputStream fIn=new FileInputStream("data.out"); //Dosyamızı okumak üzere açtık
11              ObjectInputStream in=new ObjectInputStream(fIn); //Nesnemizi okuyacak olan sınıfın örneğini oluşturduk
13              d=(Data)in.readObject(); //nesnemize okuduğumuz nesneyi atadık
14              System.out.println("DATA OF OBJECT");
15              System.out.println(d.getName()+" "+d.getSurname()+" "+d.getAge());
16
17              System.out.println("Process ends...");
18         }
19         catch(Exception e)
20         {
21              System.out.println("Error in serializtion process!\n");
22              e.printStackTrace();
23         }
24    }
25 }

Yukarıda ne yaptığımızı kısaca açıklayayım. Dosyamızı (nesnemizin üzerinde bulunduğu dosya) okumak üzere açtık (satır 10). ObjectInputStream sınıfının bir örneğini oluşturduk, bu sınıf yardımıyla nesnemizi dosyadan okuyacağız (satır 11). Daha sonra nesnemizi okuyarak o nesne tipinde tanımladığımız değişkenimize atadık (satır 13). Diğer kısımlarda da nesnemizden aldığımız data’ları ekrana yazdırıyoruz (satır 15). Ekran çıktısı aşağıdaki şekilde olmaktadır.

DATA OF OBJECT
XXXXX YYYYY 22
Process ends...

 

 

 


Kaynak : csharpnedir.com


 

Java İçin Eklenmiş Tüm Makaleler
Java İçin En Son Eklenen 5 Makale
 Makale Adı  :  Java ile Histogram Eşitleme
 Yayın Tarihi :  22.08.2007 23:24:42 Ekleyen :  Kazım Aydın Makaleyi Oku  
 Makale Adı  :  JAVA İçinde Thread Kullanımı
 Yayın Tarihi :  22.08.2007 23:23:47 Ekleyen :  Kazım Aydın Makaleyi Oku  
 Makale Adı  :  Serialization İşlemleri 2
 Yayın Tarihi :  22.08.2007 23:23:08 Ekleyen :  Kazım Aydın Makaleyi Oku  
 Makale Adı  :  Serialization İşlemleri
 Yayın Tarihi :  22.08.2007 23:20:48 Ekleyen :  Kazım Aydın Makaleyi Oku  
 Makale Adı  :  İlk Bakışta JSP
 Yayın Tarihi :  22.08.2007 23:19:53 Ekleyen :  Kazım Aydın Makaleyi Oku  

C/C++
  C ögreniyorum -8-
  C ögreniyorum -7-
  C ögreniyorum -6-
  C ögreniyorum -5-
  C ögreniyorum -4-
  C ögreniyorum -3-
  C ögreniyorum -2-
  C ögreniyorum -1-
  İlk C++ Programımız

JAVA
  Java ile Histogram Eşitleme
  JAVA İçinde Thread Kullanımı
  Serialization İşlemleri 2
  Serialization İşlemleri
  İlk Bakışta JSP
  Servletler ile Web Sayfaları
  Java ile Grafik Çizim
  Java, MySql Bağlantısı
  JBuilder ile Database

PHP
  php dersleri -1-
  php/access ile silme işlemi
  php ile access'e bağlanma - 2
  php ile access'e bağlanma - 1
  Döngü ve Diziler - BÖLÜM 5
  Döngü ve Diziler - BÖLÜM 4
  Döngü ve Diziler - BÖLÜM 3
  Döngü ve Diziler - BÖLÜM 2
  Döngü ve Diziler - BÖLÜM 1

İSTATİSTİKLER
  Toplam ziyaret :  24684
  Toplam üye sayısı :  1077
  Asp makale sayısı :  20
  Asp.Net makale sayısı :  54
  Php makale sayısı :  26
  C/C++ makale sayısı :  51
  C# makale sayısı :  29
  Java makale sayısı :  33
  Toplam makale saıysı :  213
Copyright asundinay® 2007 Her Hakki Saklidir
Tasarim & Programlama asundinay®