Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/354.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/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_Servlets - Fatal编程技术网

Java 如何将地图中的元素与其他元素进行比较?

Java 如何将地图中的元素与其他元素进行比较?,java,jsp,servlets,Java,Jsp,Servlets,我正在尝试使用JSP表单创建一个简单的登录页面,并通过servlet显示主页。我在hashmap中存储了两个用户名和密码。我想将用户输入的用户名和密码与hashmap中的用户名和密码进行比较,如果用户名或密码错误,则显示一条错误消息。如何实现这 短暂性脑缺血发作 Login.jsp <%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> &

我正在尝试使用JSP表单创建一个简单的登录页面,并通过servlet显示主页。我在hashmap中存储了两个用户名和密码。我想将用户输入的用户名和密码与hashmap中的用户名和密码进行比较,如果用户名或密码错误,则显示一条错误消息。如何实现这 短暂性脑缺血发作

Login.jsp

  <%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
  <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  <html>
  <head>
  <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  <title>Login</title>
  </head>
  <body>
  <center>
  <b>LOGIN PAGE</b><br>
  </center>
  <form name="login" method="post" action="Servlet1">
  <center>
  USER NAME: <input type="text" name="username"> 
  <br>
  <br>
  PASSWORD: <input type="password"> 
  <br>
  <br> 
  <input type="submit" value="LOGIN">
  </center>
  </form>
  </body>

登录
登录页面
用户名:

密码:

Servlet1.java

  public class Servlet1 extends HttpServlet{

  public void doPost(HttpServletRequest request,HttpServletResponse response)
throws IOException{

    String username;
    String password;
    String uname;
    String pwd;

    username = request.getParameter("username");
    password = request.getParameter("password");
    PrintWriter out = response.getWriter();

    Map<String,String>users = new HashMap<String,String>();
    users.put("Sheetal", "sss");
    users.put("Raj","rrr");

    }
    }
公共类Servlet1扩展了HttpServlet{
public void doPost(HttpServletRequest请求、HttpServletResponse响应)
抛出IOException{
字符串用户名;
字符串密码;
字符串uname;
字符串pwd;
username=request.getParameter(“用户名”);
password=request.getParameter(“密码”);
PrintWriter out=response.getWriter();
Mapusers=newhashmap();
用户。put(“Sheetal”、“sss”);
用户。put(“Raj”、“rrr”);
}
}

从地图中检索用户密码,并对照提供的密码进行检查

boolean valid = password.equals(users.get(username));
import java.util.HashMap;
导入java.util.Map;
班长{
公共静态void main(字符串参数[]){
映射凭据=新的HashMap();
凭证。放置(“用户”、“正确通行证”);
字符串inputUsername=“user”;
字符串inputPassword=“correctpass”;
字符串passOnMap=credentials.get(inputUsername);
if(passOnMap!=null
&&passOnMap.equals(inputPassword)){
//正确登录
}否则{
//错误的用户/密码
}
}
}
公共类Servlet1扩展了HttpServlet{
最终映射用户=新HashMap();
@凌驾
public void init()引发ServletException{
//用户名作为密钥,对每个用户都是唯一的。密码作为值。
用户。put(“用户1”、“pwd1”);
用户。put(“用户2”、“pwd2”);
用户。put(“用户3”、“pwd3”);
用户。put(“用户4”、“pwd4”);
用户。put(“用户5”、“pwd5”);
}
@凌驾
public void doPost(HttpServletRequest请求,HttpServletResponse响应)抛出ServletException,IOException
{
字符串strUserName=request.getParameter(“user1”);
字符串strPassword=request.getParameter(“pwd1”);
字符串userpassword=users.get(strUserName);
如果(userpassword!=null
&&userpassword.equals(strPassword)){
//登录成功
}否则{
//无效用户
}
}
}
公共布尔校验访问(地图用户、字符串用户名、字符串密码){
布尔retunValue=boolean.FALSE;
if(users!=null&&users.size()>0&&username.isEmpty()
&&!password.isEmpty()){
if(users.get(username)!=null){
if(password.equals(users.get(username)))
retunValue=true;
}
}
返回返回值;
}

到目前为止,您的代码在哪里?请记住,通过这种方式,查找用户名是区分大小写的,您可能不想这样做(例如,电子邮件地址实际上不区分大小写)。一种避免这种情况的方法是将键存储为大写或小写。
public boolean checkAccess(String username,String password){
   return password.equals(users.get(username));
}
import java.util.HashMap;
import java.util.Map;

class Main {

    public static void main(String args[]) {
            Map<String, String> credentials = new HashMap<String, String>();
            credentials.put("user", "correctpass");

            String inputUsername = "user";
            String inputPassword = "correctpass";

            String passOnMap = credentials.get(inputUsername);
            if (passOnMap != null
                    && passOnMap.equals(inputPassword)) {
                    // correct login
            } else {
                    // wrong user/passw
            }
    }
}
public class Servlet1 extends HttpServlet{    

        final Map<String, String> users = new HashMap<>();

        @Override
        public void init() throws ServletException {
            // user name as key and it is unique for every user. password as value.
            users.put("user1", "pwd1"); 
            users.put("user2", "pwd2");
            users.put("user3", "pwd3");
            users.put("user4", "pwd4");
            users.put("user5", "pwd5");
        }


         @Override
            public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
            {
                String strUserName = request.getParameter("user1"); 
                String strPassword = request.getParameter("pwd1");

                String userpassword = users.get(strUserName);
                if (userpassword != null
                        && userpassword.equals(strPassword)) {
                        // login success
                } else {
                        // invalid user
                }

            }
      }
public boolean checkAccess(Map<String, String> users, String username,String password) {
    boolean retunValue = Boolean.FALSE;
    if (users != null && users.size() > 0 && !username.isEmpty()
            && !password.isEmpty()) {
        if (users.get(username) != null) {
            if (password.equals(users.get(username)))
                retunValue = true;
        }
    }
    return retunValue;
}