简单的jaxb例子

有两个实体对象“意见”和“回复”,它们之间是一对多的关系

 

@XmlAccessorType(XmlAccessType.FIELD)
public class Advice {

    @XmlAttribute
    protected String filename;
    public String getFilename() {
		return filename;
	}
	public void setFilename(String filename) {
		this.filename = filename;
	}
	public String getFilepath() {
		return filepath;
	}
	public void setFilepath(String filepath) {
		this.filepath = filepath;
	}
	public String getContent() {
		return content;
	}
	public void setContent(String content) {
		this.content = content;
	}
	public void setReplies(List<Reply> replies) {
		this.replies = replies;
	}
	public List<Reply> getReplies() {
		return replies;
	}
	@XmlElement
    protected String filepath;
	
	@XmlElement
    protected String content;
	
	@XmlElementWrapper(name="replies")
	  @XmlElement(name = "value")
	private List<Reply> replies ;	
}

 

 

@XmlAccessorType(XmlAccessType.FIELD)

public class Reply {
	@XmlAttribute
	private String content;
	@XmlAttribute
	private int status;

	public void setContent(String content) {
		this.content = content;
	}

	public String getContent() {
		return content;
	}

	public void setStatus(int status) {
		this.status = status;
	}

	public int getStatus() {
		return status;
	}

}


 

 

	public static void main(String[] args) throws JAXBException, FileNotFoundException {
		
		
		JAXBContext jc = JAXBContext.newInstance("Advice");
		
		
		Advice a= new Advice();
		a.setFilename("aaa.java");
		a.setFilepath("c:\\");
		a.setContent("content");
		
		Reply reply1 = new Reply();
		reply1.setContent("xxx");
		reply1.setStatus(0);
		Reply reply2 = new Reply();
		reply2.setContent("yyyy");
		reply2.setStatus(1);
		
		List<Reply> replies = new ArrayList<Reply>();
		replies.add(reply1);
		replies.add(reply2);

		a.setReplies(replies);
		
		
		
		
		JAXBElement usersE = new JAXBElement<Advice>(new QName("", "advice"), Advice.class, null, a);

		Marshaller marshaller = jc.createMarshaller();

		marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE);

		marshaller.marshal( usersE,new FileOutputStream("c:\\test.xml"));

	}


 

输出

  <?xml version="1.0" encoding="UTF-8" standalone="yes" ?> 
- <advice filename="aaa.java">
  <filepath>c:\</filepath> 
  <content>content</content> 
- <replies>
  <value status="0" content="xxx" /> 
  <value status="1" content="yyyy" /> 
  </replies>
  </advice>



 

基于Python的天气预测和天气可视化项目源码+文档说明(高分毕设/大作业),个人经导师指导并认可通过的高分设计项目,评审分99分,代码完整确保可以运行,小白也可以亲自搞定,主要针对计算机相关专业的正在做大作业的学生和需要项目实战练习的学习者,可作为毕业设计、课程设计、期末大作业,代码资料完整,下载可用。 基于Python的天气预测和天气可视化项目源码+文档说明(高分毕设/大作业)基于Python的天气预测和天气可视化项目源码+文档说明(高分毕设/大作业)基于Python的天气预测和天气可视化项目源码+文档说明(高分毕设/大作业)基于Python的天气预测和天气可视化项目源码+文档说明(高分毕设/大作业)基于Python的天气预测和天气可视化项目源码+文档说明(高分毕设/大作业)基于Python的天气预测和天气可视化项目源码+文档说明(高分毕设/大作业)基于Python的天气预测和天气可视化项目源码+文档说明(高分毕设/大作业)基于Python的天气预测和天气可视化项目源码+文档说明(高分毕设/大作业)基于Python的天气预测和天气可视化项目源码+文档说明(高分毕设/大作业)基于Python的天气预测和天气可视化项目源码+文档说明(高分毕设/大作业)基于Python的天气预测和天气可视化项目源码+文档说明(高分毕设/大作业)基于Python的天气预测和天气可视化项目源码+文档说明(高分毕设/大作业)基于Python的天气预测和天气可视化项目源码+文档说明(高分毕设/大作业)基于Python的天气预测和天气可视化项目源码+文档说明(高分毕设/大作业)基于Python的天气预测和天气可视化项目源码+文档说明(高分毕设/大作业)基于Python的天气预测和天气可视化项目源码+文档说明(高分毕设/大作业)基于Python的天气预测和天气可视化项目源码+文档说明(高分毕设/大作业
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值