`

在tomcat端配置数据池

阅读更多
在这里,把数据池配置好的方法写出来,希望能够让看到的人少走一点弯路.GOOD LUCK.


1 环境描述
  JDK 1.5
  Tomcat 6.0
  MySQL 5.0
  MySQL JDBC 5.0.5
  Commons dbcp 1.4

2 准备工作
  JDK, Tomcat, MySQL安装过程并非我们讲述的重点,略过。
  从http://dev.mysql.com/downloads/下载mysql-connector-java-3.0.15-ga.zip,将其中的mysql-connector-java-3.0.15-ga-bin.jar放到jre/lib/ext和Tomcat 5.5/common/lib里面。
  从http://jakarta.apache.org/commons/dbcp/下载commons-dbcp-1.2.1.zip,将其中的commons-dbcp-1.2.1.jar放到jre/lib/ext和Tomcat 5.5/common/lib里面。

3 配置Tomcat
   
    配置{tomcat-home}/conf/server.xml文件,在 <GlobalNamingResources> </GlobalNamingResources>之间加入:
    <Resource name="JDBC for MySQL"
              type="javax.sql.DataSource"
              driverClassName="com.mysql.jdbc.Driver"
              password="123456"
              maxIdle="2" maxWait="5000"
              username="root" url="jdbc:mysql://localhost/test" maxActive="4"/>
   解释下:
   1.数据池名为:JDBC for MySQL; 这个名字会在等下介绍的web.xml文件里使用.
   2.username="root",我的mysql用户名使用root,密码password="123456".
   3:url="jdbc:myslq://localhost/test",即使用的数据库为test(刚刚已经创建了);
   4:maxIdle,最大空闲数,数据库连接的最大空闲时间。超过空闲时间,数据库连接将被标记为不可用,然后被释放。设为0表示无限制。
   5:MaxActive,连接池的最大数据库连接数。设为0表示无限制。
   6:maxWait ,最大建立连接等待时间。如果超过此时间将接到异常。设为-1表示无限制。

    *maxActive:最大连接数据库连接数,设 0 为没有限制
    *maxIdle:最大等待连接中的数量,设 0 为没有限制
    *maxWait: 最大等待毫秒数, 单位为 ms, 超过时间会出错误信息

    一般把maxActive设置成可能的并发量就行了maxActive、maxIdle和maxWait参数:
    maxActive是最大激活连接数,这里取值为4,表示同时最多有4个数据库连接。maxIdle是最大的空闲连接数,这里取值为2,表示即使没有数据库连接时依然可以保持2空闲的连接,而不被清除,随时处于待命状态。MaxWait是最大等待秒钟数,这里取值-1,表示无限等待,直到超时为止,也可取值5000,表示5秒后超时。

4 配置web.xml文件.在你的应用(test)里,创建文件夹WEB-INF,在这个文件夹里创建文件web.xml.撰写 
  web.xml:如下:
  <?xml version="1.0" encoding="UTF-8"?>
  <web-app >
    <resource-ref>
        <description>MySQL Connection Pool</description>
        <res-ref-name>JDBC for MySQL</res-ref-name>
        <res-type>javax.sql.DataSource</res-type>
        <res-auth>Container</res-auth>
    </resource-ref>
  </web-app>
这里用到了刚刚定义的数据他名:JDBC for MySQL了;

5 配置context.xml文件,在你的应用(test)里,创建文件夹META-INF,在这个文件夹里创建文件context.xml.撰写context.xml:如下:

<Context>
<ResourceLink name="JDBC for MySQL" global="JDBC for MySQL" type="javax.sql.DataSourcer"/>
</Context>

6 测试
  重启Tomcat服务器,写一个index.jsp:
   <%@ page import="java.sql.*"%>
   <%@ page import="javax.sql.*"%>
   <%@ page import="javax.naming.*"%>
   <%@ page session="false" %>
   <%@ page language="java" contentType="text/html;charset=gb2312" %>
   <html>
   <head>
   <meta http-equiv="Content-Type" content="text/html; charset=gb2312" pageEncoding="GB2312">
   <title>Test of MySQL connection pool</title>
   </head>
   <body>
   <%
   out.print("Start<br/>");
   response.setCharacterEncoding("gb2312");
   response.setContentType("text/html;charset=gb2312");
   try{
   String jndi_name="java:comp/env/JDBC for MySQL";
   String select_user_sql="select * from student ";

   Context ctx = new InitialContext();
   if(ctx == null){
      out.println("No context");
   }
   out.println("here<br>");
 
   javax.sql.DataSource ds = (javax.sql.DataSource)ctx.lookup(jndi_name);
   if(ds !=null){
     out.println("can  fine thd "+jndi_name+"<br>");
   }
   Connection conn = ds.getConnection();
   out.println("MySQL connection pool runs perfectly!\n<br>");
  
   Statement stmt = conn.createStatement();
   ResultSet rt = stmt.executeQuery(select_user_sql);
   while(rt.next()){
       out.println(rt.getString("name")+"<br>");
   }
   conn.close();
  }
   catch(Exception ex){
       out.print(ex.getMessage());
       ex.printStackTrace();
}
  %>
  </body>
  </html>

在浏览器里查看,如果你看到可以看到,"MySQL connection pool runs perfectly!",恭喜你,你已经成功了...

 友情提示:记得用完一定要close哦,不然一会儿资源就耗尽了。这一点可以通过以root身份登录MySQL,运行show processlist;命令来查看当前所有连接。
0
0
分享到:
评论

相关推荐

    tomcat6.0 配置jndi

    在Tomcat6.0中配置JNDI,主要是为了实现应用中的数据源管理,使得多个应用可以共享一个数据库连接池,提高资源利用率和系统性能。 **一、JNDI的基本概念** JNDI提供了一个统一的接口,让开发者可以查找和绑定各种...

    jsp配置+sql配置+tomcat配置

    JSP文件在服务器端被编译成Servlet,并由Servlet容器(如Tomcat)执行。在配置JSP时,重点在于确保JSP引擎能够正确解析并执行JSP页面。这通常涉及到以下步骤: 1. **JSP Engine Configuration**: - 设置JSP引擎的...

    tomcat GC 优化配置

    在服务器端应用中,Java虚拟机(JVM)的性能优化至关重要,特别是对于像Tomcat这样的应用服务器而言,其性能直接影响到系统的响应速度和资源利用率。本文将详细介绍如何通过调整Tomcat启动参数来进行JVM的垃圾收集...

    java缓存代码,tomcat JVM配置

    在`tomcat连接池设定.docx`文档中,可能包含以下几方面的配置: 1. **堆内存分配**:通过`-Xms`和`-Xmx`参数设定初始和最大堆内存,确保足够空间运行应用,但也不能过大以免占用过多系统资源。 2. **新生代和老年...

    tomcat连接池应用例子

    标题“Tomcat连接池应用例子”指的是在Java Web开发中,使用Tomcat内置的数据源(连接池)来管理与MySQL数据库的连接。Tomcat作为流行的Java应用服务器,提供了高效的连接池服务,帮助开发者优化数据库操作的性能和...

    tomcat 安装、配置及调优

    - **数据源配置:** 在`&lt;Resource&gt;`标签内配置JDBC连接池的信息,例如`driverClassName`、`url`、`username`和`password`等。 **3. 修改web.xml文件** - **过滤器、监听器配置:** 添加自定义过滤器或监听器,实现...

    tomcat配置jndi

    总结,配置Tomcat中的JNDI主要是为了方便和高效地管理数据库连接,通过在服务器端定义数据源,并在应用程序中通过JNDI查找和使用,可以极大地简化开发工作。理解并掌握这一过程对于任何使用Tomcat部署Java Web应用的...

    Tomcat的安装与配置

    【Tomcat的安装与配置】 Tomcat是一款广泛使用的开源应用服务器,特别适合于运行Servlet和JSP。作为Apache软件基金会的Jakarta项目的核心组件,Tomcat由Apache、Sun(现Oracle)和其他贡献者共同开发,提供了对最新...

    JSP+Tomcat+MySQL配置资料.rar

    3. **设置Servlet和JavaBean**:通过`&lt;servlet&gt;`和`&lt;servlet-mapping&gt;`标签在web.xml文件中配置Servlet,JavaBean则用于封装数据和业务逻辑。 接下来是MySQL数据库的连接。MySQL以其高速度、稳定性以及易于管理而被...

    Tomcat7集群扩展session集中管理,redis配置

    当我们谈论"Tomcat7集群扩展session集中管理,redis配置"时,我们实际上是在讨论如何在多个Tomcat服务器实例之间共享用户session,以确保用户在集群中的任意节点间切换时能够保持会话状态。这里采用的技术是将...

    JSP、Java、Tomcat配置说明书

    以上只是JSP、Java、Tomcat配置的基本知识框架,实际开发中还需要掌握更多高级特性,如JSTL、EL表达式、MVC框架(如Spring MVC)、数据库连接池等。通过深入学习和实践,你可以构建出高效、稳定的Web应用。

    tomcat 实时监控工具

    4. **数据源监控**:提供数据源的实时监控,包括连接池的状态、活动连接数、空闲连接数、最大连接数等,有助于优化数据库连接管理。 5. **线程分析**:展示当前服务器上的线程信息,包括线程ID、状态、堆栈跟踪等,...

    基于apache的tomcat负载均衡和集群配置_mod jk

    在Tomcat端,需要配置server.xml,添加mod_jk的AJP连接器。 **五、实例应用** 在提供的压缩包中,可能包含了一个具体的mod_jk配置示例,包括Apache和Tomcat的配置文件。通过分析这些文件,我们可以更深入地了解如何...

    Nginx+Redis+Tomcat集群所需Jar包

    当用户在浏览器端设置session键值时,这些数据会被持久化到Redis中,之后无论用户请求哪个Tomcat实例,都能从Redis中获取到相同的session信息,保证了用户体验的一致性。这样的架构对于大型网站和分布式应用来说,既...

    tomcat6.0.20免安装版

    5. **性能优化**:Tomcat提供了多线程模型和连接池来处理并发请求,可以通过调整`Connector`的`maxThreads`和`minSpareThreads`等参数来优化性能。同时,使用NIO(非阻塞I/O)连接器可以在高并发场景下提高效率。 6...

    apache-tomcat-7.0.56

    - **JNDI(Java Naming and Directory Interface)**:提供服务发现和数据存储功能,常用于配置数据库连接池。 - **连接器选择**:支持多种HTTP连接器,如NIO、APR(Apache Portable Runtime),优化I/O性能。 - **...

    Tomcat免安装版下载

    1. 简便快捷:免安装版的Tomcat只需要将下载的zip或tar.gz文件解压到任意目录,配置好相关的环境变量,即可启动服务,大大简化了部署流程。 2. 自由移动:由于无需在系统注册表中留下信息,免安装版可以方便地在...

    tomcat7.0.53和帮助文档

    8. **JNDI与连接池**:理解Tomcat如何管理数据库连接,以及配置数据源。 9. **性能调优**:包括调整线程池大小、内存分配等优化策略。 10. **故障排除**:常见错误的解决方案,以及如何定位和解决问题。 综合以上...

    Tomcat集群Session的Redis共享存储

    3. **修改Context配置**:在Tomcat的`context.xml`或每个Web应用的`WEB-INF/context.xml`中,配置`Manager`元素来使用`org.apache.catalina.session.PersistentManager`或其他支持Redis的Session Manager实现,例如`...

Global site tag (gtag.js) - Google Analytics