Cnbaby 发表于 2017-1-29 09:46:26

Tomcat 6 的数据源的配置

  近来换了TOMCAT6,配置MYSQL数据库的数据源,在网上查找相关解决方案,后调试解决如下:
  修改$CATALINA_HOME/conf/context.xml文件,加入如下代码:
<Context  reloadable="true">   
       <WatchedResource>WEB-INF/web.xml</WatchedResource>                                                        
       <Resource name="jdbc/mysql" auth="Container" type="javax.sql.DataSource"                       
          maxActive="100" maxIdle="30" maxWait="10000"                                                                                username="root" password="root" driverClassName="com.mysql.jdbc.Driver"                
          url="jdbc:mysql://localhost:3306/dataBaseName"/>                                                             </Context>
  jdbc/mysql  可自己设置,dataBaseName 更改为相关数据库名

把MYSQL驱动拷贝到TOMCAT的lib目录(我用的是mysql-connector-java-5.1.6-bin.jar)

不必像官方文档所说,在web应用的web.xml中配置<resource-ref>标签的属性,数据源就配置成功

java代码得到连接:
         Context initCtx = new InitialContext();
         javax.sql.DataSource ds = (javax.sql.DataSource)initCtx.lookup("java:comp/env/jdbc/mysql");
         Connection conn = ds.getConnection();


另:Context元素代表一个web应用,运行在某个特定的虚拟主机上。你可以在一个Host元素中嵌套任意多的Context元素。每个Context的路径必须是惟一的,由path属性定义。

若针对某个WEB应用配置数据源,可在$CATALINA_HOME/conf/server.xml文件中的<Host></Host>标签之间加入如下的Context代码:
<Context  path="/path" docBase="systemPath" reloadable="true">                                                        
       <Resource name="jdbc/mysql" auth="Container" type="javax.sql.DataSource"                       
          maxActive="100" maxIdle="30" maxWait="10000"                                                                                username="root" password="root" driverClassName="com.mysql.jdbc.Driver"                
          url="jdbc:mysql://localhost:3306/dataBaseName"/>                                                             </Context>

以上测试在Tomcat 5.5和Tomcat 6中都顺利通过
页: [1]
查看完整版本: Tomcat 6 的数据源的配置