<body>
     <%
     //验证用户信息
   String u=request.getParameter("username");
   String p=request.getParameter("passwd");
   
   //到数据库中验证用户
   //1.加载驱动
   Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
   //2.得到链接
   Connection ct=DriverManager.getConnection("jdbc:microsoft:sqlserver//127.0.0.1:1433;databaseName=spdb1","sa","");
   //3.创建statement
   Statement sm=ct.createStatement();
   //4.查询
   ResultSet rs=sm.executeQuery("select passwd form users where username='"+u+"'");
   //根据结果判断
   if(rs.next()){
   //用户存在
   if(rs.getString(1).equals(p)){
   //合法
   response.sendRedirect("wel.jsp?user="+u);
   }
   else{
   //密码错误
   response.sendRedirect("index.jsp");
   }
   }else{
   //用户名不存在
   response.sendRedirect("index.jsp");
   }
          %>
  </body>
在账号密码都正确的情况下,出现错误HTTP Status 500 严重: Servlet.service() for servlet jsp threw exception
java.sql.SQLException: No suitable driver found for jdbc:microsoft:sqlserver//127.0.0.1:1433;databaseName=spdb1
at java.sql.DriverManager.getConnection(DriverManager.java:602)
at java.sql.DriverManager.getConnection(DriverManager.java:185)
at org.apache.jsp.loginCl_jsp._jspService(loginCl_jsp.java:94)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:384)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:228)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:216)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:634)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:445)
at java.lang.Thread.run(Thread.java:662)
我搞了一天都不知道什么回事,请求大家指点

解决方案 »

  1.   

    java.sql.SQLException: No suitable driver found for jdbc:microsoft:sqlserver//127.0.0.1:1433;databaseName=spdb1
    楼主检查一下 驱动包jar 是否成功引入
      

  2.   

    看来数据库链接很容易出问题啊,今天我都回答两个了。楼主你看看项目目录中Referenced Libraries 下有sqljdbc.jar包吗(数据库为SQL server2005以下版本,其他的也是同样道理)?没有的话在Referenced Libraries上右键选择build path然后选择Confrgure Build Path 打开一个页面在上面选择Libraries,最后选择Add JARs添加jar包。有的话检查jar版本是否符合,再者同一个项目下不允许有两个sqljdbc.jar否则也会报这个错误
      

  3.   

    我没有设置用户 我是用windows验证的 
    Connection ct=DriverManager.getConnection("jdbc:microsoft:sqlserver//127.0.0.1:1433;databaseName=spdb1","","");我最后两个参数是空的,只是试了不行才加个sa上去试试的
      

  4.   

    我把登陆名和账户改过来,新的问题来了source not found
    the source attachment does not contain the source for the file JdbcOdbcDriver.class,
    you can change the source attachment by clicking change attached source blow:怎么回事 跪求大家的指点了 我已经搞了两天了 都是这些小问题
      

  5.   

    问题已经解决 是因为sql server的一个补丁没有下 下了就可以链接了 多谢大家