当前位置: 代码迷 >> Web前端 >> tomcat 数据源的两种配备方法
  详细解决方案

tomcat 数据源的两种配备方法

热度:87   发布时间:2012-11-01 11:11:31.0
tomcat 数据源的两种配置方法

?

主要是讲述tomcat和mysql数据库的数据源配置

?

首先要感谢haidii的博文:http://www.iteye.com/topic/373087

?

1.把content.xml文件写在/tomcat/conf/content.xml里。

?

这样的话可以只把mysql的jdbc驱动包含在eclipse项目中去,然后在/tomcat/conf/content.xml文件中这样写(只是举个例子,还有其它的字段请参考tomcat文档)

?

<?xml version="1.0" encoding="UTF-8"?>
<Context  reloadable="true">	
       <WatchedResource>WEB-INF/web.xml</WatchedResource>
	<Resource name="jdbc/mysql" 
	auth="Container" 
	type="javax.sql.DataSource" 
	driverClassName="com.mysql.jdbc.Driver" 
	url="jdbc:mysql://localhost:3306/test" 
	username="root" password="iceriver" 
	maxActive="3" 
	maxIdle="2" 
	maxWait="-1">
	</Resource>
</Context>

?

然后在程序中用JNDI来调用数据连接

?

Context context=new InitialContext();
DataSource ds=(DataSource)context.lookup("java:comp/env/jdbc/mysql");
Connection conn=ds.getConnection();

?

2.在META-INF中加入content.xml文件

?

在这种方式下,除了在项目中加入mysql的jdbc驱动,还要在/tomcat/common/lib中也要加入mysql的jdbc驱动,否则就会报错。(俺也不清楚WHY,望高手指教)

?

content.xml的内容:

<?xml version="1.0" encoding="UTF-8"?>
<Context docBase="D:\E\JAVA学习\WorkSpace3.2\struts\WebContent" reloadable="true">	
	<Resource name="jdbc/mysql" 
	auth="Container" 
	type="javax.sql.DataSource" 
	driverClassName="com.mysql.jdbc.Driver" 
	url="jdbc:mysql://localhost:3306/test" 
	username="root" password="iceriver" 
	maxActive="3" 
	maxIdle="2" 
	maxWait="-1">
	</Resource>
</Context>
?

程序调用数据库连接也和上述1中是一样的。

?

?

?

?

  相关解决方案