基于JDBC JNDI查找 sql server2005 配置数据源配置
今天公司项目需求需要在sql server2005中配置数据源 通过JNDI查找的方法具体的步骤总结如下:
第一步:
导入sql server2005驱动jar包 到tomcat lib 目录下 sqljdbc4.jar
第二步:
我们需要修改Tomcat目录下的conf文件夹里的context.xml文件。
在<Context></Context>之间加入如下代码
<Resource
name="jdbc/ourtbe"
type="javax.sql.DataSource"
auth="Container"
username="sa"
password="123456"
driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
url="jdbc:sqlserver://localhost:1433;DatabaseName=Butterfly Effect"
maxActive="300"
maxIdle="100"
maxWait="5000"
removeAbandoned="true"
removeAbandonedTimeout="600"
logAbandoned="true"
/>
注:红色标记为数据库名称和登录数据库的用户名和密码,根据具体数据库更改;黄色背景的名称要与下面的两处相一致。其它属性为数据库连接池的属性,其值根据具体情况设置。
Resource表示数据库连接池的数据源,属性name表示JNDI资源的名称,auth表示连接池管理权的属性,这里取值Container,即声明为容器
管理,type表示对象类型,这里取值为javax.sql.DataSource ,声明为数据库连接池。
第三步,我们要在项目的web.xml里配置一下,配置如下:
<resource-ref>
<description>dateSource</description>
<res-ref-name>jdbc/test</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
注:名称与上面的相对应,蓝色名称可以随意。
第四步,应用数据库连接池,勿忘重启Tomcat,编辑连接连接池代码为:
导入的相关类包
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.sql.DataSource;
public Connection getConnection() {
Connection conn=null;
try
{
/* Class.forName(driverclass);
conn=DriverManager.getConnection(url, user, password);*/
Context ctx = new InitialContext();
DataSource ds = (DataSource) ctx.lookup("java:comp/env/jdbc/test");
conn = ds.getConnection();
}
catch (Exception e) {
e.printStackTrace();
}
return conn;
}
就这样简单基本就可以....