一、jdk方式解析配置文件
1.配置文件config.xml如下
<?xml version="1.0" encoding="UTF-8"?>
<config>
<config1 id="systemName" value="1">system01</config1>
<config1 id="systemId">001</config1>
<config1 id="systemBirth">20200516</config1>
</config>
2.读取配置文件如下
public class XMLReader {
private static Map<String, Object> map = new HashMap<String, Object>();
public static void main(String[] args) {
DocumentBuilderFactory documentBuilderFactory =
DocumentBuilderFactory.newInstance();
try {
DocumentBuilder documentBuilder =
documentBuilderFactory.newDocumentBuilder();
InputStream is = XMLReader.class
.getClassLoader().getResourceAsStream("config.xml");
Document document = documentBuilder.parse(is);
Element root = document.getDocumentElement();
NodeList nodeList = root.getChildNodes();
String id = null;
String value = null;
for (int i = 0 ; i < nodeList.getLength() ; i++) {
Node node = nodeList.item(i);
if(Node.ELEMENT_NODE == node.getNodeType()) {
NamedNodeMap attributes = node.getAttributes();
id = attributes.getNamedItem("id").getNodeValue();
value = node.getTextContent();
if(map.containsKey(id)) {
System.out.println("id重复");
}
map.put(id, value);
}
}
System.out.println(map.toString());
} catch (ParserConfigurationException e) {
e.printStackTrace();
} catch (SAXException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}