资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

tomcat/resin中怎么利用全局数据库连接池资源-创新互联

这期内容当中小编将会给大家带来有关tomcat/resin中怎么利用全局数据库连接池资源,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

在承留等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供成都网站建设、做网站 网站设计制作按需设计,公司网站建设,企业网站建设,高端网站设计,成都全网营销推广,成都外贸网站制作,承留网站建设费用合理。

Tomcat使用JNDI Resource来配置各种资源,包括数据库连接池。这些Resource有两种运行范围,第一个就是Context级别,也就是说Context特有的Resource,该Resource只能被其所属的Context访问,显然这不是我们所要的。
另外一种就是定义全局命名资源,然后在Context中进行引用,下面是一个配置的例子(server.xml):


 
   
                maxActive="100" maxIdle="30" maxWait="10000" defaultTransactionIsolation="1" defaultAutoCommit="false"
               poolPreparedStatements="true" maxOpenPreparedStatements="1000" initialSize="1"
               username="root" password="root" driverClassName="com.mysql.jdbc.Driver"
               url="jdbc:mysql://localhost:3306/dlogcn?autoReconnect=true"/>
 


 
 

   
                   maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" redirectPort="8443" acceptCount="100"
               connectionTimeout="20000" disableUploadTimeout="true" />
    
   
   

     
 
   
   
 

     

      
   


 




相比较Tomcat来说,Resin更为简单,在Resin2中连接池的配置如下





 
  
 
 

 
   
   
   
   
   
 


 
 
  
   
      
 






你可以把这段配置放在web-app中,则该连接池只有对应的webapp才能访问,放在则,host中的所有web-app都可以访问,放在中,则整个resin的所有webapp都可以访问。
(实验过程中发现resin2的文档有误,如果res-ref-name写为jdbc/dlog,则webapp怎么都找不到这个资源,改成java:/comp/env/jdbc/dlog即可。)

接下来我们就可以在应用中使用如下代码来获取连接池的DataSource实例

Context initContext = new InitialContext();
Context envContext  = (Context)initContext.lookup("java:/comp/env");
DataSource ds = (DataSource)envContext.lookup("jdbc/dlog");

其他的应用服务器的配置可以按照这个思路参考它的手册进行配置。应该说不管是采用何种方式,性能上不会有太大的区别,如何选择就在于你整个服务器的项目结构。



上述就是小编为大家分享的tomcat/resin中怎么利用全局数据库连接池资源了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注创新互联行业资讯频道。


新闻标题:tomcat/resin中怎么利用全局数据库连接池资源-创新互联
分享地址:http://cdkjz.cn/article/johpo.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

业务热线:400-028-6601 / 大客户专线   成都:13518219792   座机:028-86922220