您的位置:首页 > 运维架构 > Tomcat

Tomcat5.0配置连接池

2008-03-15 09:53 411 查看
//1:将Oracle的class12.jar拷贝到E:/Tomcat/common/lib下。

//然后打开Server.xml文件

//1:配置局部连接池
//在<host></host>之间加入这段话即可配置好局部连接池
 <Context path="/TestPool" docBase="F:/WookRoot/NBRoot/TestPool/WebRoot" reloadable="true">
  <Resource name="jdbc/oracle" auth="Container"  type="javax.sql.DataSource"/>
     <ResourceParams name="jdbc/oracle">
     <parameter>
    <name>factory</name>
    <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
     </parameter>
     <parameter>
    <name>driverClassName</name>
    <value>oracle.jdbc.driver.OracleDriver</value>
     </parameter>
     <parameter>
    <name>url</name>
    <value>jdbc:oracle:thin:@localhost:1521:oradb</value>
     </parameter>
     <parameter>
    <name>username</name>
    <value>jn0710</value>
     </parameter>
     <parameter>
    <name>password</name>
    <value>jn0710</value>
     </parameter>
     <parameter>
    <name>maxActive</name>
    <value>20</value>
     </parameter>
     <parameter>
    <name>maxIdle</name>
    <value>5</value>
     </parameter>
     <parameter>
    <name>maxWait</name>
    <value>-1</value>
     </parameter>
  </ResourceParams>
 </Context>

//2:配置全局连接池
//先在GlobalNamingResources配置局部的连接池
<GlobalNamingResources>
 <Resource name="jdbc/oracle" auth="Container"  type="javax.sql.DataSource"/>
    <ResourceParams name="jdbc/oracle">
    <parameter>
   <name>factory</name>
   <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
    </parameter>
    <parameter>
   <name>driverClassName</name>
   <value>oracle.jdbc.driver.OracleDriver</value>
    </parameter>
    <parameter>
   <name>url</name>
   <value>jdbc:oracle:thin:@localhost:1521:oradb</value>
    </parameter>
    <parameter>
   <name>username</name>
   <value>jn0710</value>
    </parameter>
    <parameter>
   <name>password</name>
   <value>jn0710</value>
    </parameter>
    <parameter>
   <name>maxActive</name>
   <value>20</value>
    </parameter>
    <parameter>
   <name>maxIdle</name>
   <value>5</value>
    </parameter>
    <parameter>
   <name>maxWait</name>
   <value>-1</value>
    </parameter>
 </ResourceParams>
  </GlobalNamingResources>
//然后在<host></host>之间调用全局的连接池
//调用时 DataSource dataSource = (DataSource) context.lookup("java:comp/env/jdbc/callGlobal");
<Context path="/TestPool" docBase="F:/WookRoot/NBRoot/TestPool/WebRoot" reloadable="true">
 <ResourceLink name="jdbc/callGlobal" global="jdbc/oracle" type="javax.sql.DataSource"/>
</Context>

//调用连接池
 public void doGet(HttpServletRequest request, HttpServletResponse response)
   throws ServletException, IOException {
  request.setCharacterEncoding("GBK");
  response.setCharacterEncoding("GBK");
  response.setContentType("text/html");
  PrintWriter out = response.getWriter();
  try {
   Context context = new javax.naming.InitialContext();
   javax.sql.DataSource dataSource = (javax.sql.DataSource) context
     .lookup("java:comp/env/jdbc/oracle");
   Connection conn = dataSource.getConnection();
   Statement stmt = conn.createStatement();
   String sql = "Select * from classinfo";
   ResultSet rs = stmt.executeQuery(sql);
   while (rs.next()) {
    System.out.println(rs.getString("classid"));
    System.out.println(rs.getString("classname"));
   }
  } catch (Exception e) {
   e.printStackTrace();
  }
  out.flush();
  out.close();
 } 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息