可以将xml的文件转成json对象在封装到实体中
@Override
public List<JSONObject> xmlTOJSONObject(String xmlStr) {
List<JSONObject> list = new ArrayList<>();
JSONObject jsonObject = XML.toJSONObject(xmlStr);
JSONObject jsonObjectRoot = (JSONObject) jsonObject.get("ROOT");
List<JSONObject> jsonObjectDataList = (List<JSONObject>) jsonObjectRoot.get("data");
jsonObjectDataList.stream().forEach(data -> {
JSONObject jsonObject1 = new JSONObject();
//先获取id
jsonObject1.set("id", (Integer) data.get("id"));
//获取headlers中的内容
JSONObject handlers = (JSONObject) data.get("handlers");
jsonObject1.set("modedatacreater", (Integer) handlers.get("modedatacreater"));
jsonObject1.set("modedatacreatershow", (String) handlers.get("modedatacreatershow"));
jsonObject1.set("modedatacreatedate", LocalDate.parse((String) handlers.get("modedatacreatedate")));
jsonObject1.set("modedatacreatetime", LocalTime.parse((String) handlers.get("modedatacreatetime")));
//获取业务字段数据
JSONObject maintable = (JSONObject) data.get("maintable");
List<JSONObject> fieldList = (List<JSONObject>) maintable.get("field");
fieldList.stream().forEach(field -> {
String filedname = String.valueOf(field.get("filedname"));//字段名称
String filedvalue = String.valueOf(field.get("filedvalue"));//字段值
jsonObject1.set(filedname, filedvalue);
});
list.add(jsonObject1);
});
return list;
}
}
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<ROOT>
<header>
<userid>0</userid>
<modeid>10</modeid>
<id/>
</header>
<search>
<condition/>
<right>y</right>
</search>
<data id="1">
<handlers>
<modedatacreater>1</modedatacreater>
<modedatacreatershow>系统管理员</modedatacreatershow>
<modedatacreatedate>2021-10-11</modedatacreatedate>
<modedatacreatetime>11:08:32</modedatacreatetime>
</handlers>
<maintable>
<field>
<filedname>gzddmc</filedname>
<filedlabel>工作地点名称</filedlabel>
<fileddbtype>varchar(222)</fileddbtype>
<filedvalue>123</filedvalue>
<fieldshowname>123</fieldshowname>
</field>
<field>
<filedname>dm</filedname>
<filedlabel>代码</filedlabel>
<fileddbtype>varchar(222)</fileddbtype>
<filedvalue>1234</filedvalue>
<fieldshowname>1234</fieldshowname>
</field>
<field>
<filedname>xxdz</filedname>
<filedlabel>详细地址</filedlabel>
<fileddbtype>varchar(222)</fileddbtype>
<filedvalue>4444</filedvalue>
<fieldshowname>4444</fieldshowname>
</field>
<field>
<filedname>fzr</filedname>
<filedlabel>负责人</filedlabel>
<fileddbtype>varchar(222)</fileddbtype>
<filedvalue>5555</filedvalue>
<fieldshowname>5555</fieldshowname>
</field>
<field>
<filedname>fzrdh</filedname>
<filedlabel>负责人电话</filedlabel>
<fileddbtype>varchar(222)</fileddbtype>
<filedvalue>7777</filedvalue>
<fieldshowname>7777</fieldshowname>
</field>
<field>
<filedname>bz</filedname>
<filedlabel>备注</filedlabel>
<fileddbtype>varchar(222)</fileddbtype>
<filedvalue>777</filedvalue>
<fieldshowname>777</fieldshowname>
</field>
</maintable>
</data>
<data id="2">
<handlers>
<modedatacreater>1</modedatacreater>
<modedatacreatershow>系统管理员</modedatacreatershow>
<modedatacreatedate>2021-10-11</modedatacreatedate>
<modedatacreatetime>14:09:40</modedatacreatetime>
</handlers>
<maintable>
<field>
<filedname>gzddmc</filedname>
<filedlabel>工作地点名称</filedlabel>
<fileddbtype>varchar(222)</fileddbtype>
<filedvalue>滨海</filedvalue>
<fieldshowname>滨海</fieldshowname>
</field>
<field>
<filedname>dm</filedname>
<filedlabel>代码</filedlabel>
<fileddbtype>varchar(222)</fileddbtype>
<filedvalue>213312</filedvalue>
<fieldshowname>213312</fieldshowname>
</field>
<field>
<filedname>xxdz</filedname>
<filedlabel>详细地址</filedlabel>
<fileddbtype>varchar(222)</fileddbtype>
<filedvalue>滨海大厦</filedvalue>
<fieldshowname>滨海大厦</fieldshowname>
</field>
</maintable>
</data>
<data id="3">
<handlers>
<modedatacreater>1</modedatacreater>
<modedatacreatershow>系统管理员</modedatacreatershow>
<modedatacreatedate>2021-10-11</modedatacreatedate>
<modedatacreatetime>14:10:30</modedatacreatetime>
</handlers>
<maintable>
<field>
<filedname>gzddmc</filedname>
<filedlabel>工作地点名称</filedlabel>
<fileddbtype>varchar(222)</fileddbtype>
<filedvalue>空港</filedvalue>
<fieldshowname>空港</fieldshowname>
</field>
<field>
<filedname>dm</filedname>
<filedlabel>代码</filedlabel>
<fileddbtype>varchar(222)</fileddbtype>
<filedvalue>123123</filedvalue>
<fieldshowname>123123</fieldshowname>
</field>
<field>
<filedname>xxdz</filedname>
<filedlabel>详细地址</filedlabel>
<fileddbtype>varchar(222)</fileddbtype>
<filedvalue>空港工业</filedvalue>
<fieldshowname>空港工业</fieldshowname>
</field>
<field>
<filedname>fzr</filedname>
<filedlabel>负责人</filedlabel>
<fileddbtype>varchar(222)</fileddbtype>
<filedvalue>空港工业</filedvalue>
<fieldshowname>空港工业</fieldshowname>
</field>
<field>
<filedname>fzrdh</filedname>
<filedlabel>负责人电话</filedlabel>
<fileddbtype>varchar(222)</fileddbtype>
<filedvalue>213122131</filedvalue>
<fieldshowname>213122131</fieldshowname>
</field>
<field>
<filedname>bz</filedname>
<filedlabel>备注</filedlabel>
<fileddbtype>varchar(222)</fileddbtype>
<filedvalue>空港工业</filedvalue>
<fieldshowname>空港工业</fieldshowname>
</field>
</maintable>
</data>
</ROOT>