网络上很多应用都用到xml文件格式作为网络传输的载体
以前在网上搜索了一些资料,发现有个好工具xstream,能把持久化对象转化为xml文件,也可以把xml文件转化为java对象,学习了一下,写成了以下的工具方法:
package util;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.DocumentHelper;
import com.thoughtworks.xstream.XStream;
public class XMLUtil {
private static XStream xs=new XStream();
/*
* @param obj javabean对象
* @param replacement 需要替换的标记
*/
public static String replaceTag(Object obj,String replacement)
{
String xml=xs.toXML(obj);
Document doc=null;
try {
doc = DocumentHelper.parseText(xml);
} catch (DocumentException e) {
e.printStackTrace();
}
return xml.replaceAll(doc.getRootElement().getQName().getQualifiedName(), replacement);
}
/*
* @param xml xml格式的字符串
* @param replacement 需要替换的标记
*/
public static Object toObject(String xml,String replacement)
{
Document doc=null;
try {
doc = DocumentHelper.parseText(xml);
} catch (DocumentException e) {
e.printStackTrace();
}
String objxml=xml.replaceAll(doc.getRootElement().getQName().getQualifiedName(), replacement);
return xs.fromXML(objxml);
}
}
以前在网上搜索了一些资料,发现有个好工具xstream,能把持久化对象转化为xml文件,也可以把xml文件转化为java对象,学习了一下,写成了以下的工具方法:
package util;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.DocumentHelper;
import com.thoughtworks.xstream.XStream;
public class XMLUtil {
private static XStream xs=new XStream();
/*
* @param obj javabean对象
* @param replacement 需要替换的标记
*/
public static String replaceTag(Object obj,String replacement)
{
String xml=xs.toXML(obj);
Document doc=null;
try {
doc = DocumentHelper.parseText(xml);
} catch (DocumentException e) {
e.printStackTrace();
}
return xml.replaceAll(doc.getRootElement().getQName().getQualifiedName(), replacement);
}
/*
* @param xml xml格式的字符串
* @param replacement 需要替换的标记
*/
public static Object toObject(String xml,String replacement)
{
Document doc=null;
try {
doc = DocumentHelper.parseText(xml);
} catch (DocumentException e) {
e.printStackTrace();
}
String objxml=xml.replaceAll(doc.getRootElement().getQName().getQualifiedName(), replacement);
return xs.fromXML(objxml);
}
}