报错:No suitable driver,急!急!急!急!急!急!急!急!急!急!急!急!急!

wxjbb 2004-11-24 05:22:18
一个很简单而且很常见(为何说常见?因为这是原原本本的草席网上的代码),只是连接sqlserver并且读几个记录,然后在某个类的main函数中打印出来,已经正常底跑过几次,下午突然不行,运行时报错No suitable driver,急!

import java.util.*;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.sql.*;
import javax.sql.*;

public class login1 extends HttpServlet {

private Connection conn;
private Statement stmt;
public void setConnection(){
try{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
}
catch(ClassNotFoundException e)
{
System.out.println("数据库驱动类没找到");
}
catch(InstantiationException e)
{
System.out.println("驱动类实例化出错");
}
catch(IllegalAccessException e)
{
System.out.println("");
}
String url="jdbc:microsoft://localhost:4482;DatabaseName=his";
String user="sa";
String password="";
try{
DriverManager.setLoginTimeout(10);
conn=DriverManager.getConnection(url,user,password);
DatabaseMetaData conMD= conn.getMetaData();
System.out.println("Driver Name:" + conMD.getDriverName()); //打印出驱动程序名称及版

本信息
System.out.println("Driver Version:" + conMD.getDriverVersion());

stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
}
catch(SQLException ex)
{
System.out.print(ex.getMessage());
}
/*
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
String url="jdbc:microsoft:sqlserver:BB;DatabaseName=his";
String user="sa";
String password="";
conn= DriverManager.getConnection(url,user,password);
stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
*/
};

public login1(){
conn=null;
stmt=null;
};

public static void main(String[] args)
throws IOException {
login1 lg=new login1();
lg.setConnection();
ResultSet rs=null;
String sql="select * from t_user";
try{
rs=lg.stmt.executeQuery(sql);
}
catch(SQLException ex)
{
System.out.print(ex.getMessage());
}catch(NullPointerException ex)
{
System.out.print(ex.getMessage());
}

try{
while(rs.next()){
System.out.print(rs.getString(5));
System.out.print(" "+rs.getString(4));
System.out.print(" "+rs.getString(3));
System.out.print("\n");
}
}catch(SQLException ex)
{
System.out.print(ex.getMessage());
}catch(NullPointerException ex)
{
System.out.print(ex.getMessage());
}

};

public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();

setConnection();
ResultSet rs=null;
String sql="select * from t_user";
try{
rs=stmt.executeQuery(sql);
}
catch(SQLException ex)
{
System.out.print(ex.getMessage());
}

out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 " +
"Transitional//EN\">\n");
out.println("<html>\n");
out.println("<head>\n");
out.println("<meta http-equiv=\"Content-Type\"content=\"text/html;charset=gb2312\">");
out.println("<title>Hello</title>");
try{
while(rs.next()){
out.println(rs.getString(5)+"\n");
}
}catch(SQLException ex)
{
System.out.print(ex.getMessage());
}

out.println("</head>\n");
out.println("</html>\n");
// response.sendRedirect("http://www.google.com");
};

public void doPost(HttpServletRequest request,
HttpServletResponse response)throws ServletException, IOException{
doGet(request,response);
};

}

...全文
87 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
快乐妈妈网 2004-11-24
  • 打赏
  • 举报
回复
SQLSERVER的JDBC驱动共有三个压缩包,你把这三个压缩包,拷到WEB服务器中的LIB目录下就可以,我用TOMACT5.0开始就出现这个问题,如果拷不全就会出现上面的问题,我也见到过,在TOMCAT下,你拷到shard/lib目录下,重启TOMCAT就可以,你可以试一下.其它WEB服务,我就不太清楚那个是公共目录了,你可以试一下了!!
wxjbb 2004-11-24
  • 打赏
  • 举报
回复
可是我的sqlver driver for jdbc是没有问题的,我的连库bean是能够正常运行的,而且这个例子也曾经跑起来了
bobshi 2004-11-24
  • 打赏
  • 举报
回复
建议楼主重新下载一个mssql driver

81,091

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧