在Javaservlet中使用会话

在Javaservlet中使用会话,java,session,Java,Session,有人能告诉我如何在登录方法中使用会话吗?这里是我的登录代码,它工作正常。需要为此设置会话,但不知道如何 protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub String operation = request.getParame

有人能告诉我如何在登录方法中使用会话吗?这里是我的登录代码,它工作正常。需要为此设置会话,但不知道如何

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    // TODO Auto-generated method stub
    String operation = request.getParameter("operation");
    if(operation!=null && operation.equalsIgnoreCase("login")){
        loginDetail(request,response);
    }//else if(operation!=null && operation.equalsIgnoreCase("login")){
        //logout(request,response);
    //}
}

private void loginDetail(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{


    User u = new User();
    UserService us =new UserServiceImpl() ;

    String Uname = request.getParameter("txtUname");        
    String Pwrd = request.getParameter("txtPwrd");  

    u.setUname(Uname);
    u.setPwrd(Pwrd);

    System.out.println(Uname+""+Pwrd);
    try {
        if(us.Userlogin(u.getUname(),u.getPwrd())){     
            String message = "Thank you, " + Uname +"..You are now logged into the system";
            HttpSession session = request.getSession(true);
            session.setAttribute("username", Uname);
            session.setAttribute("password", Pwrd);         
            response.setContentType("text/html");
            request.setAttribute("message", message);
            request.getRequestDispatcher("/Menu.jsp").forward(request, response);
        }else {
            String message = "You have to register first or check Your user name password again!";              
            request.setAttribute("loginMsg", message);
            RequestDispatcher rd = getServletContext().getRequestDispatcher("/Login.jsp");
            rd.forward(request, response); 
        }
    } catch (Exception e) {
        // TODO Auto-generated catch block          
        e.printStackTrace();
    }
}
}

我只是在“if(us.Userlogin(u.getUname(),u.getPwrd())”语句中放了几行代码。请指导我完成这段代码。您的意思是希望通过您提到的代码登录,下次您不想再次登录以访问这些功能吗? 因此,您需要在会话对象中放置一个标志,指示跨越特定时间(例如30分钟)生命周期的登录状态。并且,每次请求到来时,您都会放置一个过滤器来查询该标志,以确定客户端是否已登录。
如果你是为了学习而做一个项目,这会很有用

您考虑过使用Spring安全性吗?看起来你是在重新发明轮子。你不应该在会话中的任何地方存储密码。您应该只使用它来检查它是否正确,然后丢弃它。另外,要小心被称为