1.解析xml 文件存储到 hashmap
(1).需要导入的jar 包:
这里我们借助于开源框架dom4j去解析xml(这里使用的是dom4j-1.6.1.jar),然后将解析得到的结果存入HashMap,解析请求消息的方法如下:
(2) 实现代码:
public static Map<String, String> parseXml(HttpServletRequest request) {
// 将解析结果存储在HashMap中
Map<String, String> map = new HashMap<String, String>();
try {
// 从request中取得输入流
InputStream inputStream = request.getInputStream();
// 读取输入流
SAXReader reader = new SAXReader();
Document document = reader.read(inputStream);
// 得到xml根元素
Element root = document.getRootElement();
// 得到根元素的所有子节点
List<Element> elementList = root.elements();
// 遍历所有子节点
for (Element e : elementList)
map.put(e.getName(), e.getText());
// 释放资源
inputStream.close();
inputStream = null;
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
log.info("IOException:" + e.getMessage());
} catch (DocumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
log.debug("DocumentException e" + e.getMessage());
}
return map;
}
(3)将java bean 数据解析成xml
采用开源框架xstream来实现Java类到xml的转换(这里使用的是xstream-1.3.1.jar),代码如下:
/**
* 文本消息对象转换成xml
*
* @param textMessage 文本消息对象
* @return xml
*/
public static String textMessageToXml(TextMessage textMessage) {
xstream.alias("xml", textMessage.getClass());
return xstream.toXML(textMessage);
}
/**
* 音乐消息对象转换成xml
*
* @param musicMessage 音乐消息对象
* @return xml
*/
public static String musicMessageToXml(MusicMessage musicMessage) {
xstream.alias("xml", musicMessage.getClass());
return xstream.toXML(musicMessage);
}
/**
* 图文消息对象转换成xml
*
* @param newsMessage 图文消息对象
* @return xml
*/
public static String newsMessageToXml(NewsMessage newsMessage) {
xstream.alias("xml", newsMessage.getClass());
xstream.alias("item", new Article().getClass());
return xstream.toXML(newsMessage);
}
/**
* 扩展xstream,使其支持CDATA块
*
* @date 2013-05-19
*/
private static XStream xstream = new XStream(new XppDriver() {
public HierarchicalStreamWriter createWriter(Writer out) {
return new PrettyPrintWriter(out) {
// 对所有xml节点的转换都增加CDATA标记
boolean cdata = true;
@SuppressWarnings("unchecked")
public void startNode(String name, Class clazz) {
super.startNode(name, clazz);
}
protected void writeText(QuickWriter writer, String text) {
if (cdata) {
writer.write("<![CDATA[");
writer.write(text);
writer.write("]]>");
} else {
writer.write(text);
}
}
};
}
});
2.配置文件xml 解析
private static void init_rundong_xml() {
try {
// 解析配置文件的步骤
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
// 创建documentBuilder 对象
DocumentBuilder db = dbf.newDocumentBuilder();
log.info("# 读取润东xml配置");
File rundong_xml = new File(MapUtil.class.getClassLoader()
.getResource("rundong.xml").getPath());
if (!rundong_xml.exists()) {
log.error("读取rundong.xml属性文件失败:没有这个文件 "
+ rundong_xml.getAbsolutePath());
} else {
log.info("rundong_xml.getAbsolutePath():"
+ rundong_xml.getAbsolutePath());
rundong_parse(db.parse(rundong_xml), rundong_product);
}
} catch (Exception e) {
log.error(e.getMessage());
log.error("failure");
return;
}
}
3.json 解析
4.mongodb 解析与存储
5.
分享到:
相关推荐
AIS数据解析AIS数据解析AIS数据解析AIS数据解析AIS数据解析AIS数据解析AIS数据解析AIS数据解析AIS数据解析AIS数据解析AIS数据解析AIS数据解析AIS数据解析AIS数据解析AIS数据解析AIS数据解析AIS数据解析AIS数据解析...
基于ATGM336H 的 NAME 协议 GPS数据解析,主要解析GLL指令,以及波特率设置,定位频率以及返回数据筛选
串口数据解析,vc读取串口数据,获取完整数据包并解析出其中数据 抱歉,上传时默认了下载所需积分,之后不能编辑,下载了的可以联系我返还部分积分
json数据解析
Android_JSON数据解析 博客里面的Demo
GGA数据解析源吗。 GGA是一种GPS协议格式,各个字段有固定含义,使用代码进行解析。
用于UR机器人的通信及通信数据解析,内容包括完整的Windows Sockets编程,以及UR机器人的通信协议解析、字节顺序变换等。
Android 实用的数据json数据解析封装类,能快速解析任何形式json数据
android之json和gson数据解析最完整的代码例子(包括各种样式的json数据) 本人在2.3.3模拟器上已亲测可以运行。最适合学习json 或gson数据解析的初学者。
LAS点云数据解析工具LAS点云数据解析工具LAS点云数据解析工具LAS点云数据解析工具LAS点云数据解析工具LAS点云数据解析工具LAS点云数据解析工具LAS点云数据解析工具LAS点云数据解析工具LAS点云数据解析工具LAS点云...
使用C#进行雷达数据解析 C# 雷达 arpa 船载 AIS 对arpa数据进行解析
TI IWR1642雷达串口数据解析C++代码。 本文毕设一部分,有C++基础的可以借鉴。只提供一个CPP文件
基于MODSCAN32的MODBUS通讯数据解析,用于嵌入式工程师开发底层数据通讯驱动。
基于.NET2.0框架,可运行于WinCE、Win7、WinXP,是一款GPS数据解析处理的入门级应用程序,具备数据解析,数据记录及网络通信等基本功能,适用于简单的GPS数据处理查看记录的使用要求。
tiff格式数据解析为前端opengl可读取渲染格式的数据
安卓串口通讯源代码,实现了数据解析,1秒钟定时更新,用于疫情期间温度传感器读取体温,完整的android studio 3.6.1项目,可以直接编译使用
基于linux的gps数据解析程序,显示时间,经纬度,卫星数量等。
GPS数据解析 数据拆分 坐标转换 显示线路图 源代码 逐条读取gps数据 然后进行拆分 解析,坐标转换,绘制线路。。。很好的示例 多多交流学习。。
stm32 的gps的数据解析的程序 已经在产品上用过啦
bufr-高空数据解析-气象数据 适合气象行业数据解析