reflexcore.jar / jp.sourceforge.reflex.core
<repository>
<id>reflex.sourceforge.jp</id>
<name>Reflex Sourceforge Repository</name>
<url>http://reflex.sourceforge.jp/maven2</url>
</repository>
<dependency>
<groupId>jp.sourceforge.reflex</groupId>
<artifactId>reflexcore</artifactId>
<version>1.2.2</version>
</dependency>
ReflexはオリジナルのXstreamを以下のように拡張しています。 (以降、クラス名、プロパティ名はJavaBeanのクラス名、プロパティのfield名を、要素名、属性、名前空間、QNAME、テキストノードはXMLのそれを指すこととします。)
【XML(Type) シリアライズテスト】:
<type xml:lang="ja">
<type_str-ing attr1="属性1" attr2="属性2" xml:lang="jp">文字</type_str-ing>
<type_int>1111</type_int>
<type_long>2222222</type_long>
<type_float>3333.33</type_float>
<type_double>3333.33</type_double>
<type_date>2009-09-03T11:33:21+0900</type_date>
<type_Integer>6666</type_Integer>
<type_Long>7777777</type_Long>
<type_Float>8888.88</type_Float>
<type_Double>8888.88</type_Double>
<xml:atom>間にコロン</xml:atom>テキスト要素</type>
上をXMLにデシリアライズ:
<type xml:lang="ja">
<type_str-ing attr1="属性1" attr2="属性2" xml:lang="jp">文字</type_str-ing>
<type_int>1111</type_int>
<type_long>2222222</type_long>
<type_float>3333.33</type_float>
<type_double>3333.33</type_double>
<type_date>2009-09-03T11:33:21+0900</type_date>
<type_Integer>6666</type_Integer>
<type_Long>7777777</type_Long>
<type_Float>8888.88</type_Float>
<type_Double>8888.88</type_Double>
<xml:atom>間にコロン</xml:atom>テキスト要素</type>
【JSON(Type) シリアライズテスト】:
{"type" : {"____xml___lang" : "ja","type_str__ing" : "文字","type_str__ing____attr1" : "属性1","type_str__ing____attr2" : "属性2","type_str__ing____xml___lang" : "jp","type_int" : 1111,"type_long" : 2222222,"type_float" : 3333.33,"type_double" : 3333.33,"type_date" : "2009-09-03T11\:33\:21+0900","type_Integer" : 6666,"type_Long" : 7777777,"type_Float" : 8888.88,"type_Double" : 8888.88,"xml___atom" : "間にコロン","_______text" : "テキスト要素"}}
上をJSONにデシリアライズ:
{"type" : {"____xml___lang" : "ja","type_str__ing" : "文字","type_str__ing____attr1" : "属性1","type_str__ing____attr2" : "属性2","type_str__ing____xml___lang" : "jp","type_int" : 1111,"type_long" : 2222222,"type_float" : 3333.33,"type_double" : 3333.33,"type_date" : "2009-09-03T11\:33\:21+0900","type_Integer" : 6666,"type_Long" : 7777777,"type_Float" : 8888.88,"type_Double" : 8888.88,"xml___atom" : "間にコロン","_______text" : "テキスト要素"}}