tomcat7下JDNI连接池的配置
来源:互联网 发布:java工程师工资待遇 编辑:程序博客网 时间:2024/05/16 16:04
tomcat7下JDNI连接池的配置
建立数据库连接是非常耗时耗资源的行为,因此一般服务器像Tomcat,Weblogic等都提供了数据库连接池功能。下面介绍在Tomcat7下如何进行配置连接池(不同版本的tomcat服务器配置略有不同)。
首先,在tomcat的context.xml文件中配置:
<Resource name="jdbc/test" auth="Container" type="javax.sql.DataSource" driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/test" username="root" password="root" maxActive="100" maxIdle="30" maxWait="10000"/> <ResourceLink global="jdbc/test" name="jdbc/test" type="javax.sql.DataSource"/>
接着在web.xml中对其进行引用:
<resource-ref> <description>JNDI DataSource</description> <res-ref-name>jdbc/test</res-ref-name> <res-type>javax.sql.DataSource</res-type> <res-auth>Container</res-auth> </resource-ref>
注:注意其与tomcat要相适应
编写测试类:
package jnditest;import java.sql.Connection; import javax.naming.Context; import javax.naming.InitialContext; import javax.sql.DataSource; public class ConnectionPool { private static Connection conn; public static Connection getConn(){ try{ Context ctx = new InitialContext(); DataSource ds = (DataSource)ctx.lookup("java:comp/env/jdbc/test"); System.out.println(ds); conn = ds.getConnection(); }catch(Exception e){ e.printStackTrace(); } return conn; } }
在webContent下建立main.jsp文件:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ page import="jnditest.ConnectionPool,java.sql.Connection,java.sql.*" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>测试JNDI连接</title> </head> <body> <% ConnectionPool conn = new ConnectionPool(); Connection conns = conn.getConn(); if(null!=conns){ out.println("数据库连接状态:<b>OK</b><hr />"); PreparedStatement pst = conns.prepareStatement("SELECT * FROM STUDENT"); ResultSet rs = pst.executeQuery(); while(rs.next()){ int id =rs.getInt("ID"); String name = rs.getString("NAME"); out.println("<b>id:</b>"+id+"<br /><b>姓名:</b>"+name+"<br /><b>性别:</b>"+"<br />"+"<hr />"); } }else{ out.println("数据库连接状态:NO"); } %> </body> </html>
最后,注意要将MySQL的驱动包加入到tomcat下的lib目录中。
配置完毕,在MySQL下建立表:
DROP TABLE IF EXISTS `test`.`student`;CREATE TABLE `test`.`student` ( `id` int(11) NOT NULL, `name` varchar(20) DEFAULT NULL, PRIMARY KEY (`id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8;
插入几条数据,启动服务器,输入URL地址,测试结果如下:
数据库连接状态:OK
id:1
姓名:张三
性别:
id:2
姓名:李四
性别:
id:3
姓名:王五
性别:
注:
应还在tomcat的conf\Catalina\localhost目录下建立一份名称
与web名相同内容与context.xml相同的文件,否则会出现
org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot
create *JDBC driver of class ” for connect URL’null’异常,可能是由于tomcat(可能由于权限或者配置问题)无法将context.xml文件写入到conf\Catalina\localhost中的原因。
1 0
- tomcat7下JDNI连接池的配置
- tomcat7下JDNI连接池的配置
- tomcat6.0中jdni连接池的配置
- 配置连接池(JDNI方式)
- tomcat5.5下JDNI的配置
- weblogic的JDNI连接
- Tomcat7 连接池配置
- 连接池配置 - tomcat7
- JDNI配置数据库连接池
- Tomcat7.0配置连接池的步骤
- tomcat7 的dbcp连接池配置问题
- JDBC连接池(TOMAT-JDNI)
- tomcat7下CGi的配置
- Tomcat7和mysql连接池的配置方法和测试
- 关于eclipse搭配Tomcat7.0配置连接池的异常
- JDNI的三种配置方式
- tomcat7下的MySQL数据库连接池的配置
- Tomcat容器下 jdni 数据库连接也的配置 (oracle,mysql)
- [转]AngularJS 作用域数据绑定
- 欢迎使用CSDN-markdown编辑器
- OpenGL入门11——抗锯齿
- JAVASE_面向对象下
- OS X右键Services集成Sublime text
- tomcat7下JDNI连接池的配置
- Bash的基本功能
- SSH配置文件之applicationContext.xml
- 人脸识别必读的N篇文章
- JavaBean入门 - 概念和简单例子
- 在Mac OS X上配置OpenCV Python版本
- UDP通讯中数据不能写入文件的问题
- libev 代码阅读
- django交互模式使用模板报:django.core.exceptions.ImproperlyConfigured