Tomcat连接池配置问题[当工作文件夹在root根目录下的时候如何配置]
一:当在webaps文件夹下新建一个项目oa文件夹的时候已经可以调试成功,各文件内容如下
1.server.xml
<Context path="/oa" docBase="oa" debug="0" reloadable="true" crossContext="true">
<Resource name="jdbc/oa" auth="Container" type="javax.sql.DataSource"/>
<ResourceParams name="jdbc/oa">
<parameter>
<name>factory</name>
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>com.microsoft.jdbc.sqlserver.SQLServerDriver</value>
</parameter>
<parameter>
<name>url</name>
<value>jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=OA</value>
</parameter>
<parameter>
<name>username</name>
<value>sa</value>
</parameter>
<parameter>
<name>password</name>
<value>manager</value>
</parameter>
<parameter>
<name>maxActive</name>
<value>20</value>
</parameter>
<parameter>
<name>maxIdle</name>
<value>10</value>
</parameter>
<parameter>
<name>maxWait</name>
<value>-1</value>
</parameter>
</ResourceParams>
</Context>
2.DatabaseConn 类
package com.guomao.util;
import java.sql.*;
import javax.naming.*;
import javax.sql.DataSource;
//一个用于查找数据源的工具类。
public class DatabaseConn {
public static synchronized Connection getConnection() throws Exception
{
try
{
Context initCtx = new javax.naming.InitialContext();
Context envCtx = (Context) initCtx.lookup("java:comp/env");
DataSource ds = (DataSource)envCtx.lookup("jdbc/oa"); ;
return ds.getConnection();
}
catch(SQLException e)
{
throw e;
}
catch(NamingException e)
{
throw e;
}
}
}
3.con.jsp
<%@ page import="com.guomao.util.*" %>
<%@ page import="javax.naming.Context" %>
<%@ page import="javax.sql.DataSource"%>
<%@ page import="javax.naming.InitialContext"%>
<%@ page import="java.sql.*"%>
<%
Connection conn = DatabaseConn.getConnection();
%>
4.在jsp中include了con.jsp来启用数据库连接
<%@ page contentType="text/html;charset=gb2312" %>
<%@ include file="conn.jsp" %>
<%
try{
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("select * from OA_CLDJ");
out.println("显示数据库中数据");
while(rs.next()){
out.println("clmc=" + rs.getString("clmc"));
out.println("<br>");
}
}catch(Exception e){
out.println("连接失败");
}%>
二:现在的问题就是
目前项目直接放在了root文件夹根目录下.
此时server.xml中的resourse参数应该怎么改.
<Context path="/oa" docBase="oa" debug="0" reloadable="true" crossContext="true">
<Resource name="jdbc/oa" auth="Container" type="javax.sql.DataSource"/>
<ResourceParams name="jdbc/oa">
<parameter>
<name>factory</name>
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</parameter>
在网上看到说path是文件夹相对于webapps的路径,那么对于root这个根目录,应该怎么改呢?