日期:2014-05-16  浏览次数:20422 次

如何在Tomcat5.5中配置mysql数据库?
共包括三个步骤:

1. 配置数据源

2.引用数据源

3.使用数据源

-------------------------------------------------



共包括三个步骤:

1. 配置数据源

在/conf/server.xml 的</host>之前加入:

<Context path="/crm" docBase="crm" debug="5" reloadable="true" crossContext="true">

<Resource name="jdbc/TestDB"

auth="Container" type="javax.sql.DataSource"
maxActive="100" maxIdle="30" maxWait="10000"

driverClassName="com.mysql.jdbc.Driver"
username="root" password="123456"

url="jdbc:mysql://localhost:3306/crm?autoReconnect=true"/>

</Context>

2.引用数据源

在应用的WEB-INF/web.xml的</web-app>之前加入:

<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>

3.使用数据源

举例说明:

import javax.naming.InitialContext;
import javax.naming.Context;
import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.Statement;
import java.sql.ResultSet;

// Obtain our environment naming context
try{
Context initCtx = new InitialContext();
Context envCtx = (Context) initCtx.lookup("java:comp/env");

// Look up our data source

String dataSourceName = ""jdbc/TestDB"";
DataSource ds = (DataSource)
envCtx.lookup(dataSourceName );

// Allocate and use a connection from the pool
Connection conn = ds.getConnection();


Statement st = conn.createStatement();
ResultSet rs = st.executeQuery("select * from person");
while(rs.next()){
System.out.print(rs.getString("name"));
}
conn.close();

}catch(Exception e){
e.printStackTrace();
}
}

-------------------------------------------------

附加说明:

1. 当然需要安装mysql了

2. 复制mysql的Java驱动包

将MySQL Tools for 5.0javalibmysql-connector-java-5.0.4-bin.jar复制到tomcatcommonlib

3. 数据库url的设置

url="jdbc:mysql://localhost:3306/crm?autoReconnect=true"

localhost换成数据库的ip地址

crm为具体数据库的名称