|
在tomcat下配置mysql数据源
1.1 配置server.xml
在tomcat5.0-->conf-->server.xml的<host></host>标记中加入以下代码:
<Context path="/hibernate_test" reloadable="true" docBase="E:\testeclipse\workspace\myhibernate_test\hibernate_test" workDir="E:\testeclipse\workspace\myhibernate_test\work"> <Resource name="jdbc/list" auth="Container" type="javax.sql.DataSource"/> <ResourceParams name="jdbc/list"> <parameter> <name>factory</name> <value>org.apache.commons.dbcp.BasicDataSourceFactory</value> </parameter> <parameter> <name>driverClassName</name> <value>org.gjt.mm.mysql.Driver</value> </parameter> <parameter> <name>url</name> <value>jdbc:mysql://10.71.0.187:8000/test?characterEncoding=gbk</value> </parameter> <parameter> <name>username</name> <value>omnipay</value> </parameter> <parameter> <name>password</name> <value>omnipay</value> </parameter> <parameter> <name>maxActive</name> <value>20</value> </parameter> <parameter> <name>maxIdle</name> <value>20</value> </parameter> <parameter> <name>maxWait</name> <value>-1</value> </parameter> </ResourceParams> </Context>
或者在Tomcat 5.0\conf\Catalina\localhost目录下添加一个和web项目同名的一个xml文件,内容如下:
<Context path="/list_test" reloadable="true" docBase="list_test"> <Resource name="jdbc/list" auth="Container" type="javax.sql.DataSource"/> <ResourceParams name="jdbc/list"> <parameter> <name>factory</name> <value>org.apache.commons.dbcp.BasicDataSourceFactory</value> </parameter> <parameter> <name>initialSize</name> <value>5</value> </parameter> <parameter> <name>maxActive</name> <value>20</value> </parameter> <parameter> <name>maxIdle</name> <value>10</value> </parameter> <parameter> <name>minIdle</name> <value>5</value> </parameter> <parameter> <name>timeBetweenEvictionRunsMillis</name> <value>300000</value> </parameter> <parameter> <name>maxWait</name> <value>10000</value> </parameter> <parameter> <name>removeAbandoned</name> <value>true</value> </parameter> <parameter> <name>removeAbandonedTimeout</name> <value>60</value> </parameter> <parameter> <name>logAbandoned</name> <value>false</value> </parameter> <parameter> <name>username</name> <value>omnipay</value> </parameter> <parameter> <name>password</name> <value>omnipay</value> </parameter> <parameter> <name>driverClassName</name> <value>com.mysql.jdbc.Driver</value> </parameter> <parameter> <name>url</name> <value>jdbc:mysql://10.71.0.187:8000/test?characterEncoding=gbk</value> </parameter> </ResourceParams> </Context>
或者在struts_config.xml中添加以下代码:
<data-sources > <data-source key="org.apache.struts.action.DATA_SOURCE" type="org.apache.commons.dbcp.BasicDataSourceFactory"> <set-property property="password" value="omnipay" /> <set-property property="minCount" value="" /> <set-property property="maxCount" value="" /> <set-property property="user" value="omnipay" /> <set-property property="driverClass" value="com.mysql.jdbc.Driver" /> <set-property property="description" value="jdbc/jndi" /> <set-property property="url" value="http://localhost:8000/test" /> <set-property property="readOnly" value="false" /> <set-property property="autoCommit" value="false" /> <set-property property="loginTimeout" value="" /> </data-source> </data-sources>
1.2 配置web.xml
在web.xml中添加以下代码:
<web-app> <description>MySQL Test App</description> <resource-ref> <description>DB Connection</description> <res-ref-name>jdbc/TestDB</res-ref-name> <res-type>javax.sql.DataSource</res-type> <res-auth>Container</res-auth> </resource-ref> </web-app>
1.3 访问数据库的java代码 DbConnection.java
import java.sql.Connection; import java.sql.SQLException; import javax.naming.Context; import javax.naming.InitialContext; import javax.sql.DataSource; /** * @date 2006-1-3 * @author user 数据库连接的通用类 */ public final class DbConnection { private static DbConnection dbConn; private DbConnection() throws SQLException { } //获得数据库连接 public synchronized Connection getConnection() throws SQLException { Connection con = null; try { InitialContext ctx = new InitialContext(); Context ct = (Context) ctx.lookup("java:comp/env"); DataSource ds = (DataSource) ct.lookup("jdbc/omnipay"); con = ds.getConnection(); } catch (Exception e) { e.printStackTrace(); } return con; } public static synchronized DbConnection getInstance() throws SQLException { if (dbConn == null) { dbConn = new DbConnection(); } return dbConn; } }
写一个数据库访问类 1.4 写一个action类及jsp页面测试一下就OK了
|
一共有 0 条评论