`
youlong05
  • 浏览: 147256 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

XMLBEANS的使用总结

阅读更多
在本文中,我们将详细了解最好的数据对象XMLBean。从传统角度来说,在Java应用程序中使用XML,就是在从XML文档向Java导入数据的技术或从数据模型层向XML导出数据技术之间架起了一座桥梁。对于这种方法,Java通常是作为传统数据存储(RDBMS)和文档之间的中间表示来使用的。本文将研究这种方法的局限性,并介绍另一种选择,即克服了这些局限性的XMLBean,同时也分析了一些XMLBean的实际应用。

现有Java/XML解决方案的主要局限性在于,使用XML导致了在开发中的额外开销。也许XML最强大的功能就是可以使数据以一种结构化的、容易阅读的文档进行传递。实际上,这种功能会引起Web服务的增殖;为了提供某种服务,供应商必须接受某种可读的文档,而不是定义一种自定义的二进制数据格式。对开发者来说,这通常意味着要用XML分析器来提取相关的部分,把它们转化成Java的表示,然后通过系统使用这些Java对象。难以置信的是,实际上Java中许多服务的实现并没有使用XML分析器,而是分析了传入的HTTPInputStream并使用了StringTokenizer或此类方法来提取数据。

在导出端,当一项新业务需要向其他客户端导出数据时,XML通常是候补方法。在这种情况下,最常见的方法就是自由地使用System.out.println()。如果幸运的话,可以使用像Velocity之类的模板工具。

除了开发的系统开销外,用这种方法处理XML还容易犯错误。即使确实存在表示XML数据的XML架构,那么开发者也不一定会得到类型安全(type-safe)数据所带来的好处,因为使用导入导出方法时,只有当XML数据进入或离开系统时才会应用有效性检验。因此,当开发者可能会选择使用XML架构时,XML有效性检验只对该文档有效;对Java对象来说,开发者必须在setter方法中手动创建前置条件(pre condition)和后置条件(post condition)来检验数据。

处理XML所带来的开发开销和数据有效性检验的困难一起产生了第三个困难:数据的表示不可能改变。当业务需求变化时,使用导入和导出方法所带来的实现就不够灵活,以至跟不上这些变化。修改架构会导致对语法分析代码、XML生成代码和有效性检验代码进行重构,而这些代码可能分散在系统的许多Java对象中。

这里有更好的解决方案。XMLBean通过把Java和XML作为整体来克服了这些困难。通过利用XML Schema的功能来提供结构化和约束性数据类型,开发者可以像Java对象那样直接访问XML文档。通过使用XMLBean,Java开发者不需要花时间来编写导入/导出和有效性检验代码。相反,XML文档被视作以类似于Java-Bean的方式访问的最好的数据对象。

除了消除了"粘合"的代码和手动的数据有效性检验这些优点外,XMLBean在设计时的另一个优点是,它提供了拥有可执行规范的能力。XMLBean提供了在架构和Java类型系统间的自动映射。对开发者来说,这意味着设计不需要转化成Java的实现。数据模型或对象的设计完全可以在架构规范中完成;XMLBean自动地把架构类型和它们之间的关系转换成Java对象及其关系。这样当Java应用程序接收到遵守给定架构的XML文档时,XMLBean创建相应的Java实例,实例是直接在底层文档上创建的,因而原文档不会有任何损失。当Java实例被修改,XMLBean修改文档以保持二者的同步。因此,Java对象和XML文档是相同的。


为了强调XMLBean的实用性,有必要看一些XMLBean真正发挥作用的实例:

持久性:几乎所有的应用程序都把用户或应用程序的数据存储在某些文件里,这些内容通常存在于XML之中。XMLBean可以使您不需要手动创建Java对象来表示文件内容就可以处理这些文件。 
通讯:优秀的面向服务的体系结构从系统内部提取出数据,并通过在Web服务之间传递的XML文档来表示业务状态。通过XMLBean和WebLogic Web服务堆栈,Java开发者可以通过Java接口、由成为XMLBean实例的服务使用的XML文档来与服务通讯。 
更好的数据转换对象(DTO):DTO在J2EE应用程序中被广泛使用,通过Session Façade 提供了对实体bean的粗粒度访问。DTO表示了实体集合状态的快照。在XMLBean出现之前,Java对象和它们的内容必须通过手动检验有效性来创建。现在有了XMLBean,可以只通过编写XML架构就可创建具有固有的有效性检验的DTO。 

这些示例表明,XMLBean是真正的下一代Java数据对象。通过高性能、开放源代码的实现,XMLBean克服了将XML和Java一起使用的传统困难,此外,它还提供了有效性检验和可执行规范的功能。最后,通过保持XML文档和Java对象的同步,XMLBean提供了面向服务开发所需的Java和XML的结合。

利用XMLBean轻轻松松读写XML

一、关于XML解析

  XML在Java应用程序里变得越来越重要, 广泛应用于数据存储和交换. 比如我们常见的配置文件,都是以XML方式存储的. XML还应用于Java Message Service和Web Services等技术作为数据交换.因此,正确读写XML文档是XML应用的基础.

  Java提供了SAX和DOM两种方式用于解析XML,但即便如此,要读写一个稍微复杂的XML,也不是一件容易的事.

  二、XMLBean简介

  Hibernate已经成为目前流行的面向Java环境的对象/关系数据库映射工具.在Hibernate等对象/关系数据库映射工具出现之前,对数据库的操作是通过JDBC来实现的,对数据库的任何操作,开发人员都要自己写SQL语句来实现. 对象/关系数据库映射工具出现后,对数据库的操作转成对JavaBean的操作,极大方便了数据库开发. 所以如果有一个类似的工具能够实现将对XML的读写转成对JavaBean的操作,将会简化XML的读写,即使对XML不熟悉的开发人员也能方便地读写XML. 这个工具就是XMLBean.

  三、准备XMLBean和XML文档

  XMLBean是Apache的一个开源项目,可以从http://www.apache.org下载,最新的版本是2.0. 解压后目录如下:

xmlbean2.0.0
     +---bin
     +---docs
     +---lib
     +---samples
     +---schemas

  另外还要准备一个XML文档(customers.xml),

  在本文的例子里,我们将对这个文档进行读写操作. 文档源码如下:

<?xml version="1.0" encoding="UTF-8"?>
<Customers>
    <customer>
            <id>1</id>
            <gender>female</gender>
            <firstname>Jessica</firstname>
            <lastname>Lim</lastname>
            <phoneNumber>1234567</phoneNumber>
            <address>
                <primaryAddress>
                        <postalCode>350106</postalCode>
                        <addressLine1>#25-1</addressLine1>
                        <addressLine2>SHINSAYAMA 2-CHOME</addressLine2>
                </primaryAddress>
                <billingAddress>
                        <receiver>Ms Danielle</receiver>
                        <postalCode>350107</postalCode>
                        <addressLine1>#167</addressLine1>
                        <addressLine2>NORTH TOWER HARBOUR CITY</addressLine2>
                </billingAddress>
            </address>
    </customer>
    <customer>
            <id>2</id>
            <gender>male</gender>
            <firstname>David</firstname>
            <lastname>Bill</lastname>
            <phoneNumber>808182</phoneNumber>
            <address>
                <primaryAddress>
                        <postalCode>319087</postalCode>
                        <addressLine1>1033 WS St.</addressLine1>
                        <addressLine2>Tima Road</addressLine2>
                </primaryAddress>
                <billingAddress>
                        <receiver>Mr William</receiver>
                        <postalCode>672993</postalCode>
                        <addressLine1>1033 WS St.</addressLine1>
                        <addressLine2>Tima Road</addressLine2>
                </billingAddress>
            </address>
    </customer>
</Customers>

  这是一个客户的数据模型,每个客户都有客户编号(ID),姓名,性别(gender),电话号码(phoneNumber)和地址,其中地址有两个: 首要地址(PrimaryAddress)和帐单地址(BillingAddress),每个地址有邮编,地址1,和地址2组成.其中帐单地址还有收件人(receiver).此外,还要准备一个配置文件(文件名customer.xsdconfig),这个文件的作用我后面会讲,它的内容如下:

<xb:config xmlns:xb="http://xml.apache.org/xmlbeans/2004/02/xbean/config">

  <xb:namespace>
    <xb:package>sample.xmlbean</xb:package>
  </xb:namespace>

</xb:config>

  四、XMLBean使用步骤

  和其他面向Java环境的对象/关系数据库映射工具的使用步骤一样,在正式使用XMLBean前,我们要作两个准备.

  1. 生成XML Schema文件

  什么是XML Schema文件? 正常情况下,每个XML文件都有一个Schema文件,XML Schema文件是一个XML的约束文件,它定义了XML文件的结构和元素.以及对元素和结构的约束. 通俗地讲,如果说XML文件是数据库里的记录,那么Schema就是表结构定义.

  为什么需要这个文件? XMLBean需要通过这个文件知道一个XML文件的结构以及约束,比如数据类型等. 利用这个Schema文件,XMLBean将会产生一系列相关的Java Classes来实现对XML的操作. 而作为开发人员,则是利用XMLBean产生的Java Classes来完成对XML的操作而不需要SAX或DOM.怎样产生这个Schema文件呢? 如果对于熟悉XML的开发人员,可以自己来写这个Schema文件,对于不熟悉XML的开发人员,可以通过一些工具来完成.比较有名的如XMLSPY和Stylus Studio都可以通过XML文件来生成Schema文件. 加入我们已经生成这个Schema文件(customer.xsd):

       <?xml version="1.0" encoding="UTF-8"?>
       <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
                  elementFormDefault="qualified">
         <xs:element name="Customers">
           <xs:complexType>
             <xs:sequence>
               <xs:element maxOccurs="unbounded" name="customer"
                           type="customerType"/>
             </xs:sequence>
           </xs:complexType>
         </xs:element>
       <xs:complexType name="customerType">
             <xs:sequence>
               <xs:element name="id" type="xs:int"/>
               <xs:element name="gender" type="xs:string"/>
               <xs:element name="firstname" type="xs:string"/>
               <xs:element name="lastname" type="xs:string"/>
               <xs:element name="phoneNumber" type="xs:string"/>
               <xs:element name="address" type="addressType"/>
             </xs:sequence>
       </xs:complexType>
         <xs:complexType name="addressType">
             <xs:sequence>
               <xs:element name="primaryAddress" type="primaryAddressType"/>
               <xs:element name="billingAddress" type="billingAddressType"/>
             </xs:sequence>
         </xs:complexType>

   <xs:complexType name="primaryAddressType">
             <xs:sequence>
               <xs:element name="postalCode" type="xs:string"/>
               <xs:element name="addressLine1" type="xs:string"/>
               <xs:element name="addressLine2" type="xs:string"/>
             </xs:sequence>
         </xs:complexType>
         <xs:complexType name="billingAddressType">
             <xs:sequence>
                   <xs:element name="receiver" type="xs:string"/>
               <xs:element name="postalCode" type="xs:string"/>
               <xs:element name="addressLine1" type="xs:string"/>
               <xs:element name="addressLine2" type="xs:string"/>
             </xs:sequence>
         </xs:complexType>
       </xs:schema>

  2. 利用scomp来生成Java Classes

  scomp是XMLBean提供的一个编译工具,它在bin的目录下. 通过这个工具,我们可以将以上的Schema文件生成Java Classes.scomp的语法如下:-

  scomp [options] [dirs]* [schemaFile.xsd]* [service.wsdl]* [config.xsdconfig]*

  主要参数说明:

  -src [dir] -- 生成的Java Classes存放目录

  -srconly -- 不编译Java Classes,不产生Jar文件

  -out [jarFileName] -- 生成的Jar文件,缺省是xmltypes.jar

  -compiler -- Java编译器的路径,即Javac的位置

  schemaFile.xsd -- XML Schema文件位置

  config.xsdconfig -- xsdconfig文件的位置, 这个文件主要用来制定生成的Java Class的一些文件名规则和Package的名称,在本文,package是sample.xmlbean

  在本文,我是这样运行的:

      scomp -src build\src  -out build\customerXmlBean.jar schema\customer.xsd
             -compiler C:\jdk142_04\bin\javac customer.xsdconfig

  这个命令行的意思是告诉scomp生成customerXmlBean.jar,放在build目录下,同时生成源代码放在build\src下, Schema文件是customer.xsd,xsdconfig文件是customer.xsdconfig.其实, 生成的Java源代码没有多大作用,我们要的是jar文件.我们先看一下build\src\sample\xmlbean下生成的Classes.

  CustomersDocument.java -- 整个XML文档的Java Class映射

  CustomerType.java -- 节点sustomer的映射

  AddressType.java -- 节点address的映射

  BillingAddressType.java -- 节点billingAddress的映射

  PrimaryAddressType.java -- 节点primaryAddress的映射

  好了,到此我们所有的准备工作已经完成了. 下面就开始进入重点:利用刚才生成的jar文件读写XML.

  五、利用XMLBean读XML文件

  新建一个Java Project,将XMLBean2.0.0\lib\下的Jar文件和刚才我们生成的customerXmlBean.jar加入到Project的ClassPath.

  新建一个Java Class: CustomerXMLBean. 源码如下:

    package com.sample.reader;

    import java.io.File;
    
    import sample.xmlbean.*;
    import org.apache.commons.beanutils.BeanUtils;
    import org.apache.xmlbeans.XmlOptions;
    public class CustomerXMLBean {
    private String filename = null;
    
    public CustomerXMLBean(String filename) {
            super();
            this.filename = filename;
    }

    public void customerReader() {
            try {
              File xmlFile = new File(filename);
              CustomersDocument doc = CustomersDocument.Factory.parse(xmlFile);
              CustomerType[] customers = doc.getCustomers().getCustomerArray();
          
              for (int i = 0; i < customers.length; i++) {
                CustomerType customer = customers[i];
                println("Customer#" + i);
                println("Customer ID:" + customer.getId());
                println("First name:" + customer.getFirstname());
                println("Last name:" + customer.getLastname());
                println("Gender:" + customer.getGender());
                println("PhoneNumber:" + customer.getPhoneNumber());
                // Primary address
                PrimaryAddressType primaryAddress = customer.getAddress().getPrimaryAddress();
                println("PrimaryAddress:");
                println("PostalCode:" + primaryAddress.getPostalCode());
                println("AddressLine1:" + primaryAddress.getAddressLine1());
                println("AddressLine2:" + primaryAddress.getAddressLine2());
                // Billing address
                BillingAddressType billingAddress = customer.getAddress().getBillingAddress();
                println("BillingAddress:");
                println("Receiver:" + billingAddress.getReceiver());
                println("PostalCode:" + billingAddress.getPostalCode());
                println("AddressLine1:" + billingAddress.getAddressLine1());
                println("AddressLine2:" + billingAddress.getAddressLine2());
            
              }
            } catch (Exception ex) {
                    ex.printStackTrace();
            }
    }
    private void println(String str) {
          System.out.println(str);
    }
   public static void main(String[] args) {
      String filename = "F://JavaTest//Eclipse//XMLBean//xml//customers.xml";
                   
     CustomerXMLBean customerXMLBean = new CustomerXMLBean(filename);
                   customerXMLBean.customerReader();
    }

}

  运行它,参看输出结果:

       Customer#0
       Customer ID:1
       First name:Jessica
       Last name:Lim
       Gender:female
       PhoneNumber:1234567
       PrimaryAddress:
       PostalCode:350106
       AddressLine1:#25-1
       AddressLine2:SHINSAYAMA 2-CHOME
       BillingAddress:
       Receiver:Ms Danielle
       PostalCode:350107
       AddressLine1:#167
       AddressLine2:NORTH TOWER HARBOUR CITY

       Customer#1
       Customer ID:2
       First name:David
       Last name:Bill
       Gender:male
       PhoneNumber:808182
       PrimaryAddress:
       PostalCode:319087
       AddressLine1:1033 WS St.
       AddressLine2:Tima Road
       BillingAddress:
       Receiver:Mr William
       PostalCode:672993
       AddressLine1:1033 WS St.
       AddressLine2:Tima Road

  怎么样,是不是很轻松? XMLBean的威力.

  六、利用XMLBean写XML文件

  利用XMLBean创建一个XML文档也是一件轻而易举的事.我们再增加一个Method,

  请看一下的Java Class:

    public void createCustomer() {
    try {
        // Create Document
        CustomersDocument doc = CustomersDocument.Factory.newInstance();
        // Add new customer
        CustomerType customer = doc.addNewCustomers().addNewCustomer();
        // set customer info
        customer.setId(3);
        customer.setFirstname("Jessica");
        customer.setLastname("Lim");
        customer.setGender("female");
        customer.setPhoneNumber("1234567");
        // Add new address
        AddressType address = customer.addNewAddress();
        // Add new PrimaryAddress
        PrimaryAddressType primaryAddress = address.addNewPrimaryAddress();
        primaryAddress.setPostalCode("350106");
        primaryAddress.setAddressLine1("#25-1");
        primaryAddress.setAddressLine2("SHINSAYAMA 2-CHOME");

// Add new BillingAddress
        BillingAddressType billingAddress = address.addNewBillingAddress();
        billingAddress.setReceiver("Ms Danielle");
        billingAddress.setPostalCode("350107");
        billingAddress.setAddressLine1("#167");
        billingAddress.setAddressLine2("NORTH TOWER HARBOUR CITY");

        File xmlFile = new File(filename);
        doc.save(xmlFile);
        } catch (Exception ex) {
                ex.printStackTrace();
        }

  }

  修改main method.

    public static void main(String[] args) {
    String filename = "F://JavaTest//Eclipse//XMLBean//xml//customers_new.xml";
        CustomerXMLBean customerXMLBean = new CustomerXMLBean(filename);
        customerXMLBean.createCustomer();
    }

  运行,打开customers_new.xml:

    <?xml version="1.0" encoding="UTF-8"?>
    <Customers>
    <customer>
            <id>3</id>
            <gender>female</gender>
            <firstname>Jessica</firstname>
            <lastname>Lim</lastname>
            <phoneNumber>1234567</phoneNumber>
            <address>
                    <primaryAddress>
                         <postalCode>350106</postalCode>
                         <addressLine1>#25-1</addressLine1>
                                       <addressLine2>SHINSAYAMA 2-CHOME</addressLine2>
                    </primaryAddress>
                    <billingAddress>
                        <receiver>Ms Danielle</receiver>
                        <postalCode>350107</postalCode>
                       <addressLine1>#167</addressLine1>
                       <addressLine2>NORTH TOWER HARBOUR CITY</addressLine2>
                    </billingAddress>
                    </address>
            </customer>
    </Customers>

  七、利用XMLBean修改XML文件

  我们再增加一个Method:

      public void updateCustomer(int id,String lastname) {
         try {
        File xmlFile = new File(filename);
        CustomersDocument doc = CustomersDocument.Factory.parse(xmlFile);
        CustomerType[] customers = doc.getCustomers().getCustomerArray();
      
        for (int i = 0; i < customers.length; i++) {
           CustomerType customer = customers[i];
          if(customer.getId()==id){
                customer.setLastname(lastname);
                break;
            }
        }
        doc.save(xmlFile);
         } catch (Exception ex) {
          ex.printStackTrace();
         }
           }

  main method:

    public static void main(String[] args) {
     String filename = "F://JavaTest//Eclipse//XMLBean//xml//customers_new.xml";
                    
    CustomerXMLBean customerXMLBean = new CustomerXMLBean(filename);
                    
    customerXMLBean.updateCustomer(3,"last");
    }

  运行之后,我们将会看到客户编号为3的客户的lastname已经改为last.

  八、利用XMLBean删除一个customer

  再增加一个Method:

    public void deleteCustomer(int id) {
     try {
      File xmlFile = new File(filename);
     CustomersDocument doc = CustomersDocument.Factory.parse(xmlFile);
    CustomerType[] customers = doc.getCustomers().getCustomerArray();

   for (int i = 0; i < customers.length; i++) {
        CustomerType customer = customers[i];
        if(customer.getId()==id){
                        customer.setNil() ;
                        break;
               }
   }
   doc.save(xmlFile);
   } catch (Exception ex) {
        ex.printStackTrace();
        }
   }

main method:

    public static void main(String[] args) {
    String filename = "F://JavaTest//Eclipse//XMLBean//xml//customers_new.xml";
                    
    CustomerXMLBean customerXMLBean = new CustomerXMLBean(filename);
                    
    customerXMLBean.deleteCustomer(3);
    }

  运行,我们将会看到客户编号为3的客户的资料已经被删除.

  九、查询XML

  除了本文在以上讲述的,利用XMLBean能轻轻松松完成XML的读写操作外,结合XPath和XQuery,XMLBean还能完成象SQL查询数据库一样方便地查询XML数据. 关于XML查询以及如何创建XML数据库, 我将在另一篇文章里讨论.

  十、结束语

  XMLBean能帮助我们轻易读写XML,这将有助于我们降低XML的学习和使用,有了这个基础,开发人员将为学习更多地XML相关技术和Web Services,JMS等其他J2EE技术打下良好地基础. 


分享到:
评论
9 楼 jkleeo 2009-12-18  
原创到底在哪里?
8 楼 wangacidlemon 2009-06-17  
强帖啊,博主小强小强的
7 楼 failure5152 2009-04-11  
好文,正在学习xmlbean
6 楼 henry_j2ee 2009-01-14  

非常感谢!不错!
项目中用到了xmlbean,谢谢分享
5 楼 Kaede 2008-12-17  
好文,赞
4 楼 yvonxiao 2008-10-30  
项目中用到了xmlbean,谢谢博主的分享
3 楼 xwangquan 2008-06-24  
对于由单个schema 生成xml,你的schema中没定义命名空间,可以在xsdconfig中指定

  <xb:namespace>  
    <xb:package>sample.xmlbean</xb:package>  
  </xb:namespace>  

因为这时没有命名空间

但如果由2个以上的xsd文件,当这些sxd文件繁多的时候,我们希望多个xsd生成的jar文件合为一个,这是就必需在<xb:namescpae 中指定url了,
如果指定url,则生成的xml文件会带有命名空间前缀,比如
<?xml version="1.0" encoding="UTF-8"?>
<h:purchase-order xmlns:h="http://wawa.com/h">
<h:customer>
<h:name>Doris Kravitz</h:name>
<h:address>Bellflower, CA</h:address>
</h:customer>
<h:line-item>
<h:description>wawa</h:description>
<h:price>1000.0</h:price>
<h:quantity>30</h:quantity>
</h:line-item>
</h:purchase-order>

不知道楼主有什么好的办法 可以去掉 <h:这个前缀

多谢!
QQ:526054692
wangquanwawa@hotmail.com
2 楼 java_century 2007-09-22  
精彩,学习中。。。。
1 楼 youlong05 2007-06-06  
xmlbeans安装

Windows Setup
On Windows, do the following:

Right-click My Computer, then click Properties.
On the Advanced tab, click Environment Variables.
Add an XMLBEANS_HOME variable whose value is the XMLBeans location.
For example, if you downloaded the XMLBeans release to the root of your C drive, this might be c:\xmlbeans-1.0.2.

Edit the PATH variable so that it includes the bin directory of your XMLBeans installation. For the XMLBeans release, you could add %XMLBEANS_HOME%\bin.
Edit the CLASSPATH variable to include the xbean.jar included with XMLBeans.
This is located in the lib directory. If you built XMLBeans from source, you can also use the JAR file in the build/ar or build/lib directories.

For XMLBeans V2, also include the jsr173_1.0_api.jar (or jsr173_api.jar, whichever one came in your download) to the CLASSPATH variable.
This is found in the lib (or build/lib if you built XMLBeans from source) directory.

Note that you may also need to edit your PATH variable so that the JDK is earlier in the path. For more information, see the XMLBeans FAQ.

UNIX/Linux Setup
On UNIX/Linux, update your environment as follows:

export XMLBEANS_HOME=<location of XMLBeans root>
export PATH=$PATH:$XMLBEANS_HOME/bin
export CLASSPATH=$XMLBEANS_HOME/lib/xbean.jar:$CLASSPATH
(or, if you built XMLBeans from source, export CLASSPATH=$XMLBEANS_HOME/build/lib/xbean.jar:$CLASSPATH)

For XMLBeans V2, export CLASSPATH=$CLASSPATH:$XMLBEANS_HOME/lib/jsr173[_1.0]_api.jar
(or, if you built XMLBeans from source, export CLASSPATH=$CLASSPATH:$XMLBEANS_HOME/build/lib/jsr173[_1.0]_api.jar)

Your updates might look like this:

export XMLBEANS_HOME=/home/me/xmlbeans-2.1.0
export PATH=$PATH:$XMLBEANS_HOME/bin
export CLASSPATH=$XMLBEANS_HOME/lib/xbean.jar:$XMLBEANS_HOME/lib/jsr173_1.0_api.jar:$CLASSPATHOnce you've updated your environment paths, you should be set up to use the tools that come with XMLBeans. These include a schema compiler, an instance validator, and more.

相关推荐

    XMLBEANS的使用总结[调试笔记]

    在本文中,我们将深入探讨XMLBEANS的使用,以及在调试过程中可能遇到的问题。 首先,XMLBEANS通过XML Schema编译器(Scomp)将XSD文件转换为Java类,这些类可以被用来实例化和操作XML文档。这使得开发人员能够利用...

    xmlbeans2.6.0

    在压缩包文件名称列表中,"xmlbeans-2.6.0"很可能包含了XMLBeans库的JAR文件,这些文件在Java项目中作为依赖引用,以便能够使用XMLBeans的功能。通常,这个JAR包会包含XMLBeans的类、接口、方法等,使得开发者能够在...

    xmlbeans-bin-3.1.0.zip

    总结来说,“xmlbeans-bin-3.1.0.zip”是XMLBeans的一个二进制发行版,提供了基于XML Schema的Java对象映射,适用于需要高效处理XML数据的Java应用程序。通过这个压缩包,开发者可以快速集成XMLBeans到他们的项目中...

    org.apache.xmlbeans jar包

    总结来说,`org.apache.xmlbeans.jar`是Java开发者处理XML数据,特别是Excel文件的利器。它通过强大的数据绑定和类型安全特性,提供了一种高效、直观的方式来操作Excel,使得开发者可以专注于业务逻辑,而不是底层的...

    xmlbeans-2.5.0.jar.zip

    总结来说,XMLBeans是Java环境中处理XML的强大工具,尤其适用于需要强类型安全和高性能的应用场景。了解并熟练掌握XMLBeans的使用,能够提升XML数据处理的效率和质量。然而,根据具体项目需求和资源限制,可能需要...

    XML、Java 与 XMLBeans 结合应用的商业价值

    总结起来,XML、Java与XMLBeans的结合提供了强大的工具集,使得娱乐业以及其他领域的企业能够利用SOA的优势,解决复杂的数据集成问题,提高开发速度,降低成本,并促进业务流程的优化。XMLBeans的易用性和灵活性使得...

    XmlBeans学习

    “XMLBEANS的使用总结”是对整个XmlBeans库的综合概述,它总结了使用XmlBeans时的一些最佳实践和常见问题,帮助开发者避免在实际项目中遇到的陷阱。这通常包括性能优化技巧,以及如何处理XML文档的复杂结构。 “教...

    使用 XMLBeans 在 Apache Geronimo 中部署 SOA 应用程序

    总结来说,XMLBeans 是一个强大的工具,它可以极大地简化基于 XML 的 SOA 应用程序的开发过程。通过将 XML 数据结构转化为可直接操作的 Java 对象,XMLBeans 降低了开发复杂性,提高了开发效率,使得开发人员能够...

    poi-3.9--xmlbeans2.6.zip

    总结来说,Apache POI-3.9与XMLBeans-2.6.0是Java开发者处理Microsoft Office文件的强大工具,它们结合使用能有效地进行Excel、Word和PowerPoint的编程操作。在实际项目中,这两个库可以帮助开发者构建自动化报告...

    xmlbeans 开发指南

    #### 一、XMLBeans简介与使用背景 XMLBeans是Apache组织提供的一个开源工具包,用于处理XML数据。通过它,开发者能够方便地将XML文档映射到Java对象,从而简化了XML数据的读取、解析及序列化等过程。本文档将详细...

    Axis2各种方式实现WebService案例代码

    本篇将深入探讨使用Axis2实现Web服务的五种主要方法:POJO、AXIOM、ADB、XMLBeans和JIBX,并涵盖客户端和服务器端的实现。 1. POJO(Plain Old Java Object)方式: POJO是Axis2中最为直观的Web服务实现方式,...

    soapui-2.0.2

    总结,SOAPUI作为一款强大的Web服务测试工具,其易用性、灵活性和全面的功能使得它在IT行业中被广泛应用。无论是进行功能验证、性能评估还是故障排查,SOAPUI都能提供高效且精确的支持。对于任何涉及SOAP Web服务的...

    软件著作权代码文档生成器v1.0.0源代码1

    本文档生成器使用Apache XMLBeans库来处理XML文件。 八、软件著作权代码文档生成器 软件著作权代码文档生成器是一个自动化的文档生成工具。它可以根据软件的著作权信息生成相应的代码文档,提高软件开发效率和质量...

    使用poi读取excel内容

    总结来说,"使用poi读取excel内容"涉及了导入Apache POI及相关依赖库,创建并操作`Workbook`、`Sheet`、`Row`和`Cell`对象,以及处理可能的数据类型和格式。在实际应用中,根据具体需求,可能还需要结合其他Java库和...

    xml与javabean的相互转换

    总结起来,XML与JavaBean之间的转换涉及多种技术和库,如JAXB、DOM、SAX以及XMLBeans等。理解这些工具的使用和优缺点,能帮助开发者根据具体需求选择合适的方法进行数据交换。在实际开发中,合理利用这些技术可以...

    poi-3.17.jar全部jar

    总结来说,Apache POI的3.17版本及其依赖库为Java开发者提供了强大的工具,使他们能够无缝地与Excel文件交互,无论是在数据导入导出、报表生成还是自动化任务中。正确配置这些库是确保程序能正确处理.xlsx文件的关键...

    docx4j使用说明.docx

    - 对于Excel文件的处理,Apache POI也是一个强大的工具,尤其是其使用XMLBeans而非JAXB,可能更适合某些场景。 **如何获取与使用docx4j:** docx4j可以从官方网站的SVN仓库或Maven仓库下载。对于开发,推荐使用...

    xfile1.2.6所需要的所有jar

    总结,`xfile1.2.6所需要的所有jar`是一个关键的开发资源,它包含了运行或构建特定版本`xfile`项目所需的全部依赖。理解`jar`文件的作用和管理方式对于Java开发者来说是至关重要的,它不仅关乎代码的正常运行,也...

    Poi3.17.jar 相关

    总结来说,POI 3.17版本提供了一套完整的工具集,用于在Java应用程序中操作Microsoft Office文件。通过这些jar文件,开发者可以方便地集成POI库,实现对Excel、Word等文件的高效读写操作,无论是传统的二进制格式...

Global site tag (gtag.js) - Google Analytics