概述
java对象转换为xml格式的示例代码分享
package com.io;
public class Person {
private String name;
private Integer age;
private String hobby;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
public String getHobby() {
return hobby;
}
public void setHobby(String hobby) {
this.hobby = hobby;
}
public Person(String name, Integer age, String hobby) {
super();
this.name = name;
this.age = age;
this.hobby = hobby;
}
public Person() {
super();
}
}
package com.io;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.io.Writer;
import java.lang.reflect.Field;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.io.XMLWriter;
public class XmlUtil {
/**
* 使用dom4j将对象生成xml文件
* @param object 任意对象
* @return
* @throws SecurityException
* @throws NoSuchMethodException
* @throws InvocationTargetException
* @throws IllegalAccessException
* @throws IllegalArgumentException
* @throws IOException
*/
public static String objectSingleDom4jToXml(Object object,String path) throws SecurityException, NoSuchMethodException,
IllegalArgumentException, IllegalAccessException, InvocationTargetException, IOException{
org.dom4j.Document document = DocumentHelper.createDocument();
Element root = document.addElement(object.getClass().getSimpleName()+"s");
Element child = root.addElement(object.getClass().getSimpleName());
Field[] fields = object.getClass().getDeclaredFields();
for (Field field : fields) {
Method method = object.getClass().getMethod("get"+field.getName().substring(0,1).toUpperCase()+field.getName().substring(1,field.getName().length()));
child.addElement(field.getName()).setText(method.invoke(object)+"");
}
File dir = new File(path);
String prefix = ".xml";
if(!dir.isDirectory()) dir.mkdirs();
File file = new File(dir+"\"+object.getClass().getSimpleName()+prefix);
if(!file.exists())file.createNewFile();
file.canExecute();
file.canRead();
file.canWrite();
Writer fileWriter = new FileWriter(file);
XMLWriter xmlWriter = new XMLWriter(fileWriter);
xmlWriter.write(document);
xmlWriter.close();
return document.asXML();
}
public static void main(String[] args) throws SecurityException, NoSuchMethodException, IOException {
Person person = new Person("test", 24, "看电影、上网");
String str;
try {
str = objectSingleDom4jToXml(person,"F://create");
System.out.println(str);
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
}
}
}
登录后复制
以上就是java对象转换为xml格式的示例代码分享的详细内容,更多请关注靠谱客其它相关文章!
最后
以上就是神勇唇彩为你收集整理的java对象转换为xml格式的示例代码分享的全部内容,希望文章能够帮你解决java对象转换为xml格式的示例代码分享所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复