数据源与链接池
1.tomcat服务器中添加数据库驱动
将Oracle数据库的ojdbc14.jar文件复制到Tomcat安装目录下的bin文件夹
2.配置Tomcat服务 器的配置文件。
在tomcat服务器的conf/context.xml文件最下方添加如下配置信息(在ECLIPSE下的Servers/Tomcat v6.0 Server at localhost-config/CONTEXT.XML下也要复制下面的代码)
<Resource
name="jdbc/news"
auth="Container"
driverClassName="oracle.jdbc.OracleDriver" maxActive="100" maxIdle="30" maxWait="10000" password="user1" type="javax.sql.DataSource" url="jdbc:oracle:thin:@localhost:1521:orcl" username="user1"/>
name:制定Resource的JNDI名称news为工程名称随便写
auth:指定管理员Resource的Mananger(Container由容器创建和管理,Application由Web应用创建和管理)
type:指定Resource所属的Java类
maxActive:指定链接池中处于活动状态的数据库的最大数量
maxIdle:指定连接池中处于空想状态的数据库链接的最大数量
maxWait:指定连接池中连接处于空闲的最长时间,超过时间会提示异常,取值为-1,表示可以无限期等待,单位为毫秒(ms)
例子
//获取数据库连接 public Connection getConnection2(){ try { //初始化上下文 Context cxt=new InitialContext(); //获取与逻辑名相关的数据源 对象 DataSource ds=(DataSource)cxt.lookup("java:comp/env/jdbc/news"); conn=ds.getConnection(); } catch (NamingException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } return conn; }
JNDI读取数据源
<%@page import="java.sql.Connection"%> <%@page import="dao.BaseDao"%> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> </head> <body> <% BaseDao baseDao=new BaseDao();--读取数据源 Connection conn=baseDao.getConnection2(); %> <%=conn %> </body> </html>