XML转Map集合以及对象化XML

来源:互联网 发布:小盘科技股 知乎 编辑:程序博客网 时间:2024/06/07 03:37
packagecom.ran.util;
 
importjava.io.InputStream;
importjava.util.HashMap;
importjava.util.List;
importjava.util.Map;
 
importjavax.servlet.http.HttpServletRequest;
 
importorg.dom4j.Document;
importorg.dom4j.Element;
importorg.dom4j.io.SAXReader;
 
importcom.ran.entity.TextMessage;
importcom.ran.xstream.XStream;
 
/**
 * xml转为Map集合
 * @author Administrator
 *
 */
publicclass MessageUtil {
    publicstatic Map<String, String> xmlToMap(HttpServletRequest request){
        Map<String, String> map = newHashMap<String, String>();
        SAXReader reader = newSAXReader();
        try{
            InputStream ins = request.getInputStream();
             
            Document doc = reader.read(ins);
            Element root = doc.getRootElement();
             
            @SuppressWarnings("unchecked")
            List<Element> list = root.elements();
            for(Element e : list) {
                map.put(e.getName(), e.getText());
            }
            ins.close();
        }catch(Exception e) {
            e.printStackTrace();
        }
        returnmap;
    }
     
    /**
     * 将对象转化为xml
     * @param testMessage
     * @return
     */
    publicstatic String textMessageToXml(TextMessage testMessage){
        XStream xstream = newXStream();
        xstream.alias("xml",testMessage.getClass());
        returnxstream.toXML(testMessage);
    }
     
     
     
}
原创粉丝点击