实例二(使用Tomcat数据源连接池):在WebContent / META—INF 文件中配置名为context.xml的文件(实际上就是配置basicDataSourceFactory)
<?xml version="1.0" encoding="utf-8"?>
<Context>
<Resource name="jdbc/sqlserver"
type="javax.sql.DataSource"
driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
url="jdbc:sqlserver://localhost:1433;DatabaseName=test"
username="sa"
password="pass"
maxactive="40"
maxIdle="2"
minIdle="1"
maxWait="50000"
/>
</Context>
注解——username:传递给JDBC驱动的用于建立连接的用户名 ——password :传递给JDBC驱动的用于建立连接的密码 ——url : 传递给JDBC驱动的用于建立连接的URL ——driverClassName :使用的JDBC驱动的完整有效的java 类名 ——initialSize 0 初始化连接:连接池启动时创建的初始化连接数量,1.2版本后支持 ——maxActive 8 最大活动连接:连接池在同一时间能够分配的最大活动连接的数量, 如果设置为非正数则表示不限制 ——maxIdle 8 最大空闲连接:连接池中容许保持空闲状态的最大连接数量,超过的空闲连接将被释放,如果设置为负数表示不限制 ——minIdle 0 最小空闲连接:连接池中容许保持空闲状态的最小连接数量,低于这个数量将创建新的连接,如果设置为0则不创建——maxWait 无限 最大等待时间:当没有可用连接时,连接池等待连接被归还的最大时间(以毫秒计数),超过时间则抛出异常,如果设置为-1表示无限等待
连接池技术运用于web开发中,使用时必须启动tomcat
import java.sql.Connection;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.sql.DataSource;
public class DBCutil {
private static Connection conn;
public static Connection getConnection(){
DataSource ds = null;
try{
Context c = new InitialContext();
ds = (DataSource)c.lookup("java:/comp/env/jdbc/sqlserver");
conn = ds.getConnection();
}catch(Exception e){
e.printStackTrace();
}
return conn;
}
}
MYSQL中数据库配置:
<Resource name="jdbc/mysql" type="javax.sql.DataSource" driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/test" username="root" password="pass" maxactive="40" maxIdle="2" minIdle="1" maxWait="50000" />
private static Connection conn; public static Connection getConnection(){ DataSource ds = null; try{ Context c = new InitialContext(); ds = (DataSource)c.lookup("java:/comp/env/jdbc/mysql"); conn = ds.getConnection(); }catch(Exception e){ e.printStackTrace(); } return conn; }