将数据库驱动程序的JAR文件放在Tomcat的 common/lib 中;
方法一:
在server.xml中设置数据源,以MySQL数据库为例,如下:
1、在Tomcat 5.5\conf\server.xml中的</GlobalNamingResources>标签前添加如下代码
1 <Resource
2 name="jdbc/mysql"
3 type="javax.sql.DataSource"
4 driverClassName="com.mysql.jdbc.Driver"
5 maxIdle="2"
6 maxWait="5000"
7 maxActive="5"
8 username="test"
9 password="123456"
10 url="jdbc:mysql://localhost/test"
11 />
12 <!--
13 name 指定数据源在容器中的名,一般为java/XXX.
14 type 为"javax.sql.DataSource";
15 username 指定连接数据库用户名
16 password 指定连接数据库密码
17 driveClassName 指定连接数据库的驱动
18 maxIdle 指定连接池最大空闲连接数。设为0表示无限制。
19 maxWait 指定连接池中最大等待获取连接的客户端。设为-1表示无限制。
20 MaxActive 指定数据源最大活动连接数,设为0表示无限制。
21 url 指定数据库服务的url
22 -->
2、在你的web应用程序的web.xml中 <web-app></web-app>节点中加入,如下代码:
1 <resource-ref>
2 <description>MySQL DB Connection Pool</description>
3 <res-ref-name>jdbc/mysql</res-ref-name>
4 <res-type>javax.sql.DataSource</res-type>
5 <res-auth>Container</res-auth>
6 <res-sharing-scope>Shareable</res-sharing-scope>
7 </resource-ref>
8 <!--
9 description 描述信息
10 res-ref-name 参考数据源名字,同上一步的属性name
11 res-type 资源类型,”javax.sql.DataSource”
12 res-auth ”Container”
13 res-sharing-scope ”Shareable”
14 -->
3、在Tomcat 5.5\conf\context.xml中设置数据源链接,在<Context></Context>节点中加入如下代码:
1 <ResourceLink
2 name="jdbc/mysql"
3 type="javax.sql.DataSource"
4 global="jdbc/mysql"/>
5 <!--
6 name 同第1步和第2步的属性name值
7 type 同样取”javax.sql.DataSource”
8 global 同name值
9 -->
方法二:
1、把方法一代码写到Tomcat 5.5\conf\context.xml的<Context></Context>节点中。
2、方法一中步骤2。
上述两个方法是配置全局数据源,需要修改Tomcat原有的server.xml文件,破坏了Tomcat系统,所以尽量避免使用全局数据源。
下面是配置局部数据源的方法,只适用于某一个web应用项目。
方法三:
在Tomcat\conf\Catalina\localhost中写一个xml文件,内容如下:
Code
<?xml version="1.0" encoding="UTF-8"?>
<Context docBase="D:/jee" debug="0" privileged="true">
<Resource
name="jdbc/mysql"
type="javax.sql.DataSource"
driverClassName="com.mysql.jdbc.Driver"
maxIdle="2"
maxWait="5000"
username="test"
password="123456"
url="jdbc:mysql://localhost/test"
maxActive="5"/>
</Context>
<!--
docBase 项目部署的位置
-->
最后,在你和程序中使用如下代码即可取得连接:
MySQLLinkCode
InitialContext ctx = new InitialContext();
//这里的java:comp/env是前缀,java语言规范,后面跟的是你Web.xml文件中res-ref-name节点中的名字。
DataSource ds = (DataSource)ctx.lookup("java:comp/env/jdbc/mysql");
Connection conn = ds.getConnection();
MS SQL 与 Oracle 配置方法是一样的。只是 驱动与rul不同。