当前位置:文档之家› 配置INFORMIX数据库的连接池(测试成功)

配置INFORMIX数据库的连接池(测试成功)

关于在INFORMIX下建立JAVA管理的连接池

1、在JAVA主目录下面的conf/server.xml中加入以下内容:

<Context path="/egoog" debug="5" docBase="f:/egoog" reloadable="true" >
<Resource
name="jdbc/connectDB"
auth="Container"
type="javax.sql.DataSource"
maxWait="1000" maxAtive="100" maxIdle="10"
username="informix"
password="informix"
driverClassName="https://www.doczj.com/doc/954372151.html,rmix.jdbc.IfxDriver"
url="jdbc:informix-sqli://172.32.1.202:8888/stddbmobile:informixserver=test" />
</Context>

2、或都以下方法

A、在JAVA主目录下面的conf/server.xml中加入以下内容:

<GlobalNamingResources>
<Resource name="jdbc/connectDB" type="javax.sql.DataSource"
maxWait="1000" maxAtive="100" maxIdle="10"
username="informix"
password="informix"
driverClassName="https://www.doczj.com/doc/954372151.html,rmix.jdbc.IfxDriver"
url="jdbc:informix-sqli://172.32.1.202:8888/stddbmobile:informixserver=test" />
</GlobalNamingResources>

注:经过测试发现,这个项可以不要,好像完全不起作用。
B、修改\conf\Catalina\localhost目录下建立一个xml文件,名称为你所发布的web应用的名称.xml,(如虚拟目录是:egoog,则xml文件名是:egoog.xml)打开添加内容如下:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Context path="/egoog" debug="5" docBase="f:/egoog" reloadable="true" >
<Resource
name="jdbc/connectDB"
auth="Container"
type="javax.sql.DataSource"
maxWait="1000" maxAtive="100" maxIdle="10"
username="informix"
password="informix"
driverClassName="https://www.doczj.com/doc/954372151.html,rmix.jdbc.IfxDriver"
url="jdbc:informix-sqli://172.32.1.202:8888/stddbmobile:informixserver=test" />
</Context>

3、测试连接是否成功如下:
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="javax.naming.*"%>
<%@ page import="javax.sql.*"%>
<%@ page import="java.sql.*"%>
<html>
<head>
</head>
<body>
<%
// 数据库操作
Context ctx=null;
Connection cnn=null;
Statement stmt=null;
ResultSet rs=null;
try
{
ctx=new InitialContext();
if(ctx==null)
throw new Exception("没有匹配的环境");
DataSource ds=(DataSource)ctx.lookup("java:comp/env/jdbc/connectDB");
if(ds==null)
throw new Exception("没有匹配数据库");

cnn=ds.getConnection();
stmt=cnn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
rs=stmt.executeQuery("select * from sortm

obile");

while (rs.next())
{
out.println(rs.getString("number"));
// rs.next();
}

}
finally
{
if(rs!=null)
rs.close();
if(stmt!=null)
stmt.close();
if(cnn!=null)
cnn.close();
if(ctx!=null)
ctx.close();
}
%>
</body>
</html>

重点:
对于根目录下的数据连接池配置:
1、对于用户自定义的WEB根目录(系统缺省是:tomcat_home/webapps)的注意事项如下:
A、必须在
根目录下面生成一个ROOT目录如:d:/webtest/ROOT;
B、把要在根目录下访问的文件全部COPY到ROOT目录下面,当输入WEB服务器IP后才会有所想的主页出来
C、在server.xml中<Host name="localhost" appBase="d:/webtest" >的appBase下要改成自己的主目录,但不带ROOT
2、在tomcat_home\conf\Catalina\localhost下面生成一个ROOT.xml文件,里面内容如下:
<Context path="/" debug="5" docBase="d:/webtest/ROOT" reloadable="true" >
<Resource name="jdbc/connectDB" auth="Container" type="javax.sql.DataSource"
maxWait="1000" maxAtive="100" maxIdle="10"
username="informix"
password="informix"
driverClassName="https://www.doczj.com/doc/954372151.html,rmix.jdbc.IfxDriver"
url="jdbc:informix-sqli://192.168.0.199:8888/stddbmobile:informixserver=test" />
</Context>

注意事项:
1、此内容不能如虚拟目录的连接池一样直接放到server.xml下面
2、如果在系统中有<GlobalNamingResources><GlobalNamingResources/>项,经过测试发现这项不引任何作用。
3、在server.xml中入虚拟目录连接池,同时加载根目录连接池,对于Resource name,可以是同一个名称,且引用不存在问题




<Context path="/mess" debug="0" docBase="f:/mess" reloadable="true" />
<Context path="/mdm" debug="0" docBase="f:/mdm" reloadable="true" />
<Context path="/shop" debug="0" docBase="f:/Shop" reloadable="true" />
<Context path="/deju" debug="0" docBase="f:/deju" reloadable="true" />
<!-- <Context path="/mess" debug="0" docBase="d:/mess" reloadable="true" > </Context> -->
<Context path="/egoog" debug="5" docBase="f:/egoog" reloadable="true" >
<Resource
name="jdbc/connectDB"
auth="Container"
type="javax.sql.DataSource"
maxWait="1000" maxAtive="100" maxIdle="10"
username="informix"
password="informix"
driverClassName="https://www.doczj.com/doc/954372151.html,rmix.jdbc.IfxDriver"
url="jdbc:informix-sqli://172.200.1.2:8888/st

ddbmobile:informixserver=ontest" />
</Context>


相关主题
文本预览
相关文档 最新文档