1.在%TOMCAT_HOME%\conf\context.xml下的节点下新建如下
<Resource name="jdbc/demolov"
auth="Container"
type="javax.sql.DataSource"
maxActive="100"
maxldle="30"
maxWait="10000"
username="root"
password="997103"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/lov" />
auth=”Container” (容器负责资源连接)
type=”javax.sql.DataSource” (数据源对应类型)
maxldle=”30” ( 维持的最小连接数)
2.在项目的web.xml中新建如下节点内容
<resource-ref>
<description>DB Connection</description>
<res-ref-name>jdbc/demolov</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
3.测试是否连接成功
<%
String DSNAME = "java:comp/env/jdbc/demolov";
Context ctx = new InitialContext();
DataSource ds=(DataSource)ctx.lookup(DSNAME);
Connection conn = ds.getConnection();
%>
<%=conn%>
<%
conn.close();
%>
java:comp/env环境属性对于一些高级服务器不用设置(服务器本身设好了)
之后数据库连接就可以如下写(和传统连接差不多)
public class datasourceConnection {
private static final String DSNAME = "java:comp/env/jdbc/demolov";
private Connection conn = null;
public datasourceConnection()throws Exception{
try{
Context ctx= new InitialContext();
DataSource ds =(DataSource)ctx.lookup(DSNAME);
this.conn = ds.getConnection();
}catch (Exception e){
e.printStackTrace();
}
}
public Connection getConn() {
return this.conn;
}
public void close()throws Exception{
if(this.conn!=null){
try {
this.conn.close();
}catch (Exception e){
throw e;
}
}
}
}