posts - 110, comments - 101, trackbacks - 0, articles - 7
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理
          <?xml version="1.0" encoding="UTF-8" ?>
          <person>
              
          <name>yunyun</name>
              
          <gender>true</gender>
              
          <address>shanghai</address>
              
          <contents>cc</contents>
              
          <contents>ss</contents>
              
          <taxs>
                  
          <string>1</string>
                  
          <string>2</string>
                  
          <string>3</string>
              
          </taxs>
          </person>

          JavaBean
          public class Person2 {
              
          private String name;
              
          private boolean gender;
              
          private String homeAddress;
              
          private List<String> contentslist;
              
          private String[] taxs;

              @Override
              
          public String toString() {
                  
          return ToStringBuilder.reflectionToString(this);
              }


          }

          測試類 解析xml 反序列化到javaBean object

          public class TestXmlToObject2 {

               
          public static final XStream xstream=new XStream();
               
               
          static{
                   xstream.alias(
          "person", Person2.class);//類別名
                   xstream.aliasField("address", Person2.class"homeAddress"); //屬性別名
                   xstream.alias("contents",String.class);//private List<String> contentslist;是string類型
                   xstream.addImplicitCollection(Person2.class"contentslist");//隱式集合 隱藏contentslist
                   Person2 person=(Person2)xstream.fromXML(TestXmlToObject2.class.getClassLoader().getResourceAsStream("person02.xml"));
                   System.out.println(person.toString());
               }

              
              
          public static void main(String[] args) {

              }


          }


          二: 注解方式
          xml:
           
          <?xml version="1.0" encoding="UTF-8" ?>
          <person>
              
          <name>yunyun</name>
              
          <gender>true</gender>
              
          <address>shanghai</address>
              
          <company>yihaodian</company>
              
          <sources>
                  
          <string>firstSources</string>
                  
          <string>secondSources</string>
              
          </sources>
              
          <part>firstPart</part>
              
          <part>secondPart</part>
          </person>

          javaBean
          @XStreamAlias("person")
          public class Person3 {
              private String name;
              private boolean gender;
              @XStreamAlias("address")
              private String homeAddress;
              private String company;
              @XStreamImplicit(itemFieldName="part")
              private List
          <String> content;
              private String[] sources;
              
              @Override
              public String toString() {
                  return ToStringBuilder.reflectionToString(this);
              }
          }

          測試
          public class TestXmlToObject3 {

               
          public static final XStream xstream=new XStream();
               
               
          static{
                   xstream.processAnnotations(Person3.
          class);//顯示聲明使用注解
                   xstream.autodetectAnnotations(true);
                   Person3 person
          =(Person3)xstream.fromXML(TestXmlToObject3.class.getClassLoader().getResourceAsStream("person03.xml"));
                   System.out.println(person.toString());
               }

               
              
              
              
              
          public static void main(String[] args) {

              }


          }

          POM.xml
                  <dependency>
                      
          <groupId>com.thoughtworks.xstream</groupId>
                      
          <artifactId>xstream</artifactId>
                      
          <version>1.3.1</version>
                  
          </dependency>
                  
          <dependency>
                      
          <groupId>commons-lang</groupId>
                      
          <artifactId>commons-lang</artifactId>
                      
          <version>2.4</version>
                  
          </dependency>




          評論

          # re: xstream 解析xml 別名 注解 list集合 boolean 數組 converter Pom.xml設置  回復  更多評論   

          2013-03-27 17:30 by hello_kitty
          <list>
          <string>CALCULATE</string>
          <string>caihongcheng</string>
          <int>10</int>
          <boolean-array>
          <boolean>true</boolean>
          <boolean>false</boolean>
          <boolean>false</boolean>
          <boolean>false</boolean>
          <boolean>false</boolean>
          <boolean>false</boolean>
          <boolean>false</boolean>
          <boolean>false</boolean>
          <boolean>false</boolean>
          <boolean>false</boolean>
          </boolean-array>
          </list>
          一開始有一個boolean類型的數組,我把它添加到一個list里面,想通過xstream遍歷成xml。(源代碼:
          ArrayList list = new ArrayList();
          list.add("CALCULATE");
          list.add("caihongcheng");
          list.add(10);
          list.add(status);//status為boolean數組


          求大神給寫段代碼讓上面的數組變成下面那樣的,可以把代碼發給我郵箱:513110286@qq.com,不勝感謝!

          <response>
          <command>CALCULATE</command>
          <parkName>caihongcheng</parkName>
          <picNumber>20</picNumber>
          <picValue>true</picValue>
          <picValue>false</picValue>
          <picValue>false</picValue>
          <picValue>false</picValue>
          <picValue>false</picValue>
          <picValue>false</picValue>
          <picValue>false</picValue>
          <picValue>false</picValue>
          <picValue>false</picValue>
          <picValue>false</picValue>
          </response>

          # re: xstream 解析xml 別名 注解 list集合 boolean 數組 converter Pom.xml設置[未登錄]  回復  更多評論   

          2014-12-29 14:18 by xiaoxiao
          謝謝分享!幫我解決了隱式集合的問題!

          # re: xstream 解析xml 別名 注解 list集合 boolean 數組 converter Pom.xml設置  回復  更多評論   

          2016-03-26 17:06 by lzk
          非常感謝!

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


          網站導航:
           
          主站蜘蛛池模板: 浙江省| 寿阳县| 永嘉县| 乌审旗| 托里县| 仙桃市| 弥渡县| 景洪市| 富平县| 马公市| 桑日县| 洱源县| 溆浦县| 遂川县| 宜丰县| 长岭县| 温州市| 革吉县| 通许县| 东乡| 姚安县| 建水县| 崇明县| 黄平县| 九台市| 兴山县| 清涧县| 北安市| 马龙县| 岢岚县| 宁都县| 博爱县| 永顺县| 沐川县| 仲巴县| 安宁市| 彝良县| 平武县| 随州市| 瑞金市| 新民市|