JAXB的Eclipse插件(.xsd文件到java类的映射)
一、JAXB的Eclipse插件的下载地址:
https://jaxb-workshop.dev.java.net/servlets/ProjectDocumentList?folderID=4962&expandFolder=4962&folderID=0
二、插件的使用说明:
https://jaxb-workshop.dev.java.net/plugins/eclipse/xjc-plugin.html
三、实例
1、databaseInfo.xsd文件
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema
"
targetNamespace="http://www.w3school.com.cn
" xmlns="http://www.w3school.com.cn
"
elementFormDefault="qualified">
<xs:element name="database">
<xs:complexType>
<xs:sequence>
<xs:element name="info" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="ip" type="xs:string" />
<xs:element name="port" type="xs:string" />
<xs:element name="databaseName" type="xs:string" />
<xs:element name="userName" type="xs:string" />
<xs:element name="password" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
2、右键点击“databaseInfo.xsd”文件
3、下一步
4、下一步
5、“Finish”之后
6、刷新项目
7、xmlOperation.java对XML的读写操作
package com.channelsoft.xml.operation;
import java.io.File;
import javax.xml.bind.JAXBContext;
import javax.xml.bind.JAXBException;
import javax.xml.bind.Marshaller;
import javax.xml.bind.Unmarshaller;
import com.channelsoft.xml.Database;
import com.channelsoft.xml.ObjectFactory;
public class xmlOperation
{
/**
*从XML文件读
*/
public void readFromXML()
{
JAXBContext jc;
try
{
jc = JAXBContext.newInstance("com.channelsoft.xml");
Unmarshaller u = jc.createUnmarshaller();
Database info = (Database) u.unmarshal(new File("e:\\info.xml"));
for(int i=0;i<info.getInfo().size();i++)
{
System.out.println(info.getInfo().get(i).getIp());
System.out.println(info.getInfo().get(i).getPort());
System.out.println(info.getInfo().get(i).getDatabaseName());
System.out.println(info.getInfo().get(i).getUserName());
System.out.println(info.getInfo().get(i).getPassword());
}
}
catch (JAXBException e)
{
e.printStackTrace();
}
}
/**
* 创建并写入XML文件
*/
public void saveToXML()
{
try
{
ObjectFactory of = new ObjectFactory();
Database database = of.createDatabase();
Database.Info info= of.createDatabaseInfo();
info.setIp("10.130.14.142");
info.setPort("1433");
info.setDatabaseName("hrinfo");
info.setUserName("sa");
info.setPassword("dibin");
Database.Info info1= of.createDatabaseInfo();
info1.setIp("10.130.14.49");
info1.setPort("1433");
info1.setDatabaseName("hrinfo");
info1.setUserName("sa11");
info1.setPassword("dibin11");
database.getInfo().add(info);
database.getInfo().add(info1);
JAXBContext jc = JAXBContext.newInstance("com.channelsoft.xml");
Marshaller ms = jc.createMarshaller();
ms.setProperty("jaxb.encoding", "GB2312");
ms.setProperty("jaxb.formatted.output", true);
ms.marshal(database, new File("e:\\info.xml"));
}
catch (Exception e)
{
}
}
public static void main(String[] args)
{
new xmlOperation().saveToXML();
new xmlOperation().readFromXML();
}
}
分享到:
相关推荐
源代码-ajax即时聊天程序(新手学习推荐).zip
以下是一个简单的Python代码,用于在控制台上打印一个看起来像爱心的形状。这个代码使用了ASCII字符来创建形状。 python print('\n'.join([''.join([('Love'[(x-y)%4] if ((x*0.05)**2+(y*0.1)**2-1)**3-(x*0.05)**2*(y*0.1)**3 <= 0 else ' ') for x in range(-30, 30)]) for y in range(15, -15, -1)])) 这个代码使用了数学公式来生成心形。但是,由于ASCII字符的限制,这个心形可能看起来不是很完美。 如果你想要一个更详细和定制化的心形,你可能需要使用图形库,如PIL(Python Imaging Library)或matplotlib。但是,这些库通常用于创建图像文件或在图形用户界面上绘制,而不是在控制台上打印。 另外,这里有一个使用turtle模块在图形窗口中绘制爱心的简单示例: python import turtle # 创建一个新的turtle对象 heart = turtle.Turtl
Matlab领域上传的视频均有对应的完整代码,皆可运行,亲测可用,适合小白; 1、代码压缩包内容 主函数:main.m; 调用函数:其他m文件;无需运行 运行结果效果图; 2、代码运行版本 Matlab 2019b;若运行有误,根据提示修改;若不会,私信博主; 3、运行操作步骤 步骤一:将所有文件放到Matlab的当前文件夹中; 步骤二:双击打开main.m文件; 步骤三:点击运行,等程序运行完得到结果; 4、仿真咨询 如需其他服务,可私信博主或扫描视频QQ名片; 4.1 博客或资源的完整代码提供 4.2 期刊或参考文献复现 4.3 Matlab程序定制 4.4 科研合作
30客户满意度调查表.DOC
使用python3以上版本
cn_msdn_library_for_visual_studio_2008_service_pack_1_x86_dvd_x1.iso 分卷3
变更申请单.xls
【路缝识别】 GUI形态学路缝识别(带面板)【含Matlab源码 1649期】
附件是判断回文素数的C语言程序,文件绿色安全,请大家放心下载,仅供交流学习使用,无任何商业目的! 程序首先定义了两个函数:isPrime 用于判断一个数是否为素数,isPalindrome 用于判断一个数是否为回文。然后在 main 函数中,通过一个循环来检查从2到999(这里假设我们只需要检查小于1000的数)的所有数,如果一个数既是素数又是回文数,就将其打印出来。
Modbus Poll version 10.9.0 Build 2194,modbus 主机,包含 32位与64位,非常好用的 modbus 协议主机调试工具
Matlab领域上传的视频均有对应的完整代码,皆可运行,亲测可用,适合小白; 1、代码压缩包内容 主函数:main.m; 调用函数:其他m文件;无需运行 运行结果效果图; 2、代码运行版本 Matlab 2019b;若运行有误,根据提示修改;若不会,私信博主; 3、运行操作步骤 步骤一:将所有文件放到Matlab的当前文件夹中; 步骤二:双击打开main.m文件; 步骤三:点击运行,等程序运行完得到结果; 4、仿真咨询 如需其他服务,可私信博主或扫描视频QQ名片; 4.1 博客或资源的完整代码提供 4.2 期刊或参考文献复现 4.3 Matlab程序定制 4.4 科研合作
此文档是读书屋的自动化测试用例,
17产品标识和可追溯性控制程序.doc
Matlab领域上传的视频均有对应的完整代码,皆可运行,亲测可用,适合小白; 1、代码压缩包内容 主函数:main.m; 调用函数:其他m文件;无需运行 运行结果效果图; 2、代码运行版本 Matlab 2019b;若运行有误,根据提示修改;若不会,私信博主; 3、运行操作步骤 步骤一:将所有文件放到Matlab的当前文件夹中; 步骤二:双击打开main.m文件; 步骤三:点击运行,等程序运行完得到结果; 4、仿真咨询 如需其他服务,可私信博主或扫描视频QQ名片; 4.1 博客或资源的完整代码提供 4.2 期刊或参考文献复现 4.3 Matlab程序定制 4.4 科研合作
源代码-ApiAdmin后台管理系统 基于ThinkPHP.zip
Matlab领域上传的视频均有对应的完整代码,皆可运行,亲测可用,适合小白; 1、代码压缩包内容 主函数:main.m; 调用函数:其他m文件;无需运行 运行结果效果图; 2、代码运行版本 Matlab 2019b;若运行有误,根据提示修改;若不会,私信博主; 3、运行操作步骤 步骤一:将所有文件放到Matlab的当前文件夹中; 步骤二:双击打开main.m文件; 步骤三:点击运行,等程序运行完得到结果; 4、仿真咨询 如需其他服务,可私信博主或扫描视频QQ名片; 4.1 博客或资源的完整代码提供 4.2 期刊或参考文献复现 4.3 Matlab程序定制 4.4 科研合作
Matlab领域上传的视频均有对应的完整代码,皆可运行,亲测可用,适合小白; 1、代码压缩包内容 主函数:main.m; 调用函数:其他m文件;无需运行 运行结果效果图; 2、代码运行版本 Matlab 2019b;若运行有误,根据提示修改;若不会,私信博主; 3、运行操作步骤 步骤一:将所有文件放到Matlab的当前文件夹中; 步骤二:双击打开main.m文件; 步骤三:点击运行,等程序运行完得到结果; 4、仿真咨询 如需其他服务,可私信博主或扫描视频QQ名片; 4.1 博客或资源的完整代码提供 4.2 期刊或参考文献复现 4.3 Matlab程序定制 4.4 科研合作
Matlab领域上传的视频均有对应的完整代码,皆可运行,亲测可用,适合小白; 1、代码压缩包内容 主函数:main.m; 调用函数:其他m文件;无需运行 运行结果效果图; 2、代码运行版本 Matlab 2019b;若运行有误,根据提示修改;若不会,私信博主; 3、运行操作步骤 步骤一:将所有文件放到Matlab的当前文件夹中; 步骤二:双击打开main.m文件; 步骤三:点击运行,等程序运行完得到结果; 4、仿真咨询 如需其他服务,可私信博主或扫描视频QQ名片; 4.1 博客或资源的完整代码提供 4.2 期刊或参考文献复现 4.3 Matlab程序定制 4.4 科研合作
Matlab领域上传的视频均有对应的完整代码,皆可运行,亲测可用,适合小白; 1、代码压缩包内容 主函数:main.m; 调用函数:其他m文件;无需运行 运行结果效果图; 2、代码运行版本 Matlab 2019b;若运行有误,根据提示修改;若不会,私信博主; 3、运行操作步骤 步骤一:将所有文件放到Matlab的当前文件夹中; 步骤二:双击打开main.m文件; 步骤三:点击运行,等程序运行完得到结果; 4、仿真咨询 如需其他服务,可私信博主或扫描视频QQ名片; 4.1 博客或资源的完整代码提供 4.2 期刊或参考文献复现 4.3 Matlab程序定制 4.4 科研合作