package com.jmh.xx2;
import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;
public class Demo {
public static void main(String[] args) throws IOException {
//同包
InputStream is = Demo.class.getResourceAsStream("db.properties");
//根目录
//InputStream is = Demo.class.getResourceAsStream("/db.properties");
//与xml文件同包下:思路
//在安全目录下 名为安全必须不能直接访问
//必须在servlet里面进行操作
//解析安全文件
//拿到上下文
//InputStream resourceAsStream =
//req.getServletContext().getResourceAsStream("WEB-
//INF/lib/db.properties");
//开始解析
//Properties p=new Properties();
//p.load(resourceAsStream);
//System.out.println(p.getProperty("uname"));
//开始解析
Properties p=new Properties();
p.load(is);
System.out.println(p.getProperty("uname"));
}
}
2.案例二(☆)
package com.jmh.xx2;
import java.io.InputStream;
import java.util.List;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Node;
import org.dom4j.io.SAXReader;
public class Demo02 {
//private static final Node Element = null;
public static void main(String[] args) throws DocumentException {
//获取io流
InputStream xs = Demo02.class.getResourceAsStream("students.xml");
//获取读取器对象
SAXReader sa=new SAXReader();
//获取配置文件 对象
Document read = sa.read(xs);
//使用xpath解析 节点
List selectNodes = read.selectNodes("/students/student");
//遍历
for (Node node : selectNodes) {
//获取name文本的信息
Node se = node.selectSingleNode("name");
String text = se.getText();
System.out.println(text);
//没有属性值 转成对象 获取值
org.dom4j.Element ele = (org.dom4j.Element)node;
String sid = ele.attributeValue("sid");
System.out.println(sid);
}
}
}
3.案例三(☆)
package com.jmh.xx2;
import java.io.InputStream;
import java.util.List;
import org.dom4j.Element;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Node;
import org.dom4j.io.SAXReader;
public class Demo03 {
//private static final Node Element = null;
public static void main(String[] args) throws DocumentException {
//获取io流
InputStream xs = Demo03.class.getResourceAsStream("students.xml");
//获取读取器对象
SAXReader sa=new SAXReader();
//获取配置文件 对象
Document read = sa.read(xs);
//使用xpath解析 节点
//拿到所有节点
//使用xpath解析节点 包含
//List selectNodes = read.selectNodes("/
public class Demo04 {
public static void main(String[] args) throws DocumentException {
//获取io流
InputStream res = Demo04.class.getResourceAsStream("hibernate.cfg.xml");
//System.out.println(res);
//获取读取器
SAXReader sax=new SAXReader();
//获取配置文件 对象
Document read = sax.read(res);
//开始解析
List selectNodes = read.selectNodes("/hibernate-configuration/session-factory");
//开始遍历
for (Node node : selectNodes) {
//获取多个对象
List selectNodes2 = node.selectNodes("property");
//System.out.println(selectNodes2.size());
//继续遍历
for (Node node2 : selectNodes2) {
System.out.println("纯值==="+node2.getText());
//同时遍历Name属性
Element ele=(Element)node2;
String name = ele.attributeValue("name");
System.out.println("name属性值===="+name);
}
//继续爬标签mapping
List selectNodes3 = node.selectNodes("mapping");
//继续遍历
for (Node node3 : selectNodes3) {
//System.out.println(node3.getText());
//同时遍历Name属性
Element ele=(Element)node3;
String resource = ele.attributeValue("resource");
System.out.println("resource属性值===="+resource);
}
}
}
}
5.操作配置文件
hibernate.cfg.xml
root root jdbc:mysql://localhost:3306/t207?useUnicode=true&characterEncoding=UTF-8 com.mysql.jdbc.Driver org.hibernate.dialect.MySQLDialect true true true true org.hibernate.cache.ehcache.EhCacheRegionFactory
students.xml
小明 小芳 小王
db.properties
uname=mybatis_ssm upass=xiaoli url=jdbc:mysql://localhost:3306/mybatis_ssm driver_Class=com.mysql.jdbc.Driver initPoolSize=5 maxPoolSize=20



