java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1714)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1559)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at com.dy.LoginCheck.doPost(LoginCheck.java:63)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:929)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1002)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:585)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)上面的是错误提示
大神写,这到底是什么原因呢??弄了好久也不知道链接sql2012数据库代码
try{
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
con=DriverManager.getConnection(url);
String sql="select * from users where uname=? and upass=?";
PreparedStatement pstmt=con.prepareStatement(sql);
pstmt.setString(1, uname); //设置用户名
pstmt.setString(2, upass); //设置密码

ResultSet rs=pstmt.executeQuery(); //执行查询

if(rs.next()) //如果记录集非空
{
System.out.println("found!");
response.sendRedirect(request.getContextPath()+"/operation.jsp");  //转发
}
else
{//登录失败
request.setAttribute("info","用户名和密码错误");
request.getRequestDispatcher("login.jsp").forward(request, response);
}

}
catch(Exception e)
{
e.printStackTrace();
}
finally
{
System.out.println("ssss");
}

解决方案 »

  1.   

    LZ,你数据库对应的jar包导入了吗?
      

  2.   

    sqlserver的jar包涉及版本问题,对应的类名也不一样,如果用的版本不一样,当然就会找不到类了。
      

  3.   

    JAR错啦
    你打开你的JAR包,对应位置看看有没有这个类吧
      

  4.   

    java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver写的很清楚了,SQLServerDriver类找不到。
    运行时jdbc jar包未指明。通常可以在java命令后面指定。
    或者在环境变量CLASS_PATH中添加jar包指定的目录。
      

  5.   

    楼主找到tomcat下面webapp里面对应的项目文件夹,把对应的jdbc的jar包手动粘贴进去。
    myeclipse的自动导入经常会有问题。
      

  6.   

    重新down个jar包支持现在的sqlserver,都重新来
      

  7.   

    java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver找不到类 ......
    要么 jar 包没导
      

  8.   

    java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver
    m没有找到类哦 亲
    jar包倒了没
    lib下有木有呀
      

  9.   

    你导入的包的版本是2012sql的吗
      

  10.   

    java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriverClassNotFound :找不到Class,说明你的驱动找不到。
    这是字面的意思,以下几个原因都可能产生这个Exception
    1、你确实缺少驱动的jar包,或者导入的方式不对,产生了程序确实就是找不到的问题;
    2、导入的jar正确,但是这个驱动和你的sqlserver的版本不对应,sqlserver不认你的这个驱动,自然就会忽略,也算是ClassNotFound;
    3、驱动对了,sqlserver的问题,比如说补丁没有打;
      

  11.   

    还有可能你的项目里面有两个驱动包,而你默认使用的是低版本的包,而低版本的包里面没有你要的class