使用Metadata简化表数据向XML形式转化的实现
使用Metadata简化表数据向XML形式转化的实现
如果需要将表数据转化为XML形式数据的话,如果我们使用Spring的JDBC Template,那么常需要做的工作是创建一个RowMapper匿名类,在其中将字段与领域对象的某个属性匹配上,然后得到领域对象链表形式的结果,此后展开这个集合,再将字段转化为XML数据,其中进行了两次名称和值之间的匹配,硬编码较多,比较费时间。如果我们利用Metadata(Metadata是解释数据的数据,如果我们的研究对象是表格中的数据,那么表头就是表格中数据的Metadata)则可以有效简化这一过程。
下面先看需求,有一个emp雇员表,表中包括id,姓名name,年龄age和地址addr四个字段,如下所示:
我们需要把表中的记录取出并变成如下格式的字符串:
<employees>
<employee>
<id>1</id>
<name>andy</name>
<age>31</age>
<address>54435454</address>
</employee>
<employee>
<id>2</id>
<name>bill</name>
<age>32</age>
<address>rwerewrqeqw</address>
</employee>
<employee>
<id>3</id>
<name>cindy</name>
<age>33</age>
<address>342554345</address>
</employee>
<employee>
<id>4</id>
<name>douglas</name>
<age>34</age>
相关文档:
最近在项目中遇到flex跨域访问的安全沙箱问题,查资料了解到需要在服务端加上crossdomain.xml文件,即:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">
<cross-do ......
写一个XML文件 TinyXML 是一个mini的C++ XML解析库,它是非验证的,它可以很容易的集成到其他的程序中.它解析一份XML doc,以此创建一个可以被读、写,保存的DOM.它主要的类层次架构,函数原形详细说明参看: http://www.grinninglizard.com/tinyxml/index.html
// 以下以简单的程序TinyXMLTest为例 TinyXML中最根本的就是Docu ......
HTML.html文件
<div align="center" class="style1">
<p>冰棍列表</p>
<p></p>
<table width="400" border="1">
<tr>
<th scope="col"><font size="4">品牌</font></th> ......
book_schema.xml文件
<?xml version="1.0" encoding="gb2312"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="丛书">
<xs:complexType>
<xs:sequence>
<xs:element name="书">
&n ......
3private XmlDocument xmlDoc;
4 //load xml file
5 private void LoadXml()
6 {
......