Tomcat中数据源(DataSource)连接池的配置使用
大概意思是: 使用数据源之后也同时使用了tomcat自带的连接池(DBCP):容器的连接池设置了一些准备公用的connection,程序用时拿走用,用完再送回池。这些连接由数据源统一管理维护,避免了每次操作数据库时反复的反射、打开、验证、连接、关闭等过程。 不用像传统方法http://blog.csdn.net/ruantao1989/article/details/80120
·
大概意思是:
使用数据源之后也同时使用了tomcat自带的连接池(DBCP):容器的连接池设置了一些准备公用的connection,程序用时拿走用,用完再送回池。这些连接由数据源统一管理维护,避免了每次操作数据库时反复的反射、打开、验证、连接、关闭等过程。
不用像传统方法http://blog.csdn.net/ruantao1989/article/details/8012005那样,每次都要在新建连接和用完销毁上消耗资源。
这样,就提高了并发操作数据库时的性能。
一:tomcat\conf\server.xml
<!-- name:虚拟目录下web.xml配置时对应的名称 -->
<!-- auth:Tomcat中固定使用Container(容器) -->
<!-- type:扩展包 -->
<!-- maxActive:提供的最大连接数 -->
<!-- maxidle:提供的最小连接数 -->
<!-- maxWait:等待时间10秒 -->
<!-- driverClassName:oracle驱动 -->
<!-- url:DBURL -->
在虚拟目录的配置中加入<Resource>
<Context path="/pathDemo" docBase="E:\Java\tomcat_pathDemo" >
<Resource name="jdbc/rtDBS" auth="Container" type="javax.sql.DataSource" maxActive="100" maxIdle="30" maxWait="10000" username="scott" password="890307" driverClassName="oracle.jdbc.driver.OracleDriver" url="jdbc:oracle:thin:@localhost:1521:ORCL" />
</Context>
二:虚拟目录中的web.xml
增加对应的数据源配置
<resource-ref><!-- 数据源配置 -->
<res-ref-name>jdbc/rtDBS</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
三:测试jsp
<%@page contentType="text/html" pageEncoding="GBK"%>
<%@page import="java.sql.*"%>
<%@page import="javax.sql.*"%>
<%@page import="javax.naming.*"%>
<body>
<%
String DSNAME = "java:comp/env/jdbc/rtDBS";//名称之前必须添加java:comp/env/
Context ctx = new InitialContext();
DataSource ds = (DataSource)ctx.lookup(DSNAME);
Connection conn = ds.getConnection();
%>
<%=conn%>
<%
conn.close();
%>
</body>
名称之前必须添加java:comp/env/,死规矩。不然就会出一个NameNotFound
更多推荐
已为社区贡献1条内容
所有评论(0)