tomct6.0配置单个数据源与多个数据源的做法

做项目当中遇到在tomcat6.0配置过数据源。把一些心得和方法贴出来,供大家学习吧!

(方法一):

【1】:配置context.xml.找到%TOMCAT6.0%\conf\context.xml.在<Context></Context>中加入

<Resource name="jdbc/mysql_SkyAnalysis" auth="Container" type="javax.sql.DataSource"
maxActive="4" maxIdle="2" maxWait="50000"
username="root" password="123456" driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://127.0.0.1/skyra?characterEncoding=utf-8">
</Resource>

【2】:在tomcat6.0中找到conf目录,下面由一个server.xml,打开
<Resource name="jdbc/mysql_SkyAnalysis" auth="Container" type="javax.sql.DataSource"
   maxActive="4" maxIdle="2" maxWait="5000"
   username="root" password="123456" driverClassName="com.mysql.jdbc.Driver"
   url="jdbc:mysql://127.0.0.1/skyra?characterEncoding=utf-8">
</Resource>

【3】:然后打开指的是我们本身项目中web.xml文件(这一步可以加也可以不加)
<web-app>
<resource-ref>
      <description>DB Connection</description>
      <res-ref-name>jdbc/mysql_SkyAnalysis</res-ref-name>
      <res-type>javax.sql.DataSource</res-type>
      <res-auth>Container</res-auth>
</resource-ref>
</web-app>

 

(方法二):

在tomcat6.0\conf\Catalina\localhost中,其中带绿色的是在conf下没有,那么自己创建就行了,在它的目录下建一个manager.xml吧。

【1】:

<Context path="/" docBase="D:/workspaces/项目名/web" debug="99" reloadable="true">  
    <Logger className="org.apache.catalina.logger.FileLogger" prefix="dvs." suffix=".txt" timestamp="true"/>  
    <Resource  
    name="jdbc/mysql_SkyAnalysis"  
    type="javax.sql.DataSource"  
    driverClassName="com.mysql.jdbc.Driver"  
    maxIdle="30"  
    maxWait="10000"  
    username="root"  
    password="123456"  
    url="jdbc:mysql://127.0.0.1/skyra?characterEncoding=utf-8"  
    maxActive="100"/> 
</Context>

【2】:

在项目当中引入.
  1. <resource-env-ref>  
  2.     <description>myDB1 Connection</description>  
  3.     <resource-env-ref-name>jdbc/mysql_SkyAnalysis</resource-env-ref-name>  
  4.     <resource-env-ref-type>javax.sql.DataSource</resource-env-ref-type>  
  5. </resource-env-ref>  

其中的name、username、password、driverClassName、url根据自己数据库的需要和实际开发做相应的改动即可。

 

测试test.jsp

<%@ page contentType="text/html; charset=GBK"%>
<%@ page import="java.sql.*,javax.sql.DataSource,javax.naming.*"%>
<html>
<head><title>test.jsp</title></head>
<body bgcolor="#ffffff">
<h1>test Tomcat</h1>
<%
try
{
Context initCtx=new InitialContext();
DataSource ds = (DataSource)initCtx.lookup("java:comp/env/jdbc/mysql_SkyAnalysis");
Connection conn=ds.getConnection();
out.println("data from database:<br>");
Statement stmt=conn.createStatement();
ResultSet rs =stmt.executeQuery("select id from users");
while(rs.next())
{
out.println(rs.getInt("id"));
}
rs.close();
stmt.close();
conn.close();
}
catch(Exception e)
{
e.printStackTrace();
}
%>
</body>
</html>

 

多个数据源的配置和上面一样。在多加几个Resource 就可以了。TOMCAT本身就支持多数据库的,在说是通过jndi来寻找的,一个对应一个就行了。现写到这里吧!

你可能感兴趣的:(sql,tomcat,mysql,SQL Server,jdbc)