用JAXB存取XML数据
JAXB概要
JAXB为Java Architecture for XML Binding的缩写,意为XML绑定的JAVA框架。它提供了一套可以简单存取XML数据的API,同时,JAXB可以根据XML的schema自动生成操作XML的JAVA类。利用JAXB,使用JAXB自动生成的操作XML的JAVA类,可以基本上不用考虑XML结构而简单地存取XML数据。
JAXB的下载与安装
JAXB至少需要导入以下jar文件。
activation.jar
jaxb-api.jar
jaxb-impl.jar
jaxb-xjc.jar
根据情况,可能还会需要其它jar文件。
下载:
可以通过
http://java.sun.com/webservices/downloads/webservicespack.html
下载JAXB。
XML原型
Order.xml
<?xml version="1.0" encoding="utf-8" ?>
<project default="xjc-compile" basedir=".">
<property name="src.dir" location="src" />
<property name="lib.dir" location="lib/jaxb" />
<property name="xml-schema.dir" location="xml-schema" />
<property name="schema.name" value="Orders.xsd" />
<property name="package" value="com.test" />
<path id="classpath">
<fileset dir="${lib.dir}" includes="*.jar" />
</path>
<taskdef name="xjc" classname="com.sun.tools.xjc.XJCTask" classpathref="classpath" />
<target name="xjc-compile">
<echo message="Build Jaxb Class from Schema" />
<xjc schema="${xml-schema.dir}/${schema.name}" target="${src.dir}" package="${package}" />
</target>
</project>
在eclipse里新建项目JaxbProject。目录阶层为:
\JaxbProject
--lib
--jaxb
--activation.jar
--jaxb-api.jar
&n
相关文档:
xml:
<?xml version="1.0" encoding="utf-8" ?>
<library>
<name>首都图书馆</name>
<address>朝阳区华威桥南</address>
<books>
<book type="math">
<id>0000</id>
</book&g ......
1。写一个xml文件
<?xml version="1.0" encoding="utf-8" ?>
- <root>
- <user id="101">
<name>abc</name>
<password>abc</password>
</user>
- <user id="102">
<name>ccc</name>
<password>ccc< ......
String userId = request.getParameter("userId");
System.out.println(userId);
response.setCharacterEncoding("UTF-8");
//response.getWriter().println("hello world -- 我爱你。。。");
String xml = "<user>" +
"<username>涛哥</username>" +
"</user>";
respon ......
读XML文件
DataSet books = new DataSet();
books.ReadXml(MapPath("booklist.xml"));
booklist.DataSource = books;
booklist.DataBind(); ......