Chinaunix首页 | 论坛 | 博客
  • 博客访问: 423145
  • 博文数量: 155
  • 博客积分: 2590
  • 博客等级: 少校
  • 技术积分: 2161
  • 用 户 组: 普通用户
  • 注册时间: 2012-10-25 09:33
文章分类

全部博文(155)

文章存档

2015年(1)

2014年(2)

2013年(55)

2012年(97)

分类: 数据库开发技术

2012-12-23 16:55:34

一,在Tomcat中配置连接池的JNDI

首先到MySQL的网站上下载 JDBC连接器放到%CATALINA_HOME%/lib目录下,在%CATALINA_HOME%/conf目录下找到context.xml,这个文件是全局的,如果想只对特定的应用使用可以编辑WEB-INF/context.xml文件。

在context标记之间添加如下内容:

auth:验证方式,这里用Container表示由容器Tomcat来进行验证

driverClassName:数据库驱动

maxActive:最大活动连接数,就是最大同时存在的连接数

maxIdle:最大空闲连接数,连接池中闲置的连接数

maxWait:当连接池中没有空闲连接,并且达到了最大活动连接数,需要等待的时间,如果在待时间到后这两个条件还为真,就产生异常

name:连接池的JNDI名字

type:JNDI的类型

url:JDBC URL

username:数据库帐号

password:数据库密码,没有密码不写这一项,MySQL可以没有密码,却没有密码是一个空字符串

以上内容可以手动编辑,如果是用的Eclipse的话也可以用eclipse编辑,下面是用Eclipse的编辑方法

在eclipse中找到context.xml

双击后在编辑窗口打开,在context标记上右击,选择Add child->Resource,添加一个Resource标记,然后在Resource上右击,选择Add Attribute->Auth,依次添加其它各个属性并编辑其值,完成后保存

eclipse中编辑context.xml

至此完成了连接池的创建

二,在项目中引用连接池

编辑WEB-INF/web.xml,在web-app中添加如下内容:


jdbc/mysql 
javax.sql.DataSource 
Container

其中表示连接池的JNDI名字,其它的与上面相同

至此已经完成了所有的配置工具,下面看看如何通过连接池来访问数据库

三,通过连接池来访问数据库

 

  1. <%@ page language="java" contentType="text/html; charset=GB18030"
  2. pageEncoding="GB18030"%>
  3. <%@ page import="java.sql.*" import="javax.sql.DataSource" import="javax.naming.*" %>
  4. Insert title here
  5. <%
  6. Context context = new InitialContext(); 
  7. //获得数据源 
  8. DataSource ds = (DataSource)context.lookup("java:comp/env/jdbc/mysql");
  9. //获取连接 
  10. Connection conn = ds.getConnection(); 
  11. Statement stmt=conn.createStatement();
  12. ResultSet rs =stmt.executeQuery("select * from products");
  13.  
  14. %>
  15. <%
  16. while(rs.next())
  17. {
  18. %>
  19. <% 
  20. }
  21. %>
  22. 文章
    <%=rs.getString("article") %>
  23. //web开发网

代码我就不多做解释了,应该都能看懂,里面用到了JNDI编程,如果需要自己查资料

最后说明一点,在配置jdbc url的时候如果要用&来把多个参数连接起来的话,要把&转义为&,如果用eclipse编辑则会自动转换

阅读(667) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~