加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

WebService系列博客{九}[JAXBContext---java和xml的互相转换]

发布时间:2020-12-17 00:28:29 所属栏目:安全 来源:网络整理
导读:java和xml的互相转换,依靠强大的JAXBContext可以轻松实现。 下面通过一个简单案例学习一下JAXBContext 首先准备好一个JavaBean供实验: 注意 1、类文件注解:@XmlRootElement不可缺少 2、2个Student的构造方法不能少 @XmlRootElementpublic class Student {pr

java和xml的互相转换,依靠强大的JAXBContext可以轻松实现。

下面通过一个简单案例学习一下JAXBContext


首先准备好一个JavaBean供实验:

注意

1、类文件注解:@XmlRootElement不可缺少

2、2个Student的构造方法不能少

@XmlRootElement
public class Student {
	private String name;
	private String width;
	private String height;
	private int age;
	
	
	public Student(String name,String width,String height,int age) {
		super();
		this.name = name;
		this.width = width;
		this.height = height;
		this.age = age;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getWidth() {
		return width;
	}
	public void setWidth(String width) {
		this.width = width;
	}
	public String getHeight() {
		return height;
	}
	public void setHeight(String height) {
		this.height = height;
	}
	public int getAge() {
		return age;
	}
	public void setAge(int age) {
		this.age = age;
	}
	public Student() {
		super();
	}
	
}

JavaToXml:

	@Test
	public void test01(){
		try {
			JAXBContext jc = JAXBContext.newInstance(Student.class);
			Marshaller ms = jc.createMarshaller();
			Student st = new Student("zhang","w","h",11);
			ms.marshal(st,System.out);
		} catch (JAXBException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}

XmlToJava

	//xml转换Java
	@Test
	public void test02() throws JAXBException{
		String xml = "<?xml version="1.0" encoding="UTF-8" standalone="yes"?><student><age>11</age><height>h</height><name>zhang</name><width>w</width></student>";
		JAXBContext jc = JAXBContext.newInstance(Student.class);
		Unmarshaller unmar = jc.createUnmarshaller();
		Student stu = (Student) unmar.unmarshal(new StringReader(xml));
		System.out.println(stu.getName());
	}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读