为什么jsp的工程放在tomcat下运行不能连接数据库?

来源:百度知道 编辑:UC知道 时间:2024/06/21 11:46:26
我在网上下了一个jsp的工程,把这个文件夹放在了tomcat目录下的webapps文件夹里了,这个工程里有一个access的数据库,我在我的机器上注册了数据源了,为什么在浏览器里打开这些jsp页面的时候,凡是跟数据库有联系的地方都还是不能用呢?别的界面都可以用的!是不是tomcat的问题?

String path="";
Class theClass=DataBase.class;
java.net.URL u= theClass.getResource("db/db.mdb");
System.out.println(u.getPath().substring(1,u.getPath().length()).replaceAll("%20", " "));
String url="jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ="+u.getPath().substring(1,u.getPath().length()).replaceAll("%20", " ");
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
conn=DriverManager.getConnection(url);

为什么要用数据源?不方便程序移植,直接把路径定死也不方便。

我这段代码就是把数据库文件放到了 当前类 目录同级下的一个 “db”文件夹里面。

java.net.URL u= theClass.getResource("db/db.mdb");

可以把数据库文件的绝对路径取出来。

u.getPath().substring(1,u.getPath().length()).replaceAll("%20", " ")

这句是把里面的空格替换回来,因为取出来的路径中的空格被"%20"代替了,我们要把他替换回来。

经过测试可用的!