`
diaolanshan
  • 浏览: 173710 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

Tomcat配置数据源的几种方式

    博客分类:
  • JAVA
阅读更多

1.在工程目录的META-INF 下创建context.xml文件,并设置一下内容:

<?xml version="1.0" encoding="UTF-8"?>
<Context debug= "99" reloadable="true" crossContext="true" verbosity="debug">  
    <Resource name="jdbc/mysql"
     auth="Container" type="javax.sql.DataSource"
      password="eric"
      driverClassName="com.mysql.jdbc.Driver"
      maxIdle="2" maxWait="5000"
      username="root"
      url="jdbc:mysql://localhost:3306/test?autoReconnect=true"
      maxActive="4"/>  
</Context>

 

测试代码:

DataSource ds = null;
   if (ds == null) {
   try {
    Context initContext = new InitialContext();
    if (initContext == null)
     System.out.println("............");
    Context envContext = (Context) initContext
      .lookup("java:comp/env");
    ds = (DataSource) envContext.lookup("jdbc/mysql");
    System.out.println(ds);
   } catch (NamingException e) {
    e.printStackTrace();
   }
  } 

2.在tomcat/config/server.xml中添加一下代码(在host)之间

  <Context path="/jndi" docBase="D:\workspace\jndi\WebRoot" debug="0" reloadable="true" crossContext="true"/>   
<Logger className="org.apache.catalina.logger.FileLogger" prefix="localhost_quality_log." suffix=".txt" timestamp="true"/>   
  <Resource   
    name="jdbc/test"   
    type="javax.sql.DataSource"   
    password="eric"        
    driverClassName="com.mysql.jdbc.Driver"  
    maxIdle="2"               
    maxWait="5000"    
    username="root"
    url="mysql://localhost:3306/test"   
    maxActive="4"  />         
 
   <ResourceParams name="jdbc/test">   
     
     <parameter>   
       <name>removeAbandoned</name>   
       <!-- Abandoned DB connections are removed and recycled -->   
       <value>true</value>   
     </parameter>   
     <parameter>   
        <name>removeAbandonedTimeout</name>   
        <!-- Use the removeAbandonedTimeout parameter to set the number of seconds a DB connection has been idle before it is considered abandoned.  -->   
        <value>60</value>   
     </parameter>   
     <parameter>   
       <name>logAbandoned</name>   
       <!-- Log a stack trace of the code which abandoned -->   
       <value>false</value>   
     </parameter>   
 
     <parameter>   
       <name>factory</name>   
       <!--DBCP Basic Datasource Factory -->   
       <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>   
     </parameter>   
 
   </ResourceParams>
并在工程目录的web.xml中添加一下代码

  <resource-ref>
     <res-ref-name>jdbc/test</res-ref-name>
     <res-type>javax.sql.DataSource</res-type>
     <res-auth>Container</res-auth>
  </resource-ref>

3.在\conf\Catalina\localhost目录下创建跟工程同名的xml文件,并在web.xml中添加一下代码

  <resource-ref>
     <res-ref-name>jdbc/test</res-ref-name>
     <res-type>javax.sql.DataSource</res-type>
     <res-auth>Container</res-auth>
  </resource-ref>

 另外,看到网上有如下关系tomcat连接池的说法:

1.用户释放连接后,连接被回收到连接池,这个连接仍然是可用的。
如果一个连接等待了一段时间(连接池的最大空闲时间,可设置)仍然没有
人来请求连接,那么它将被彻底释放。当然,如果连接池中的连接个数已经
等于连接池的最小连接数(可设置),那么它不会被释放。

2.以tomcat连接池为例,tomcat启动后,假设我设置的最小连接数为5,那么这时候(此Tomcat下的程序没有启动)Tomcat是否和后台地数据库建立5条连线(session)呢?答案:不是.

分享到:
评论

相关推荐

    tomcat配置JNDI数据源

    tomcat上配置的JNDI数据源的几种方式

    Tomcat下配置JNDI数据库连接池并使用

     这一步有几种配置方式,比如直接修改Tomcat/conf/server.xml文件,但这样修改是全局的,个人不太喜欢这样的方式,本着的原则是能不全局不全局,以保证项目能够尽量少的影响到其他项目,尽量少的进行修改。...

    jsp课程设计(有几个)

    数据源名按各系统所使用的名称配置,具体名称如下 ① 投票系统的数据源名:vote ② 通讯簿管理系统的数据源名:user ③ 新闻发布系统的数据源名:news ④ 软件下载中心的数据源名:download ⑤ 电子书店系统的数据源...

    管理远程win系统上的tomcat服务.zip

    管理系统,作为一种高效的企业运营管理工具,旨在通过集成化、系统化的手段,对组织内部的各类资源进行规划、协调、控制和优化,以实现企业战略目标,提升运营效率,增强核心竞争力。以下是对管理系统的详细介绍: ...

    Java面试宝典2020修订版V1.0.1.doc

    34、Java创建对象有几种方式 22 35、写出验证Email的正则表达式 22 39、说出十种常见的异常 22 40什么是检查性异常和非检查性异常? 23 41、Java的异常处理机制是什么? 23 42、一个静态方法,里面可不可以用this和...

    Java网上书店管理系统(基于MVC模式编写:前端jsp页面、数据库MySQL、服务器Tomcat).zip

    MySQL遵循GPL开源协议,这意味着任何人都可以免费下载、使用和修改其源代码。这种开放性促进了广泛的社区支持和第三方插件、工具的发展。此外,MySQL支持多种操作系统,包括Windows、Linux、macOS、Solaris等,确保...

    应用分析监控平台 闪电狗.zip

    闪电狗监控(flash-dog)起源于杭州斯凯网络科技有限公司一个真实项目,主要优点是轻巧快捷,非侵入式,不影响业务代码,只需加入几个jar包和修改log4j配置文件,就能监控任意指标,如CPU,内存、线程,游戏收入,...

    基于ZigBee+ESP32+MQTT+EMQX+TomCat+Servlet接口+MySQL+安卓app的物联网课设.zip

    MySQL遵循GPL开源协议,这意味着任何人都可以免费下载、使用和修改其源代码。这种开放性促进了广泛的社区支持和第三方插件、工具的发展。此外,MySQL支持多种操作系统,包括Windows、Linux、macOS、Solaris等,确保...

    jsp servlet 入门学习资料-新手一看就懂

    1.3 JSP开发Web的几种主要方式 1.3.1 直接使用JSP 1.3.2 JSP+JavaBeans 1.3.3 JSP+JavaBeans+Servlet 1.3.4 J2EE开发模型 1.4 本书用到的软件及获取 第2章 预备知识 2.1 Java程序设计基础 2.1.1 Java语言...

    jsp从入门到高级编程

    1.3 JSP开发Web的几种主要方式 1.3.1 直接使用JSP 1.3.2 JSP+JavaBeans 1.3.3 JSP+JavaBeans+Servlet 1.3.4 J2EE开发模型 1.4 本书用到的软件及获取 第2章 预备知识 2.1 Java程序设计基础 2.1.1 Java语言...

    JSP高级教程

    1.3 JSP开发Web的几种主要方式 1.3.1 直接使用JSP 1.3.2 JSP+JavaBeans 1.3.3 JSP+JavaBeans+Servlet 1.3.4 J2EE开发模型 1.4 本书用到的软件及获取 第2章 预备知识 2.1 Java程序设计基础 2.1.1 Java语言...

    JSP高级编程

    1.3 JSP开发Web的几种主要方式 1.3.1 直接使用JSP 1.3.2 JSP+JavaBeans 1.3.3 JSP+JavaBeans+Servlet 1.3.4 J2EE开发模型 1.4 本书用到的软件及获取 第2章 预备知识 2.1 Java程序设计基础 2.1.1 ...

    JSF1.2+EJB3.0实现的一个项目实例

    |--DBScript |--employee.sql 数据库脚本及测试数据 |--mysql-connector-java-5.1.5-bin.jar MySql的驱动程序包 |--mysql-ds.xml 在JBoss中配置MySql数据源的配置文件 b.web端 jsfejb3...

    JAVA上百实例源码以及开源项目源代码

     通过网络或磁盘等方式,把公钥编码传送给李四,李四接收到张三编码后的公钥,将其解码,李四用张三的公钥加密信息,并发送给李四,张三用自己的私钥解密从李四处收到的信息…… Java利用DES私钥对称加密代码实例 ...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part2

    8.4 jdbc数据源和连接池 299 8.5 mysql对中文的处理 302 8.6 小结 302 第9章 会话跟踪 303 9.1 用于会话跟踪的技术 303 9.1.1 ssl会话 304 9.1.2 cookies 304 9.1.3 url重写 305 9.2 java servlet api的会话...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part5

    8.4 jdbc数据源和连接池 299 8.5 mysql对中文的处理 302 8.6 小结 302 第9章 会话跟踪 303 9.1 用于会话跟踪的技术 303 9.1.1 ssl会话 304 9.1.2 cookies 304 9.1.3 url重写 305 9.2 java servlet api的会话...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part4

    8.4 jdbc数据源和连接池 299 8.5 mysql对中文的处理 302 8.6 小结 302 第9章 会话跟踪 303 9.1 用于会话跟踪的技术 303 9.1.1 ssl会话 304 9.1.2 cookies 304 9.1.3 url重写 305 9.2 java servlet api的会话...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part3

    8.4 jdbc数据源和连接池 299 8.5 mysql对中文的处理 302 8.6 小结 302 第9章 会话跟踪 303 9.1 用于会话跟踪的技术 303 9.1.1 ssl会话 304 9.1.2 cookies 304 9.1.3 url重写 305 9.2 java servlet api的会话...

    基于J2EE框架的个人博客系统项目毕业设计论文(源码和论文)

    而使用表现层框架则可以将Jsp中剩余的JavaBeans完全分离,这部分JavaBeans主要负责显示相关信息,一般是通过标签库(Taglib)实现,不同框架有不同自己的标签库,Struts是应用比较广泛的一种表现层框架。 2、 Ajax...

Global site tag (gtag.js) - Google Analytics