我遇到了我的登錄驗證代碼問題。我有以下驗證登錄的代碼:JSP Servlet登錄問題
String customer_number=request.getParameter("customerNumber");
String Passphrase=request.getParameter("passphrase");
Class.forName("com.mysql.jdbc.Driver");
java.sql.Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/test","db_erewhon");
Statement st= con.createStatement();
ResultSet rs=st.executeQuery("select * from Customers where customer_number='"+customer_number+"'");
if(rs.next())
{
if(rs.getString(2).equals(Passphrase)){
out.println("Welcome"+customer_number);
}
else
{
out.println("Customer ID or Passphrase are Invalid. Please try again");
}
}
我得到的customer_number無法解析並且密碼相同。有任何想法嗎?所有的變量通過包括銀行數據庫在內都是正確的。
這是一個現實世界的應用程序,或只是一些測試,以瞭解JSP? –
這是一個小型的個人項目,不會用於公共用途。 – Softey
我不想粗魯,但這是一個完美的例子,你不應該這樣做:使用scriptlets,不尊重命名約定,不縮進代碼,不使用準備好的語句,在會話中填充隨機事物,打開每個請求都有一個新連接,並且永遠不會關閉它。首先使用servlet而不是JSP來編寫Java代碼,至少編譯器會發現你的語法錯誤。 –