如何使用JSP连接到Mysql数据库?我的代码中哪里错了?

时间:2016-07-28 21:18:25

标签: java mysql jsp tomcat netbeans

如何将jsp连接到mysql。哪里我错了?我的index.jsp页面正常工作。但我怀疑<%@ include file =“DB conn”%>什么应该写在表单操作中,我的DB conn.jsp文件有真正的错误。

如何使用jsp从此代码中删除错误。该错误是什么? 你的建议对我很重要,谢谢。

db conn.jsp

 <%@page import="com.mysql.jdbc.Connection"%>
 <%@page import="com.mysql.jdbc.Statement"%>
 <%@page import="java.sql.ResultSet"%>
 <%@page import="java.sql.DriverManager"%>
 <%@page contentType="text/html" pageEncoding="UTF-8"%>
 <!DOCTYPE html>
  <html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>JSP Page</title>
  </head>
   <body>
    <h1>Hello World!</h1>
   <%@ page import ="java.sql.*" %>
    <%
     Connection c1 = null;
     Statement st = null;
     ResultSet rs = null;

     Class.forName("com.mysql.jdbc.Driver");
     c1 = (Connection) DriverManager.getConnection("jdbc:mysql://localhost:3306/teacher","root", "abcde");
        {
         System.out.println("Couldn't find the driver!");
         System.out.println("Couldn't connect: print out a stack trace and exit.");
      System.out.println("We got an exception while creating a statement:" + "that probably means we're no longer connected.");

      st = (Statement) c1.createStatement();
          System.out.println("Statement Created Successfully");
             {
          System.out.println("We got an exception while creating a statement:" + "that probably means we're no longer connected.");  
           se.printStackTrace();}    //Stack Trace Added
           if (c1!= null) {
               System. out.println("Hooray! We connected to the database!");
            } else {
                System.out.println("We should never get here.");
            }}
            %>
              <%
       try{

        String name=request.getParameter("username");
        String abc=request.getParameter("password");       
        String Sql="select * from login where username='"+name+"' AND password='"+abc+"'";
        ResultSet rs=c1.st.executeQuery(Sql);   //error line
      while(rs.next())  {
      out.println("aa");}
       catch(SQLException ex)
         {
         out.println(ex);
         }
         %>

的index.jsp

      <%@page contentType="text/html" pageEncoding="UTF-8"%>
      <!DOCTYPE html>
      <html>
      <%@include file="db conn.jsp" %>
      <head>
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
       <title>JSP Page</title>
      </head>
      <body>
      <form  method="GET " action="reg.jsp" autocomplete="on"> 
      <h1>Log in</h1> 
        <p> 
     <label for="username" class="uname" data-icon="u" >Username:</label>
     <input id="username" name="username" required="required" type="text" placeholder="Username"/>
     </p>
     <p> 
     <label for="password" class="youpasswd" data-icon="p">Password:</label>
     <input id="password" name="password" required="required" type="password" placeholder="Password" /> 
     </p>
     <p class="keeplogin"> 
     <input type="checkbox" name="loginkeeping" id="loginkeeping" value="loginkeeping" /> 
     <label for="loginkeeping">Keep me logged in</label>
     </p>
     <p class="login button"> 
     <input type="submit" value="Login" /> 
     <input type="button" onclick="location.href='reg.jsp';" value="Sign Up"/>
     </p>

    <input type="radio" name="gender" value="Teach" checked/> Teacher
    <input type="radio" name="gender" value="Student"/>Student
     </form> 
     </body>
 </html>

错误

    HTTP Status 500 -
    type Exception report

    message

    description The server encountered an internal error () that prevented it from fulfilling this request.

    exception

    org.apache.jasper.JasperException: Exception in JSP: /db conn.jsp:62

    62:             while(rs.next())  {}

1 个答案:

答案 0 :(得分:0)

你能否在db conn.jsp中包含try和catch块?它可以解决你的问题。