posts - 2, comments - 27, trackbacks - 0, articles - 60
  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

Tomcat连接池配置

Posted on 2009-01-15 12:17 ZhouFeng 阅读(409) 评论(0)  编辑  收藏 所属分类: 转载Web服务器
有两种配置方法:
第一种:仅为一个具体的工程所使用而配置的数据源
第一步:打开%Tomcat_Home%\conf\server.xml,在</Context>和</host>前添加描述
<Context path="/lib" docBase ="lib" debug="0" reloadable ="true" crossContext="true">
    <Resource name = "jdbc/mydatasource" auth="Container" type="javax.sql.DataSource"/>
    <ResourceParams name ="jdbc/libds">
    <parameter>
        <name>factory</name>
        <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
    </parameter>
    <parameter>      
        <name>driverClassName</name>      
        <value>com.mysql.jdbc.Driver</value>      
    </parameter>  
    <parameter>  
        <name>url</name>      
        <value>jdbc:mysql://localhost/lib</value>  
    </parameter>      
    <parameter>  
        <name>username</name>      
        <value>root</value>      
    </parameter>            
    <parameter>            
        <name>password</name>          
        <value>password</value>  
    </parameter>          
    <parameter>          
        <name>maxActive</name>      
        <value>20</value>          
    </parameter>
    <parameter>      
        <name>maxIdle</name>      
        <value>10</value>          
    </parameter>      
    <parameter>  
        <name>maxWait</name>      
        <value>-1</value>      
    </parameter>
    </ResourceParams>
</Context>
注释: “ch13”是工程名,JNDI name 是 “jdbc/libds”
           用户名和密码都是"sa"
第二步,将ms sqlserver要用到的三个驱动包复制到%tomcat_home%\common\lib目录下。
第三步,重新启动tomcat。
第四步,可以在工程ch13里写个测试j页面test.jsp:
<%@pageimport="java.sql.*"%>
<%@pageimport="javax.sql.*"%>
<%@pageimport="javax.naming.*"%>
<%
  DataSource ds=null;
  try{
  InitialContext ctx=new InitialContext();
  ds=(DataSource)ctx.lookup("java:comp/env/jdbc/libds");
  Connection  conn=ds.getConnection();
  Statement stmt=conn.createStatement();
  String strSql="select *  from  authors";
  ResultSet rs=stmt.executeQuery(strSql);
  while(rs.next()){
     out.println(rs.getString(1)+"<br>");              
    }
  }
  catch(Exception ex){
      out.println("出错啦!!!");
      ex.printStackTrace();
  }
%>
如果能正常显示多行数据则测试成功,否则失败。


第二种是针对Tomcat中所有的工程进行的配置,可以使用Tomcat图形界面进行设置
 第一步,通过IE浏览器进入Tomcat Administration ,用户名和密码就是安装tomcat时设置的密码.,然后选择create  New  DataSource.
输入如下:
JNDI name :jdbc/allds
Data Source URL:jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=pubs
JDBC Driver Class:com.microsoft.jdbc.sqlserver.SQLServerDriver
User Name:sa
password :sa
可根据实际修改密码
第二步 :在%tomcat_home%/conf/Catalina\localhost目录下找到要使用此数据源的工程同名的xml文件.
在Context一节中加入以下代码:
<ResourceLink name="jdbc/allds" global="jdbc/allds" type="javax.sql.DataSourcer"/>
第三步,在%tomcat_home%'/common/lib中添加要用到的sqlserver的驱动包,重新启动tomcat.
第四步,测试.在刚才要使用数据源的工程中添加test.jsp,代码如下:
<%@pageimport="java.sql.*"%>
<%@pageimport="javax.sql.*"%>
<%@pageimport="javax.naming.*"%>
<%
  DataSource ds=null;
  try{
  InitialContext ctx=new InitialContext();
  ds=(DataSource)ctx.lookup("java:comp/env/jdbc/allds");
  Connection  conn=ds.getConnection();
  Statement stmt=conn.createStatement();
  String strSql="select *  from  authors";
  ResultSet rs=stmt.executeQuery(strSql);
  while(rs.next()){
     out.println(rs.getString(2)+"<br>");              
    }
  }
  catch(Exception ex){
      out.println("出错啦!!!");
      ex.printStackTrace();
  }
%>

只有注册用户登录后才能发表评论。


网站导航: