Tomcat数据库连接池配置

       项目——想改变TOMCAT数据库连接池的参数,主要参考文章:

http://www.blogjava.net/gm_jing/articles/308828.html

http://www.cnblogs.com/dennisit/archive/2013/04/04/2999657.html

     对此我的做法是:

    一、在%Tomcat_Home%\webapps\yourApp\META-INF 下创建并编写context.xml

<Context reloadable="true">  
    <WatchedResource>WEB-INF/web.xml</WatchedResource>  
    <Resource name="jdbc/mysqlds" auth="Container" type="javax.sql.DataSource"    
    maxActive="100"    
    maxIdle="30"  
    maxWait="10000"  
    username="root"    
    password="123456"  
    driverClassName="com.mysql.jdbc.Driver"  
    url="jdbc:mysql://localhost:3307/weihedatabase"/>  
</Context>  

其中相关参数:

 配置mysql数据库的连接池,
需要做的额外步骤是将mysql的Java驱动类放到tomcat的lib目录下
maxIdle 连接池中最多可空闲maxIdle个连接
minIdle 连接池中最少空闲maxIdle个连接
initialSize 初始化连接数目
maxWait 连接池中连接用完时,新的请求等待时间,毫秒
username 数据库用户名
password 数据库密码

    二、将DRIVER的驱动赋值到%Tomcat_Home%\lib 下,具体文件mysqldriver.jar。

    三、编写测试用例test.jsp

<%@ page language="java"  pageEncoding="UTF-8" contentType="text/html; charset=UTF-8"%>     
<%@ page import="java.sql.*" %>     
<%@ page import="javax.naming.*" %>     
<%@ page import="javax.sql.DataSource" %>
<html>     
<head>     
<title>Tomcat6.0 JNDI!</title>    
</head>    
  <body>      
   Tomcat连接池测试,获取数据源 <br>     
    <%     
        try {      
            //初始化查找命名空间
            Context ctx = new InitialContext();  
            //参数java:/comp/env为固定路径   
            Context envContext = (Context)ctx.lookup("java:/comp/env");
            //参数jdbc/mysqlds为数据源和JNDI绑定的名字
            DataSource ds = (DataSource)envContext.lookup("jdbc/mysqlds");
            Connection conn = ds.getConnection();     
            conn.close();     
            out.println("<span style='color:red;'>JNDI测试成功<span>");     
        } catch (NamingException e) {     
            e.printStackTrace();     
        } catch (SQLException e) {     
            e.printStackTrace();     
        }     
    %>     
  </body>     
</html>

       实验截图

    四、FURTHER MORE:上诉测试并没真正与数据库结合。下面的链接讲诉与数据库结合的测试:
http://shuyangyang.blog.51cto.com/1685768/1151537

    以及在调用形式上的改变:

     ——NOW

 

Context context = new InitialContext(); 
DataSource ds = (DataSource)context.lookup("java:/comp/env/jdbc/mysqlds"); 
Connection conn = ds.getConnection(); 

    ——BEFORE 则可以将建立connection的方式以上述形式取代传统方式:

String driver = "xx"; 
String url = "xx"; 
String username = "xx"; 
String password = "xx"; 
Class.forName(driver); 
Connection conn = DriverManager.getConnection(url, username, password); 
   后记: 连接数据库后果然出错了,google了一下,修改了hibernate.cfg.xml文件,删除了
<property name="connection.url">
			jdbc:mysql://localhost:3307/weihedatabase
		</property>
		<property name="connection.username">root</property>
		<property name="connection.password">123456</property>
		<property name="connection.driver_class">
			com.mysql.jdbc.Driver
</property>

等信息。具体解决链接:http://www.coderanch.com/t/218686/ORM/databases/Exception-transaction

 


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值