JSP第三章
本章学习要点:
通过配置文件与数据库连接
JNDI连接池连接数据库
通过配置文件与数据库连接
1)配置配置文件
在SRC下建立db.properties文件在其中输入
jdbc.driver=oracle.jdbc.driver.OracleDriver
jdbc.url=jdbc:oracle:thin:@localhost:1521:ORCL
jdbc.username=ldh
jdbc.password=aaa
2)将JAR包放入WebRoot/WEB-INF/lib下
3)读取配置文件
//读取配置文件(属性文件)的工具类
public class ConfigManager {
private static ConfigManager configManager;
// properties.load(InputStream);读取属性文件
private static Properties properties;
// 配置文件
private String configFile = "db.properties";
/**
* 构造方法
*/
private ConfigManager() {
//1) 配置文件对象
// public class Properties extends Hashtable<Object,Object>
properties = new Properties();
// 2)通过输入文件流
InputStream in = ConfigManager.class.getClassLoader()
.getResourceAsStream(configFile);
try {
// 3)加载文件流
properties.load(in);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
try {
//4)关闭流
in.close(); // 检查异常,必须抛异常!
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
/**
* 单例模式 :只能一个对象
* @return
*/
public static ConfigManager getInstance() {
if (configManager == null) {
configManager = new ConfigManager();
}
return configManager;
}
/**
* 通过key 获得值
* @param key
* @return
*/
public String getString(String key) {
return properties.getProperty(key);
}
}
4)通过配置文件读取
public Connection getPropertiesConnection() {
// 1)获得配置对象
ConfigManager cm = ConfigManager.getInstance();
// 2)调用方法来获得值
String driver = cm.getString("jdbc.driver");
String url = cm.getString("jdbc.url");
String uname = cm.getString("jdbc.username");
String upass = cm.getString("jdbc.password");
try {
Class.forName(driver);
Connection conn = DriverManager.getConnection(url, uname, upass);
return conn;
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
JNDI连接池连接数据库
一:配置连接池
1)Tomcat\conf\context.xml文件
“<” Resource name=”jdbc/book”
auth=”Container”
type=”javax.sql.DataSource”
maxActive=”100”
maxIdle=”30” maxWait=”10000” username=”sy” password=”aaa”
driverClassName=”oracle.jdbc.driver.OracleDriver”
url=”jdbc:oracle:thin:@localhost:1521:hlx” />
2)Tomcat\lib\目录下加载驱动包.jar
3)读取数据源
//1)获取上下文对象 InitialContext类
Context ct= new InitialContext();
//2)获取数据源对象
DataSource ds = (DataSource)ct.lookup(“java:comp/env/jdbc/book”);
//3)获得连接对象
Connection con= ds.getConnection();