Java登录JSP页面(使用Access数据库)

我有一个Java登录应用程序,可以使用微软访问数据库来validation登录详细信息。 我目前正在构建一个java Web应用程序,我只是想从我的工作示例中实现代码。

我的问题是我在这里有2个输入字段用于用户名和密码,(称为“名称”和“密码”)但我的SQL代码在上一个示例中有效,无法检测此页面上名为name和password的字段,其中用户会分别输入他们的细节。

任何帮助将非常感激!

          Angels & Demons Home Page    

Login

Please make sure to fill all fields!

User:
Password:
1){ JOptionPane.showMessageDialog(null,"Duplicte User, Access Denied"); } else{ JOptionPane.showMessageDialog(null,"User not found"); } } catch(Exception ex) { } } %> There was Problem in Login. }

你的代码有两个问题..

1)您希望在按钮点击时执行您的java代码。因此您应该检查按钮单击,然后在其中编写代码:

  //Define a name for button <% if(request.getParameter("bt")!=null) { if ((request.getParameter("name") != null ) && (request.getParameter("password") != null )) { //your code } } %> 

2)您没有在任何变量中存储您的用户名和密码,并且仍然使用您的文本字段的名称在查询中访问它们。将它们保存在变量中并在查询中使用该变量:

 String name= request.getParameter("name"); String pass= request.getParameter("password"); String sql = "select user,pass from AngelsAndDemons where user = '"+name+"'and pass = '"+pass+"'"; 

不要连接String 。 使用PreparedStatement来避免SQL注入。

还要避免在String变量上存储密码。 尽可能使用char[] ,并在使用后擦除它,以避免在内存中留下明文密码。