Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/tfs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 登录页面输入正确的用户名和密码_Java_Jsp_Jdbc - Fatal编程技术网

Java 登录页面输入正确的用户名和密码

Java 登录页面输入正确的用户名和密码,java,jsp,jdbc,Java,Jsp,Jdbc,登录页面显示一条错误消息,指示登录失败,即使输入了正确的用户名和密码组合。这个问题的原因是什么 try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Connection conn = DriverManager.getConnection("jdbc:odbc:mydsn","sa","password@123"); String sql = "select customer_id, fname, lname, email_id, phone

登录页面显示一条错误消息,指示登录失败,即使输入了正确的用户名和密码组合。这个问题的原因是什么

try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection conn = DriverManager.getConnection("jdbc:odbc:mydsn","sa","password@123");
String sql = "select customer_id, fname, lname, email_id, phone_number from customer_details where user_name=? and password=?";
PreparedStatement stmt;
ResultSet rs = stmt.executeQuery();
if (rs.next()) {
session.setAttribute("customerId", rs.getString(1));
session.setAttribute("userName", userName);
session.setAttribute("fName", rs.getString(2));
session.setAttribute("lName", rs.getString(3));
session.setAttribute("emailId", rs.getString(4));
session.setAttribute("phoneNumber", rs.getString(5));
conn.close();
%>
<jsp:forward page="welcome.jsp" />
<%} else {%>
Sorry! You have entered an invalid username or password. Please try again.
<%}
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
试试看{
forName(“sun.jdbc.odbc.JdbcOdbcDriver”);
Connection conn=DriverManager.getConnection(“jdbc:odbc:mydsn”、“sa”password@123");
String sql=“从客户详细信息中选择客户id、fname、lname、电子邮件id、电话号码,其中用户名=?和密码=?”;
编制报表;
ResultSet rs=stmt.executeQuery();
如果(rs.next()){
setAttribute(“customerId”,rs.getString(1));
session.setAttribute(“用户名”,用户名);
session.setAttribute(“fName”,rs.getString(2));
session.setAttribute(“lName”,rs.getString(3));
setAttribute(“emailId”,rs.getString(4));
session.setAttribute(“phoneNumber”,rs.getString(5));
康涅狄格州关闭();
%>
抱歉!您输入的用户名或密码无效。请重试。
因为

PreparedStatement stmt;
ResultSet rs = stmt.executeQuery();
stmt
null

对您的代码没有什么建议:

  • 用java语言编写java代码
  • 正确处理异常
  • 这是因为

    PreparedStatement stmt;
    ResultSet rs = stmt.executeQuery();
    
    stmt
    null

    对您的代码没有什么建议:

    • 用java语言编写java代码
    • 正确处理异常

    使用此代码,您不可能得到带有“抱歉!您输入了无效的用户名或密码。请重试”的错误页面。它将引发HTTP 500内部服务器错误。使用此代码,您不可能得到带有“抱歉!您输入了无效的用户名或密码。请重试”的错误页面。它将引发HTTP 500内部服务器错误。