Java serialization½éÉܼ°¼òµ¥Ó¦ÓÃ
Object serializationµÄ¶¨Ò壺
Object serialization ÔÊÐíÄ㽫ʵÏÖÁËSerializable½Ó¿ÚµÄ¶ÔÏóת»»Îª×Ö½ÚÐòÁУ¬ÕâЩ×Ö½ÚÐòÁпÉÒÔ±»ÍêÈ«´æ´¢ÒÔ±¸ÒÔºóÖØÐÂÉú³ÉÔÀ´µÄ¶ÔÏó¡£
serialization²»µ«¿ÉÒÔÔÚ±¾»ú×ö£¬¶øÇÒ¿ÉÒÔ¾ÓÉÍøÂç²Ù×÷£¨RMI£©¡£Õâ¸öºÃ´¦ÊǺܴóµÄ----ÒòΪËü×Ô¶¯ÆÁ±ÎÁ˲Ù×÷ϵͳµÄ²îÒ죬×Ö½Ú˳Ðò£¨ÓÃUnixϵÄc¿ª·¢¹ýÍøÂç±à³ÌµÄÈËÓ¦¸ÃÖªµÀÕâ¸ö¸ÅÄµÈ¡£±ÈÈ磬ÔÚWindowƽ̨Éú³ÉÒ»¸ö¶ÔÏó²¢ÐòÁл¯Ö®£¬È»ºóͨ¹ýÍøÂç´«µ½Ò»Ì¨Unix»úÆ÷ÉÏ£¬È»ºó¿ÉÒÔÔÚÕą̂Unix»úÆ÷ÉÏÕýÈ·µØÖع¹Õâ¸ö¶ÔÏó¡£
Object serializationÖ÷ÒªÓÃÀ´Ö§³Ö2ÖÖÖ÷ÒªµÄÌØÐÔ£º
1¡£JavaµÄRMI(remote method invocation).RMIÔÊÐíÏóÔÚ±¾»úÉÏÒ»Ñù²Ù×÷Ô¶³Ì»úÆ÷ÉϵĶÔÏó¡£µ±·¢ËÍÏûÏ¢¸øÔ¶³Ì¶ÔÏóʱ£¬¾ÍÐèÒªÓõ½serializaiton»úÖÆÀ´·¢ËͲÎÊýºÍ½ÓÊÕ·µ»ØÖ±¡£
2¡£JavaµÄJavaBeans. BeanµÄ״̬ÐÅϢͨ³£ÊÇÔÚÉè¼ÆÊ±ÅäÖõġ£BeanµÄ״̬ÐÅÏ¢±ØÐë±»´æÆðÀ´£¬ÒԱ㵱³ÌÐòÔËÐÐʱÄָܻ´ÕâЩ״̬ÐÅÏ¢¡£ÕâÒ²ÐèÒªserializaiton»úÖÆ¡£
¶þ¡£sakulagiºÍrollingpig˵µÄ³Ö¾Ã»¯ÎÒҲ˵һÏ¡£
ÎÒ¾õµÃÄãÃÇ˵µÄÓ¦¸ÃÊÇÓ¢ÎÄÀïµÄpersistence.µ«ÊÇJavaÓïÑÔÀïÏÖÔÚÖ»Ö§³Ölightweight persistence,¾ÍÊÇÇáÁ¿¼¶³Ö¾Ã»¯£¬ÕâÊÇͨ¹ýserialization»úÖÆÀ´ÊµÏֵġ£
persistenceÊÇÖ¸Ò»¸ö¶ÔÏóµÄÉúÃüÖÜÆÚ²»ÓɳÌÐòÊÇ·ñÖ´ÐÐÀ´¾ö¶¨£¬¼´Ê¹ÊÇÔÚ³ÌÐòÖÕֹʱÕâ¸ö¶ÔÏóÒ²´æÔÚ¡£Ëü°ÑÒ»¸öserializableµÄ¶ÔÏóдµ½´ÅÅÌ£¨±¾»ú»òÆäËû»úÆ÷ÉϵķÇRAM´æ´¢Æ÷£©£¬²¢ÔÚ³ÌÐòÖØÐµ÷ÓÃʱÔÙ¶ÁÈ¡¶ÔÏóµ½Í¨³£µÄRAM´æ´¢Æ÷¡£
Ϊʲô˵JavaµÄserialization»úÖÆÊµÏÖµÄÊÇlightweight persistence?ÒòΪÄã±ØÐëÏÔʽµÄÐòÁл¯ºÍ·´ÐòÁл¯³ÌÐòÀïµÄ¶ÔÏó£»¶ø²»ÊÇÖ±½ÓÓÉÒ»¸ö¹Ø¼ü´ÊÀ´¶¨ÒåÒ»¸ö¶ÔÏóÊÇÐòÁл¯µÄÈ»ºóÓÉϵͳ×öÏàÓ¦µÄ´¦Àí¡£
ÏÂÃæÊǹØÓÚÐòÁл¯µÄÒ»¸öʵÀý£º
³ÌÐòÃû³Æ£ºSerializationDemo.java
³ÌÐòÖ÷Ì⣺ʵÏÖ¶ÔÏóµÄÐòÁл¯ºÍ·´ÐòÁл¯
³ÌÐò˵Ã÷£º¸Ã³ÌÐòÓÉʵÀý»¯Ò»¸öMyClassÀàµÄ¶ÔÏó¿ªÊ¼£¬¸Ã¶ÔÏóÓÐÈý¸öʵÀý±äÁ¿£¬ÀàÐÍ·Ö±ðΪString¡¢int¡¢double£¬ÊÇÏ£Íû´æ´¢ºÍ»Ö¸´µÄÐÅÏ¢¡£
´úÂëÄÚÈÝ
import java.io.*;
public class SerializationDemo{
public static void main(String args[]){
//Object serialization
try{
MyClass object1=new MyClass("Hello",-7,2.7e10);
System.out.println("object1:"+object1);
FileOutputStream fos=new FileOutputStream("serial");
ObjectOutputStream oos=new ObjectOutputStream(fos);
oos.writeObject(object1);
oos.flush()
Ïà¹ØÎĵµ£º
¹«Ë¾ÒµÎñ¼±ËÙÀ©ÕÅ£¬¼±ÐèÓвÅÄܵÄͬѧ¼ÓÈëµ½ÎÒÃǵÄÐÐÁÐÖУ¬
×îºÃÄã¶Ô¹¤×÷»ý¼«£¬ÈÏÕæ£¬¸ºÔð
×îºÃÄãÒѾÓÐÔúʵµÄ±à³Ì»ù´¡
×îºÃÄãÒѾÊìÁ·ÕÆÎÕJava¼¼Êõ
×îºÃÄãÖÁÉÙÒÑÓÐÒ»£¬Á½Ä깤×÷¾Ñé
¹¤×÷µØµã£ºº¼ÖÝ
ְλ £ºJava¿ª·¢¹¤³Ìʦ£¨°¢Àï°Í°Í¼¯ÍÅB2B¹«Ë¾ÍøÕ¾¼¼Êõ²¿£©
ÓÐÒâÕßÇë°Ñ ......
Java EE ¸ÅÊö
Javaa EE:·Ö²¼Ê½ ÆóÒµ¼¶Ó¦Óù淶ºÍ±ê×¼
ÍÆÄ£Ê½£º²»ÓÃÇëÇó£¬Ç¿ÖÆÈÿͻ§½ÓÊÜ
Àģʽ£ºÈÿͻ§ÇëÇóºÍÏìÓ¦¡£
¼Ü¹¹£º
ÇáÁ¿¼¶£ºstruct2 /spring /hibernate
Modle1:jsp+JavaBean+DB
Model2(MVC):jsp+servlet+JavaBean+DB
ÖØÁ¿¼¶£ºJsp+servlet+EJB+DB
±íʾ²ã£ºÒµÎñ²ã£º³Ö¾Ã²ã£ºÊý¾Ý¿â£º
JNDI£º²éÕÒ·Ö²¼¶ÔÏóµ ......
String ¶ÔÏóÊDz»¿É¸Ä±äµÄ¡£Ã¿´ÎʹÓà System.String ÀàÖеķ½·¨Ö®Ò»Ê±£¬¶¼ÒªÔÚÄÚ´æÖд´½¨Ò»¸öеÄ×Ö·û´®¶ÔÏó£¬Õâ¾ÍÐèҪΪ¸ÃжÔÏó·ÖÅäеĿռ䡣ÔÚÐèÒª¶Ô×Ö·û´®Ö´ÐÐÖØ¸´Ð޸ĵÄÇé¿öÏ£¬Óë´´½¨Ð嵀 String ¶ÔÏóÏà¹ØµÄϵͳ¿ªÏú¿ÉÄÜ»á·Ç³£°º¹ó¡£Èç¹ûÒªÐÞ¸Ä×Ö·û´®¶ø²»´´½¨ÐµĶÔÏó£¬Ôò¿ÉÒÔʹÓà System.Text.StringBuilder Àà¡£ÀýÈ ......
1¡¢×÷ÓÃÓòpublic,private,protected,ÒÔ¼°²»Ð´Ê±µÄÇø±ð
×÷ÓÃÓò µ±Ç°Àà ͬһpackage ×ÓËïÀà ÆäËûpackage
public √ √ √ √
protected √ √ √ ×
²»Ð´Ê±Ä¬ÈÏΪfriendly √ √ × ×
private √ × × ×
2¡¢ArrayListºÍVect ......