日期:2014-05-18  浏览次数:20573 次

高手赶快帮忙,要崩溃了!!!
jsp连接MS   SQL   server2000老出错(tomcat服务器),sql   server2000打了sp3补丁

bean:
//使用JDBC调用ODBC数据源JSP
package   opendb;
import   java.sql.*;
public   class   opendb
{
String   sDBDriver   =   "sun.jdbc.odbc.JdbcOdbcDriver ";
String   sConnStr   =   "jdbc:odbc:JSP ";
Connection   conn   =   null;
ResultSet   rs   =   null;

public   opendb()
{
try
{
Class.forName(sDBDriver);
}
catch(java.lang.ClassNotFoundException   e)
{
System.err.println( "opendb(): "+e.getMessage());
}
}

public   ResultSet   executeQuery(String   sql)
{
rs   =   null;
try
{
conn   =   DriverManager.getConnection(sConnStr, "abc ", "123456 ");
Statement   stmt   =   conn.createStatement();
rs   =   stmt.executeQuery(sql);
}
catch(SQLException   ex)
{
System.err.println( "aq.executeQuery: "+ex.getMessage());
}
return   rs;
}

}

jsp内容:
<%@   page   language= "java "   import= "java.sql.* "%>
<jsp:useBean   id= "db "   scope= "page "   class= "opendb.opendb "/>
<%

String   uid=request.getParameter( "uid ");
String   sql= "select   *   from   custom   where   uid= "+uid+ " ";
//rs为返回结果的ResultSet对象
ResultSet   rs   =   db.executeQuery(sql);

报错:说class   的属性值: "opendb.opendb "   无效


------解决方案--------------------
Class.forName(sDBDriver);
有问题,你把SQL的包解压了看看路径对不对,
------解决方案--------------------
跟数据库等没有关系,是找不到这个类了,看工程的结构有没有问题,包路径什么的都对不对
------解决方案--------------------
bean 可以这样写吗?

Class.forName(sDBDriver);

conn = DriverManager.getConnection(sConnStr, "abc ", "123456 ");

这样可以分开写在两个异常处理语句里吗,确切点说,两个方法里吗??

学习
------解决方案--------------------
在确定包路径是正确的情况下,建议换个包名!!!
------解决方案--------------------
jsp:useBean 语法MS错误!
<jsp:useBean id= "db " scope= "page " class= "opendb.* "/>
试试!

寒!

没人一个人的JSP是用标签写的!!!!!!!

难道我落后了!?

------解决方案--------------------
把msbase.jar、mssqlserver.jar、msutil.jar放在common\lib下就行了.
------解决方案--------------------
你有没有配置对应`的odbc呢?
------解决方案--------------------
您的是什么的操作系统?如果是WIN2003要打SQL_SERVER的SP-4的补丁才行的!
------解决方案--------------------
bean 好好看看