如题,如何配置数据库连接池,小弟快要疯了。
解决方案 »
- 添加不了数据?求助!
- oraacle创建索引 怎么创建聚集索引,非聚集索引,什么时候又该使用??
- spring+struts+hibernate 问题
- 哪位帮个忙,把下列代码防到out.println()里面
- JSP报错,不知道提示是什么意义
- 推荐几个开源的jsp 的系统吧 大家讨论下
- 奇怪的404错误。
- 高分求解:JSP关于服务器获取用户IP的问题。
- servlet里的servletContext对应着jsp中的application,那么jsp中其他的scope,如page,request,session,和servlet的对应又如何呢?
- 菜鸟求教:resin+IIS不能运行SERVLET吗?
- httpclient4 的奇怪问题
- [求助:fckeditor如何更改上传图片的路径??]
<!--声明连接池-->
<Resource name="jdbc/mysql" auth="Container" type="javax.sql.DataSource"/>
<!-- 对连接池的参数进行设置 -->
<ResourceParams name="jdbc/mysql">
<parameter>
<name>factory</name>
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</parameter>
<parameter>
<name>maxWait</name>
<value>5000</value>
</parameter>
<parameter>
<name>maxActive</name>
<value>20</value>
</parameter>
<parameter>
<name>username</name>
<value>shopadm</value>
</parameter>
<parameter>
<name>password</name>
<value>123</value>
</parameter>
<parameter>
<name>url</name>
<value>jdbc:mysql://localhost/shopdb?useUnicode=true&charact-erEncoding=gb2312</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>com.mysql.jdbc.Driver</value>
</parameter>
<parameter>
<name>maxIdle</name>
<value>10</value>
</parameter>
</ResourceParams>
2. 在CATALINA_HOME/conf/web.xml的</web-app>前添加如下信息:
<resource-ref>
<description>DB Connection</description>
<res-ref-name>jdbc/mysql</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
其中<res-ref-name>中的参数名必须和server.xml中声明的连接名一样。
3. 在CATALINA_HOME/conf/catalina/localhost目录下找到需要进行数据库连接的当前程序的配置信息,比如这里是shopping.xml,在这个文件中添加如下信息:
<Context …>
…
<ResourceLink name=”jdbc/mysql” global=”jdbc/mysql” type=”javax.sql.DataSource”/>
…
</Context>
<Context path="/appName" docBase="appName" auth="Container">
<Resource name="jdbc/MySQLDS" scope="Shareable"
type="javax.sql.DataSource"
url="jdbc:mysql://localhost:3306/test?useUnicode=true&charact-erEncoding=GBK"
driverClassName="com.mysql.jdbc.Driver"
username="root" password="111111"
maxWait="3000" maxIdle="100" maxActive="10" />
</Context>(或者在 %appName%\META-INF 下建立 context.xml,内容为上面的代码。) 3、修改 web.xml,在 <web-app> 节点下添加: <resource-ref>
<description>Oracle Datasource example</description>
<res-ref-name>MySQLDS</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref> (这一步不添加页没问题。)4、在代码中获取数据库连接: import java.sql.Connection;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.sql.DataSource;
public class DBUtil {
public Connection getConnection() throws Exception {
Context context = new InitialContext();
// 获取数据源
DataSource ds = (DataSource) context.lookup("java:comp/env/jdbc/MySQLDS");
// 获取数据库连接
Connection conn = ds.getConnection();
if (conn != null && !conn.isClosed()) {
return conn;
} else {
return null;
}
}
}