一 全局配置
1.先在tomcat server.xml中加入如下配置
在其中的<Context></Context> 中加入如下代码(要根据自己的情况稍加修改):
<Resource
name="jdbc/
mysql"
auth="Container"
driverClassName="org.gjt.mm.mysql.Driver"
url="jdbc:mysql://localhost/myznt"
maxActive="100"
maxIdle="30"
maxWait="5000"
removeAbandoned="true"
removeAbandonedTimeout="60"
logAbandoned="true" />
2.在tomcat context.xml 中将配置引入,在
其中的<Context></Context> 中加入如下代码
<ResourceLink global="jdbc/mysql" name="jdbc/mysql" type="javax.sql.DataSource" />
注意:global,name的值 与server.xml中的name的值相同!!!!!
3.在项目的web.xml中加入资源引用: <resource-ref>
4.jndi测试方法:
public void testJNDI() throws NamingException, SQLException{
Context ctx = new InitialContext();
DataSource ds = (DataSource) ctx.lookup("java:comp/env/sqlconn");
Connection conn = ds.getConnection();
System.out.println(conn.isClosed());
}
5.
二 针对某个project配置
第一种方式:
1)在tomcat的server.xml的<host>标签内,添加:
<Context path="/slesson3" docBase="/slesson3">
<Resource
name="
jdbc/mysql"
type="javax.sql.DataSource"
driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
maxIdle="2"
maxWait="5000"
username="sa"
password="sa123"
url="jdbc:sqlserver://localhost:1433;databasename=j1201"
maxActive="4"/>
</Context>
请注意:name与
server.xml中的name的值相同!path,docBase的值对应project名!
其他配置同全局配置的1,3。
第二种方式
2)在tomcat webapps目录下你的工程里的META-INF下创建context.xml
并在里面加入<?xml version="1.0" encoding="UTF-8"?> <Context>
<Resource name="
jdbc/mysql"
auth="Container"
type="javax.sql.DataSource"
driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver" url="jdbc:sqlserver://localhost:1433;databasename=j1201"
username="sa"
password="sa123"
maxActive="20"
maxIdle="10"
maxWait="10000"/>
</Context>
,
其他配置同全局配置的1,3。
第三种方式
3)在tomcat conf\Catalina\localhost目录下建立 工程名.xml 文件,
在里面加入
<?xml version="1.0" encoding="UTF-8"?> <Context> <Resource name="
jdbc/mysql
" auth="Container" type="javax.sql.DataSource" driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver" url="jdbc:sqlserver://localhost:1433;databasename=j1201"