从配置文件中读取数据
一般情况下常用的配置文件有两种,一种是properties,一种是xml 接下来我就讲讲如何获取这两种文件的数据
1.properties
test.propertes
key=value
Properties pro=new Properties();
pro.load(yourclassname.class.getResourceAsStream("/jdbc.properties"));//属性文件的位置默认为classes的位置
String val=pro.getProperties("key");
2.xml
//来自网络 选择DOM4J这种方式因为它相比较而言比较有优势
3.DOM4J生成和解析XML文档
DOM4J 是一个非常非常优秀的Java XML API,具有性能优异、功能强大和极端易用使用的特点,同时它也是一个开放源代码的软件。如今你可以看到越来越多的 Java 软件都在使用 DOM4J 来读写 XML,特别值得一提的是连 Sun 的JAXM 也在用 DOM4J。
(1)Dom4j解析XML文档所使用到的jar包:dom4j.jar(2)Dom4j文档解释示例代码
- import java.io.File;
- import java.io.FileWriter;
- import java.io.IOException;
- import java.io.Writer;
- import java.util.Iterator;
- import org.dom4j.Document;
- import org.dom4j.DocumentException;
- import org.dom4j.DocumentHelper;
- import org.dom4j.Element;
- import org.dom4j.io.SAXReader;
- import org.dom4j.io.XMLWriter;
- /**
- *
- * @author hongliang.dinghl Dom4j 生成XML文档与解析XML文档
- */
- public class Dom4jDemo implements XmlDocument {
- // Dom4j创建Xml文档
- public void createXml(String fileName) {
- Document document = DocumentHelper.createDocument(); // 创建一个文档对象
- Element employees = document.addElement("employees"); // 在根节点添加元素
- Element employee = employees.addElement("employee"); // 在employees下添加子节点
- Element name = employee.addElement("name"); // 在employee下添加子节点
- name.setText("ddvip"); // 给name节点添加内容
- Element sex = employee.addElement("sex");
- sex.setText("m");
- Element age = employee.addElement("age");
- age.setText("29");
- try {
- Writer fileWriter = new FileWriter(fileName);
- XMLWriter xmlWriter = new XMLWriter(fileWriter);
- xmlWriter.write(document);
- xmlWriter.close();
- } catch (IOException e) {
- System.out.println(e.getMessage());
- }
- }
- // Dom4j解释Xml文档
- public void parserXml(String fileName) {
- File inputXml = new File(fileName);
- SAXReader saxReader = new SAXReader();
- try {
- Document document = saxReader.read(inputXml);
- Element employees = document.getRootElement();
- for (Iterator i = employees.elementIterator(); i.hasNext();) {
- Element employee = (Element) i.next();
- for (Iterator j = employee.elementIterator(); j.hasNext();) { // 遍例节点
- Element node = (Element) j.next();
- System.out.println(node.getName() + ":" + node.getText());
- }
- }
- } catch (DocumentException e) {
- System.out.println(e.getMessage());
- }
- System.out.println("dom4j parserXml");
- }
- }