我的Tomcat启动的servlet要连接access数据库
在旧电脑上用的Tomcat5.0,jdk1.42 ,一切OK
在新电脑上DSN等等一切设置和旧电脑一样,但是新电脑上用的XP Sp2,Tomcat5.5,jdk1.5
新电脑如果把我的代码以java application的形式做测试连同样的数据源,竟然也一切OK?
问题是新电脑以Tomcat中的servlet来连就找不到数据源了
所以我怀疑问题是出在Tomcat上,Tomcat5.5可能差驱动,奇怪的是5.0不差.
求解决方法或进一步测试的方法.报错 : [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序代码 :(不会有问题,在旧电脑上运行OK)String JDriver = "sun.jdbc.odbc.JdbcOdbcDriver";
String conURL = "jdbc:odbc:LyricsInfo";try{
Class.forName(JDriver);
}catch(ClassNotFoundException e){
Err += "驱动注册失败:"+e.toString();
}try{
Connection con = DriverManager.getConnection(conURL);
Statement s = con.createStatement();
……
}catch (SQLException e){
Err += "SQLException:"+e.toString();
} 还有不会是ODBC数据源管理器中设置的问题,因为以java application的形式可以连上
谢谢,麻烦大家了!
在旧电脑上用的Tomcat5.0,jdk1.42 ,一切OK
在新电脑上DSN等等一切设置和旧电脑一样,但是新电脑上用的XP Sp2,Tomcat5.5,jdk1.5
新电脑如果把我的代码以java application的形式做测试连同样的数据源,竟然也一切OK?
问题是新电脑以Tomcat中的servlet来连就找不到数据源了
所以我怀疑问题是出在Tomcat上,Tomcat5.5可能差驱动,奇怪的是5.0不差.
求解决方法或进一步测试的方法.报错 : [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序代码 :(不会有问题,在旧电脑上运行OK)String JDriver = "sun.jdbc.odbc.JdbcOdbcDriver";
String conURL = "jdbc:odbc:LyricsInfo";try{
Class.forName(JDriver);
}catch(ClassNotFoundException e){
Err += "驱动注册失败:"+e.toString();
}try{
Connection con = DriverManager.getConnection(conURL);
Statement s = con.createStatement();
……
}catch (SQLException e){
Err += "SQLException:"+e.toString();
} 还有不会是ODBC数据源管理器中设置的问题,因为以java application的形式可以连上
谢谢,麻烦大家了!
文件目录: D:\Tomcat 5.5\webapps\LRCservlet\LyricsInfo.mdb我放弃用户DSN的方式.采取下面的方式连,结果...
1)
String conURL = "jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=..\\webapps\\LRCservlet\\LyricsInfo.mdb";
找不到文件,很奇怪2)换总方式:
String path =new java.io.File(".").getAbsolutePath();
得到 path 为 D:\Tomcat 5. 更奇怪所以我这样写String conURL = "jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ="+path+"5\\webapps\\LRCservlet\\LyricsInfo.mdb";连接成功所以,问题应该是出在Tomcat 5.5这个文件夹的名字上面,他把"."后面的"5"去了那我要怎么写呢?+"5\\webapps\\LRCservlet\\LyricsInfo.mdb" 这样写也太不规范了把..
采用DSN连接时问题也是因为这吗?要怎么才能通过DSN连呢?
真要晕拉!