易截截图软件、单文件、免安装、纯绿色、仅160KB

使用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>


相关文档:

xml/properties文件的相互保存转化

/*
练习使用java.util.properties类包来操作propertes及XML文件,通过store方法的调用可实现xml/properties文件的相互保存转化
*/
import java.util.*;
import java.io.*;
public class TestPropertes
{
public static void main(String[] args) {
   Properties pp = new Properties();
   Fi ......

TinyXML(C++ XML解析库)

写一个XML文件 TinyXML 是一个mini的C++ XML解析库,它是非验证的,它可以很容易的集成到其他的程序中.它解析一份XML doc,以此创建一个可以被读、写,保存的DOM.它主要的类层次架构,函数原形详细说明参看: http://www.grinninglizard.com/tinyxml/index.html
// 以下以简单的程序TinyXMLTest为例 TinyXML中最根本的就是Docu ......

XML第四课

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 ......

用Dom4j来解析xml文件

package com.pk.xml;
import java.io.File;
import org.dom4j.Document;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
public class Dom4j {
public static void main(String[] args) {
try {
//获得SAX解析器
SAXReader reader = new SAXReader();

//解析文件
File file = n ......

OpenXml开发 一个应用Xml的例子


  3private XmlDocument xmlDoc;
  4        //load xml file
  5        private void LoadXml()
  6        { ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号