XML格式文本 与 JavaBean 相互转换
来源:互联网 发布:阿里云退订 编辑:程序博客网 时间:2024/05/20 12:51
首先我封装了两个方法,XML—->JavaBean 和 JavaBean—->XML 之间的转换:
/** * 将 对象 转换成 xml * @param clazz 目标类 * @throws Exception 异常 */ public static void ObjectToXML(Object obj) throws Exception{ JAXBContext ctx = JAXBContext.newInstance(obj.getClass());//动态判定类型 Marshaller marchaller = ctx.createMarshaller(); marchaller.marshal(obj, System.out); } /** * 将 xml 转换成 对象 * @param obj 目标类型 * @param xmlStr xml字符串 * @throws Exception 异常 */ public static Object XMLToObject(Object obj,String xmlStr) throws Exception{ JAXBContext context = JAXBContext.newInstance(obj.getClass()); Unmarshaller unmarshaller = context.createUnmarshaller(); Object object = unmarshaller.unmarshal(new StringReader(xmlStr)); return object; }
测试程序:
public static void main(String[] args) throws Exception { Student stu = new Student(); stu.setStuName("Bla"); stu.setScore(79); stu.setAge("20"); stu.setDate(new Date()); //对象转换成xml ObjectToXML(stu); //将 xml 装换成 对象 String xmlStr = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?><student><age>20</age><date>2015-12-07T19:49:52.236+08:00</date><score>79</score><stuName>Bla</stuName></student>"; System.out.println("将 xml 装换成 对象 \n"); Object xmlToObject = XMLToObject(new Student(), xmlStr); String studentInfo = ((Student)xmlToObject).toString(); System.out.println(studentInfo); }
测试程序需要的实体类:
注意:使用Java自带的转换有一点不好,就是实体类前面需要加 @XmlRootElement 注解
@XmlRootElementpublic class Student { private String stuName; private String age; private Date date; private int score; public Student() { super(); } public Student(String stuName, String age, Date date, int score) { super(); this.stuName = stuName; this.age = age; this.date = date; this.score = score; } public String getStuName() { return stuName; } public void setStuName(String stuName) { this.stuName = stuName; } public String getAge() { return age; } public void setAge(String age) { this.age = age; } public Date getDate() { return date; } public void setDate(Date date) { this.date = date; } public int getScore() { return score; } public void setScore(int score) { this.score = score; } @Override public String toString() { return "Student [stuName=" + stuName + ", age=" + age + ", date=" + date + ", score=" + score + "]"; }}
0 0
- XML格式文本 与 JavaBean 相互转换
- XML与JavaBean相互转换工具
- XML与JavaBean相互转换工具
- javaBean和XML相互转换
- xml 格式数据与实体相互转换
- 使用 XStream实现JavaBean 与 XML/JSON 之间相互转换
- XStream实现javabean与xml之间相互转换
- xstream:实现JavaBean与XML/JSON的相互转换
- XStream实现javabean与xml之间相互转换
- javaBean与xml、json之间的相互转换
- XStream实现javabean与xml之间相互转换
- xstream:实现JavaBean与XML/JSON的相互转换
- xstream:实现JavaBean与XML/JSON的相互转换
- XStream在JavaBean与XML/JSON 之间相互转换
- java关于对象(javabean)与xml之间的相互转换
- 将文本格式的文章转换为html/xml格式文本的功能封装到Javabean
- json与javabean相互转换
- javaBean和xml之间的相互转换
- ThinkPHP框架--编辑器kindeditor-4.1.10插件的使用
- 简单的学生信息处理程序实现(C++程序设计第2周)
- 工具课程--Editplus添加删除注释的快捷键
- 【Java并发编程实战】—–MCS队列锁
- android4.0 USB Camera实例(三)UVC
- XML格式文本 与 JavaBean 相互转换
- 四种基本布局
- 在C语言中利用PCRE实现正则表达式
- Android ClassLoder 基础应用
- 谈谈iOS Animation
- Asp.net带Iframe的页面跳转解决方案
- MFC 对话框标题动态设置
- codec竞赛--莫斯科州立大学 以x264为100%码率相比,x265是74%
- 初来乍到