WEB开发网
开发学院软件开发Java 使用 Simple 简化 XML 序列化 阅读

使用 Simple 简化 XML 序列化

 2010-01-08 00:00:00 来源:WEB开发网   
核心提示: 清单 8 和 清单 2 之间最大的差别是,您在 AdvancedLure 对象中实例化了一个 ConfigurationScheme 对象并设置了适当的字段,使用 Simple 简化 XML 序列化(7),运行该代码,输出应该类似于 清单 9,唯一增加的复杂性来自于,为嵌套目的实例化了所有必需的

清单 8 和 清单 2 之间最大的差别是,您在 AdvancedLure 对象中实例化了一个 ConfigurationScheme 对象并设置了适当的字段。

运行该代码,输出应该类似于 清单 9。


清单 9. LureExample3 的输出

<advancedLure type="Trolling"> 
  <company>Donzai</company> 
  <quantityInStock>23</quantityInStock> 
  <model>Marlin Buster</model> 
  <configurationScheme> 
   <color>Blue</color> 
   <size>3</size> 
  </configurationScheme> 
</advancedLure> 

可以看到,嵌套的元素与预期那样地被序列化。

枚举

XML 文档经常包含某些元素的枚举。也就是说,相同的元素名称可以重复,只不过带有不同的子元素或属性数据而已。幸运的是,Simple 也能够处理这种情况。

为了演示该特性,我们创建一个新的类,名叫 Inventory,其中包含仓库(储存库存的地方)的名称和在该库存位置找到的鱼饵的列表,如 清单 10 中所示。


清单 10. Inventory 类

@Root 
public class Inventory { 
 
   @ElementList 
   private List<AdvancedLure> lures; 
 
   @Attribute 
   private String warehouse; 

注意,使用了一个新注解:@ElementList。该注解告诉 Simple 框架:相应的 List 对象代表 XML 元素的枚举。

用于演示该 POJO 的序列化的代码跟用于序列化更简单的 POJO(比如说 清单 2 中序列化的那个 POJO)的代码一样容易。唯一增加的复杂性来自于,为嵌套目的实例化了所有必需的对象。参见 清单 11。

上一页  2 3 4 5 6 7 8 9 10  下一页

Tags:使用 Simple 简化

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接