BlogJava 聯(lián)系 聚合 管理  

          Blog Stats

          隨筆檔案

          exams


          java世界

          世界Java

          XMLENCODER是一個可以將一個JAVA對象以XML方式存儲,在需要再次使用該對象時候可以使用XMLDECODER進行還原,比JAVA對象流好用.


          測試程序:


          package com.sitechasia.test.beans;


          import java.io.OutputStream;


          import junit.framework.TestCase;


          import org.apache.commons.logging.Log;
          import org.apache.commons.logging.LogFactory;


          import com.funambol.framework.engine.source.ContentType;
          import com.funambol.framework.engine.source.SyncSourceInfo;
          import com.sitechasia.test.tools.BeanXmlEncoder;
          import com.sitechasia.uab.sync.source.UabSyncSource;


          public class TestBeanXmlEncoder extends TestCase {


           public TestBeanXmlEncoder(String arg0) {
            super(arg0);
           }


           protected void setUp() throws Exception {
            super.setUp();
           }


           Log log = LogFactory.getLog(TestBeanXmlEncoder.class);


           public void testEncodeUabSyncSource() {
            OutputStream beanout = System.out;
            UabSyncSource us = null;
            try {
             us = new UabSyncSource();
             us.setDebug(true);
             us.setName("card3");
             us.setSourceURI("card3");


             SyncSourceInfo info = null;
             ContentType[] cts = new ContentType[3];
             cts[0] = new ContentType("text/vcard", "2.1");
             cts[1] = new ContentType("text/x-vcard", "2.1");
             cts[2] = new ContentType("text/plain", "2.1");
             info = new SyncSourceInfo(cts, 1);
             us.setInfo(info);


             BeanXmlEncoder.EncoderBean(us, beanout);


            } catch (Exception e) {
             System.out.println("Fail to sav Bean");
            }
           }


           


           protected void tearDown() throws Exception {
            super.tearDown();
           }


          }


          工具類 :


          package com.sitechasia.test.tools;


          import java.beans.XMLEncoder;
          import java.io.OutputStream;


          import org.apache.commons.lang.builder.ToStringBuilder;
          import org.apache.commons.lang.exception.ExceptionUtils;
          import org.apache.commons.logging.Log;
          import org.apache.commons.logging.LogFactory;


          /**
           * 對一個JAVA類進行編碼保存
           * @author  MCSA 
           *
           */
          public class BeanXmlEncoder {
           final static Log log = LogFactory.getLog(BeanXmlEncoder.class);
           public static void EncoderBean(Object bean, OutputStream beanstore) {
            XMLEncoder encoder = null;
            try {
             encoder = new XMLEncoder(beanstore);
             encoder.writeObject(bean);
             encoder.flush();
             encoder.close();
            } catch (Exception e) {
             log.error("Fail Encode bean"+ToStringBuilder.reflectionToString(bean));
             log.error("---------------------------------------------------------
          ");
             log.error(ExceptionUtils.getStackTrace(e));
            }


           }


          }

          posted on 2007-10-15 10:44 java2java 閱讀(3594) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 雷山县| 柘城县| 苏尼特右旗| 沙雅县| 湄潭县| 双峰县| 边坝县| 武平县| 玉门市| 金坛市| 广州市| 马龙县| 尚志市| 新龙县| 泽库县| 岱山县| 丽江市| 谢通门县| 辽源市| 托克逊县| 城口县| 航空| 嵩明县| 赞皇县| 黄平县| 濮阳市| 凉山| 青神县| 穆棱市| 正安县| 呼和浩特市| 馆陶县| 明光市| 丹寨县| 内丘县| 漳浦县| 廉江市| 肇庆市| 小金县| 神木县| 邢台市|