在Tomcat里使用配置连接池连接数据库

一:首先在Tomcat下的conf/context.xml文件里的contenx标签里配置数据源:

<Resource name="jdbc/zzz"

auth="Container"  type="javax.sql.DataSource"

maxActive="100"     maxIdle="30" maxWait="10000"

username="sa"  password="sa"

driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"

url="jdbc:sqlserver://127.0.0.1:1433;databaseName=TestDB"/>

name:指定Resource的JNDI名字

auth:指定管理Resource的Manager,它有两个可选值:Container、Application

Container是有容器创建和管理       Application是由web应用程序创建和管理

type:指定Resource所属的Java类名

maxActive:指定数据库连接池中处于活动状态的最大连接数目,表示不受限制

maxIdle:指定数据库连接池中处于空闲状态的最大连接数目,表示不受限制

二:然后切记,sqljdbc.jar包不止要放在WEB_INF/lib里还要放在apache-tomcat-6.0.41\lib里。

最后的测试代码:

<%

long begin = System.currentTimeMillis();
for (int i = 0; i < 1000; i++) {
Context context = new InitialContext();
DataSource dataSource = (DataSource) context.lookup("java:comp/env/jdbc/zzz");
Connection connection = dataSource.getConnection();
connection.close();
}
out.print(System.currentTimeMillis() - begin);
%>

这个配置会比一般打开关闭连接省时许多许多,测试数据循环1000次:一般的耗时10秒多,而配置数据库连接池只许60多毫秒!

时间: 2024-12-23 09:17:42

在Tomcat里使用配置连接池连接数据库的相关文章

Tomcat 【中配置连接池和数据源】

四.Tomcat 中配置连接池和数据源   1.DataSource接口介绍   (1)DataSource 概述 JDBC1.0原来是用DriverManager类来产生一个对数据源的连接.JDBC2.0用一种替代的方法,使用DataSource的实现,代码变的更小巧精致,也更容易控制. 一个DataSource对象代表了一个真正的数据源.根据DataSource的实现方法,数据源既可以是从关系数据库,也电子表格,还可以是一个表格形式的文件.当一个DataSource对象注册到名字服务中(JN

Tomcat配置连接池

Tomcat配置DBCP连接池 配置tomcat服务器的时候,使用到jndi;通过Context配置文件实现配置池对象,通过new initialConext()对象的lookup()获取到数据池对象,在通过ds获取connction对象 我们在Java Web环境中使用DataSource时,通常不是自己去创建,而是通过在Tomcat中配置JNDI资源来完成. JNDI(Java Naming and Directory Interface),Java命名和目录接口.JNDI的作用就是:在服务

Tomcat上配置连接池{ connect error=Name [jdbc/OracleDB] is not bound in this Context. Unable to find [jdbc]}

. 在学习期间,从未实践过在tomcat上配置连接池,今天终于实现一次,在tomcat玩了一把,不知道你是否现在有和我一样的困境.废话少说直接上代码 java public static Connection getConnection_tomcat() { Connection conn = null; try { Context initCtx = new InitialContext(); Context ctx = (Context) initCtx.lookup("java:comp/

JBoss配置连接池

什么是数据库连接池? 配置连接池为的是解决效率问题.因为每创建一个连接都是很耗时的,有了连接池,就可以提前放一些连接进去.以后我们再用连接就去连接池里面取而不是每次都创建.但是我们知道连接池是有上限的,如果只允许我们放10个,那么当这10个连接都被占用的时候,下一个用户再来请求连接将不能得到,只好等待,如果等的时间太长了就会抛出timeout的异常.使用完连接后要释放,否则会一直占着资源,当连接全部被占用而得不到释放时,就会出现错误... JBoss实现了J2EE的13个规范包括JNDI,JND

使用 Tomcat 7 新的连接池 —— Tomcat jdbc pool

Tomcat 在 7.0 以前的版本都是使用 commons-dbcp 做为连接池的实现,但是 dbcp 饱受诟病,原因有: dbcp 是单线程的,为了保证线程安全会锁整个连接池 dbcp 性能不佳 dbcp 太复杂,超过 60 个类 dbcp 使用静态接口,在 JDK 1.6 编译有问题 dbcp 发展滞后 因此很多人会选择一些第三方的连接池组件,例如 c3p0 , bonecp, druid (@wenshao ) 等. 为此,Tomcat 从 7.0 开始引入一个新的模块:Tomcat j

ibatis配置连接池

iBatis的连接设置 持久层中间件iBatis连接数据库的方式有3种,连接数据库的方式是JDBC,可以通过在XML文件中配置数据库连接,也可以在properties文件中配置.下面列出transactionManager的type为JDBC的3种连接配置. dataSource的type为SIMPLE的连接配置 以下是配置数据库连接参数的properties文件sql-map-config.properties的内容: ## SimpleDataSource properties ## Use

springboot2.0配置连接池(hikari、druid)

springboot2.0配置连接池(hikari.druid) 原文链接:https://www.cnblogs.com/blog5277/p/10660689.html 原文作者:博客园--曲高终和寡 *******************如果你看到这一行,说明爬虫在本人还没有发布完成的时候就抓走了我的文章,导致内容不完整,请去上述的原文链接查看原文**************** springboot2.0之后,自带了一个号称全世界最快的连接池hikari,直接在配置文件里输入以下配置即可

Spring配置连接池

---------------------siwuxie095 Spring 配置连接池 1.Spring 配置内置连接池 在 applicationContext.xml 中添加如下内容: <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName&qu

hibernate配置连接池的3中方式

三种连接都是以连接MySQl为例. <!-- JDBC驱动程序 --> <property name="connection.driver_class">org.gjt.mm.mysql.Driver</property> <property name="connection.url">jdbc:mysql://localhost:3306/struts?useUnicode=true&characterEnc