java中的xml与实体类之间的映射
实体类:
package xml; import javax.xml.bind.annotation.XmlRootElement; @XmlRootElement
public class User {
String name;
String english_name;
String age;
String sex;
String address;
String description;
public User(){} public User(String name, String english_name, String age, String sex,
String address, String description) {
this.name=name;
this.english_name=english_name;
this.age=age;
this.sex=sex;
this.address=address;
this.description=description;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getEnglish_name() {
return english_name;
}
public void setEnglish_name(String english_name) {
this.english_name = english_name;
}
public String getAge() {
return age;
}
public void setAge(String age) {
this.age = age;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
} }
一.java对象转化成xml文件
package xml; import java.io.File; import javax.xml.bind.JAXBContext;
import javax.xml.bind.JAXBException;
import javax.xml.bind.Marshaller; /**
* 将类映射成xml
* @author Administrator
*
*/
public class Demo1 {
public static void main(String[] args) {
//创建xml对象,将他保存在指定位置
File file = new File("D:\\javaItem\\xml\\src\\xml\\1.xml");
//申明一个JAXBContext对象
JAXBContext jaxbContext;
try {
//指定映射的类,创建JAXBContext对象的上下文
jaxbContext = JAXBContext.newInstance(User.class);
//创建转化对象Marshaller
Marshaller m = jaxbContext.createMarshaller();
//创建xml文件中的数据
User user = new User("张三", "zhangsnan", "30", "男", "安徽合肥", "软件工程师");
//将Java类中的User对象转化到XML
m.marshal(user, file);
System.out.println("转化完成");
} catch (JAXBException e) {
e.printStackTrace();
}
}
}
二.xml文件转化为java对象
package xml; import java.io.File; import javax.xml.bind.JAXBContext;
import javax.xml.bind.JAXBException;
import javax.xml.bind.Unmarshaller; public class Demo2 {
public static void main(String[] args) {
File file=new File("D:\\javaItem\\xml\\src\\xml\\1.xml");
JAXBContext jaxbContext;
try {
jaxbContext=JAXBContext.newInstance(User.class);
Unmarshaller u=jaxbContext.createUnmarshaller();
User user=(User)u.unmarshal(file);
System.out.println("姓名:"+user.getName());
System.out.println("英文名字:"+user.getEnglish_name());
System.out.println("年龄:"+user.getAge());
System.out.println("性别:"+user.getSex());
System.out.println("地址:"+user.getAddress());
System.out.println("描述:"+user.getDescription());
} catch (JAXBException e) {
e.printStackTrace();
}
}
}
java中的xml与实体类之间的映射的更多相关文章
- [Unity]C#中 将XML和实体类之间进行相互转换的工具类
using System; using System.Xml; using System.Xml.Serialization; using System.IO; namespace LOTool { ...
- Java 中 Map与JavaBean实体类之间的相互转化
/** * 将一个 JavaBean 对象转化为一个 Map * @param bean 要转化的JavaBean 对象 * @return 转化出来的 Map 对象 * @throws Intr ...
- c# XML和实体类之间相互转换(序列化和反序列化)[砖]
link: http://blog.okbase.net/haobao/archive/62.html by: 好饱 我们需要在XML与实体类,DataTable,List之间进行转换,下面是XmlU ...
- C# XML和实体类之间相互转换(序列化和反序列化)
我们需要在XML与实体类,DataTable,List之间进行转换,下面是XmlUtil类,该类来自网络并稍加修改. using System; using System.Collections.Ge ...
- XML和实体类之间相互转换(序列化和反序列化)
我们需要在XML与实体类,DataTable,List之间进行转换,下面是XmlUtil类,该类来自网络并稍加修改. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 ...
- java中的几种实体类对象(PO,VO,DAO,BO,POJO)
一.PO :(persistant object ),持久对象 可以看成是与数据库中的表相映射的java对象.使用Hibernate来生成PO是不错的选择. 二.VO :(value object) ...
- Java中接口与接口和类之间的关系
接口和接口之间的关系 继承关系 可以多继承,并且可以多层继承 注意: 1.如果多个父接口中有同名的抽象方法,那么子接口只需要实现一次即可 2.如果多个父接口中有同名的默认方法,那么子接口必须重写默认方 ...
- Java实体类之间的映射(一对多关系)
通过栗子,一个人可以有多辆汽车 定义人 这个类 人可以有很多辆汽车,类中车属性用数组 class Person{ private String name; private String phone ...
- 用C#实现XML和实体类之间序列化和反序列化相互转换
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.I ...
随机推荐
- 动态从数据库中获取数据填充Select
JavaScript代码: $(document).ready(function () { getIntype(); });function getIntype(){ $.ajax({ type:&q ...
- 在EntityFramework中使用 nock的方法。
以下内容为转载: A:https://dotblogs.com.tw/asdtey/2009/09/27/10793 B:http://www.gitshah.com/2014/08/how-to-a ...
- Mysql 索引 转载
转自 :http://blog.csdn.net/wud_jiyanhui/article/details/7403375 什么是索引 索引时一种特殊的文件,他们包涵着对数据表里所有记录的引用指针. ...
- JavaScript理解
Javascript,是从类型(type)开始,这些类型在JS中分为两大类:原生类型与对象类型.原生类型包括:number,string, boolean, null, undefined:剩下的非原 ...
- ArrayList和LinkedList遍历方式及性能对比分析
ArrayList和LinkedList的几种循环遍历方式及性能对比分析 主要介绍ArrayList和LinkedList这两种list的五种循环遍历方式,各种方式的性能测试对比,根据ArrayLis ...
- ajax用户名案例(重点)
要求:失去焦点时如下效果 主页代码 <body> 用户名:<input type="text" id="a" /><div i ...
- phonegap–app启动欢迎引导页localstorage
对一个新的app,一般情况都会添加一个介绍和欢迎的页面来告诉用户app的功能和新的特性. 那么在phonegap项目里面如何添加这样个引导欢迎页. 这里需要注意的是只有app第一次打开的时候才会有,其 ...
- [转]Hibernate重要规则总结
实体类的编写规则 l 实体类必须具备无参构造方法 l 实体类必须具备数据库标识 l 通常选用无业务意义的逻辑主键作为数据库标识,通常是int/long/Str ...
- Partition does not end on cylinder boundary
fdisk可能会报该消息. DOS/Win95要求分区对齐到cyclinder boundary以适应CHS寻址. 然而现代OS都使用LBA寻址. 使用c命令关闭DOS兼容性检查. 使用u命令切换分区 ...
- Python 数据排序和列表迭代和列表推导应用
1.In-place sorting 原地排序 data=[6,4,5,2,3,1] print ('before sort', data) data.sort() print ('after sor ...