Tomcat数据源配置路径问题
小弟最近做一个网站,使用jsp访问access数据库。
犹豫了解的不深入,对于配置数据源还是一知半解,不知道如何在配置文件中得到Web目录的位置,望指教。
在我的Web项目目录下META-INF下的文件,context.xml如下:
其中路径为F盘下的abc.accdb文件
但当我项目发布后,我希望把access文件放到Web项目根目录下,如:
tomcat/webapps/123/123.accdb
但是我不知道如何在xml中获取项目根目录下的路径,望指教。
是否还涉及到修改其他tomcat的配置文件
另附上我的连接池类,DbPool.java
犹豫了解的不深入,对于配置数据源还是一知半解,不知道如何在配置文件中得到Web目录的位置,望指教。
在我的Web项目目录下META-INF下的文件,context.xml如下:
<?xml version="1.0" encoding="UTF-8"?>
<Context>
<Resource
name="JDBC/DBpool"
auth="Container"
type="javax.sql.DataSource"
driverClassName="sun.jdbc.odbc.JdbcOdbcDriver"
url="jdbc:odbc:Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=F:/abc.accdb"
maxAction="20"
maxldle="10"
maxWait="-1"
/>
</Context>其中路径为F盘下的abc.accdb文件
但当我项目发布后,我希望把access文件放到Web项目根目录下,如:
tomcat/webapps/123/123.accdb
但是我不知道如何在xml中获取项目根目录下的路径,望指教。
是否还涉及到修改其他tomcat的配置文件
另附上我的连接池类,DbPool.java
import java.sql.*;
import javax.naming.*;
import javax.sql.DataSource;
//连接池类
public class DbPool {
private static Connection conn;//声明数据库连接对象
public void createConn() {
try {
//声明数据源
Context initCtx = new javax.naming.InitialContext();
Context envCtx = (Context) initCtx.lookup("java:comp/env");
DataSource ds = (DataSource) envCtx.lookup("JDBC/DBpool");
//获取数据源
conn = ds.getConnection();
System.out.println("db connect success");
} catch (Exception e) {
System.out.println("db connect error");
e.printStackTrace();
}
}
//执行sql语句,返回result
public ResultSet executeQuery(String sql) {
ResultSet rs = null;
if (conn == null) {
createConn();
}
try {
Statement st = conn.createStatement();
rs = st.executeQuery(sql);
} catch (Exception e) {
e.printStackTrace();
}
return rs;
}
}
...全文


Web 开发
