[原创]Tomcat+MySql数据库连接池配置经验实例

来源:互联网 发布:手机丢了淘宝怎么冻结 编辑:程序博客网 时间:2024/05/29 03:32
导读:
  这几日按照网上现有的教程结合Mysql和Tomcat的配置数据库连接池。费了很大劲终于成功。连接池的配置(Tomcat+MySql)有两种方式:代码配置与可视化配置。
  其中,可视化配置方便快捷,下面就根据我配置的经验写下配置的过程。
  版本:MySQL-4.19、Tomcat--5.5.9。
  在进行Tomcat连接池配置前,先解压缩mysql-connector-java-xxx.zip,将其中的mysql-connector-java-3.x.x-xxx.jar取出,置于<%TOMCAT_HOME%>/common/lib中,没有?去http://www.mysql.com/products下载吧。
  1.如果Tomcat没有安装Admin,先安装Admin。安装后以admin权限登陆(用户管理在/conf/tomcat-user.xml下,如果没有admin权限的用户了,新建一个用户,或者将已有的tomcat或者both等设置roles="admin");
  2.登陆以后,在左边的选择栏里可以看到如下功能:
  --Tomcat Server
  --+Service (Catalina)
  --Resources
  --+Data Sources
  --+Mail Sessions
  --+Environment Entries
  --+User Databases
  --User Definition
  --+Users
  --+Groups
  --+Roles
  点Data Sources-->Data Source Actions 下拉选择Create New Data Source.填写下面几个选项,其中yxz是我建立的mySql实例,根据情况修改。
  JNDI Name: mySql/yxz
  Data Source URL: jdbc:mysql://localhost:3306/yxz
  JDBC Driver Class: com.mysql.jdbc.Driver
  User Name: root
  Password: root
  Max. Active Connections: 20 ---最大活跃连接数
  Max. Idle Connections: 10 ---最大闲置连接数
  Max. Wait for Connection: 5000
  Validation Query:
  完成后,按save,再按Commit Changes,OK!
  3.此时,数据库连接池可视化配置完成。但如果要在相应的应用下使用该连接池,仍旧需要另外的工作,就是配置相应的content.xml。在yourapp/META-INF/下建立content.xml文件,将刚才的配置拷贝进去,如下:
  
   factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/yxz"
username="root" password="root"
maxActive="20" maxIdle="10" maxWait="-1" />  factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory"
  driverClassName="com.mysql.jdbc.Driver"
  url="jdbc:mysql://localhost:3306/yxz"
  username="root" password="root"
  maxActive="20" maxIdle="10" maxWait="-1" />
  

  保存,OK。
  4. 在mySql里的yxz下建立table:user 进行测试。user表含有字段ID,Name。
  5.测试程序,在yourapp下建立index.jsp,拷贝下面代码:
  <%@page contentType="text/html;charset=gb2312"%>
  <%@page import="java.sql.*"%>
  <%@page import="javax.sql.DataSource"%>
  <%@page import="javax.naming.*"%>
  
  
  <%

try{

Context initCtx=new InitialContext();

DataSource db = (DataSource)initCtx.lookup("java:comp/env/jdbc/yxz");

Connection conn = db.getConnection();

Statement stmt = conn.createStatement();

ResultSet rs = stmt.executeQuery("SELECT * FROM user");

out.println("User-list"+"<  try{

  Context initCtx=new InitialContext();

  DataSource db = (DataSource)initCtx.lookup("java:comp/env/jdbc/yxz");

  Connection conn = db.getConnection();

  Statement stmt = conn.createStatement();

  ResultSet rs = stmt.executeQuery("SELECT * FROM user");

  out.println("User-list"+"
");

  while(rs.next()){

  out.print(rs.getString(1)+" ");

  out.print(rs.getString(2)+"
");

  }

  

  if(null!=rs){

  rs.close();

  }

  if(null!=stmt){

  stmt.close();

  }

  if(null!=conn){

  conn.close();

  }

  

  }catch(Exception e)

  { out.print(e);}

  %>
  
  
  6.启动Tomcat,在浏览器内敲入http://localhost:8080/yourapp/index.jsp,OK,如果看到查询的user,恭喜了!
  
  
  http://spaces.msn.com/members/ships
  

本文转自
http://www.matrix.org.cn/thread.shtml?topicId=27529&forumId=27
原创粉丝点击