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()); }