中国IT动力,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档 | 网通镜像
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> 程序开发 > 编程语言 > Java > 网络
JAXB的使用(快速入门)(原创)
作者:morninglihm 时间:2001-11-24 11:14 出处:互联网 责编:chinaitpower
              摘要:JAXB的使用(快速入门)(原创)

        Sun推出JAXBJavaTM Architecture for XML Binding )已经有一段时间了,目前的版本是10Final)。下面让我来简单介绍一下,什麽是JAXB和怎莫使用。

JAXB是一套自动映射XMLJava实例的开发接口和工具。

JAXB使XML更加方便的编译一个XML SCHEMA到一个或若干个JAVA CLASS。提供了如下功能:

XMLJAVA的映射,访问、更新、验证JAVA的表现,从JAVAXML的映射。

长话短说,开始正题,JAXB的使用,我们只列举从XMLJAVA的案例:

什莫? 你不知道从哪里下载所需文件,不会吧。

老大!当然是java.sun.com/xml/jaxb

首先要得到你想要转换的XML文件,我们DataSource为例,下表列举了DataSource.xml的内容:

 

<?xml version="1.0"?>

<DataSources>

  <DataSource>

      <name>oracle</name>

      <driver>oracle.jdbc.driver.OracleDriver</driver>

      <url>jdbc:oracle:thin:@localhost:1521:orcl</url>

      <username>scott</username>

      <password>tiger</password>

  </DataSource>

</DataSources>

      并且,我们还要有此XMLDTD文件(如果你不知道怎莫从DTD得到XML,或者不知道如何从XML得到DTD,请两天后再看此文),DataSource.dtd文件如下:

<?xml version='1.0' encoding="UTF-8"?>

<!ELEMENT DataSource

   (name,driver,url,username,password)

>

<!ELEMENT DataSources

   (DataSource)

>

<!ELEMENT driver

   (#PCDATA)

>

<!ELEMENT name

   (#PCDATA)

>

<!ELEMENT password

   (#PCDATA)

>

<!ELEMENT url

   (#PCDATA)

>

<!ELEMENT username

   (#PCDATA)

>

JAXB的使用还要配合一个转换规则的XML文件的使用,所以我们再根据我们的需要编写一个DataSource.xjs文件,如下所示:

      <?xml version="1.0"?>

<xml-java-binding-schema version="1.0ea">

<!-- Register a type.  This specifies that we want to use this type instead of String

     somwhere in our document. -->

<element name="DataSources" type="class" root="true" />

</xml-java-binding-schema>

你觉得很复杂嘛?不要着急,马上就结束了。

下一步就是运行如下命令了:

   java -jar %JAXB_HOME%\lib\jaxb-xjc-1.0-ea.jar DataSource.dtd DataSource.xjs -d destination_directory

你会看到在你指定的目录下,生成了我们想要的Java文件,你可以打开看看,到底是什莫东西。

OK,准备工作这就结束了。

让我们来看看如何使用我们生成的Java文件,使用前别忘了编译他们,这可是最基本的素质,我想不用我提醒了吧。

      下面是一个测试程序的片断,看看到底灵不灵:

      Datasources socks = new Datasources();

   。。。。

   File socksFile = new File("DataSource.xml");

            InputStream fin = new FileInputStream(socksFile);

            socks = socks.unmarshal(fin);

List sockList = socks.getDatasource();

好了,sockList就是我们得到的Java的对象了。你可以随意处置。我们下面把他们打印出来看一看:

   for (Iterator i = sockList.iterator(); i.hasNext();) {

            currentSock = (Datasource)i.next();

        System.out.println(currentSock.getName());

        System.out.println(currentSock.getDriver());

        System.out.println(currentSock.getUrl());

        System.out.println(currentSock.getUsername());

        System.out.println(currentSock.getPassword());

        }

OVER!

这就结束了吗?这莫简单嘛?

没错,就是这莫简单。并且运行效率还是很不错的。

 

关闭本页
 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 chinaitpower.com All rights reserved. www.chinaitpower.com 版权所有