用session写了一个实现用户登录,但是输入用户名和密码后,却返回还没登录。我个人认为是属性值没有传过去。但是不知道哪里有错。希望大神指点。谢谢
Login1.html
Insert title here用户名:
密 码:
IndexServlet1.java
//这个是欢迎页面,把doGet 方法贴出
//防止乱码
response.setContentType("text/html;charset=utf-8");
PrintWriter out = response.getWriter();
//创建一个session对象
HttpSession session = request.getSession();
User user = (User)session.getAttribute("user");
if(user == null){
out.print("您还没有登录,请登录");
}else{
out.println("欢迎登录"+user.getUsername()+"!");
out.println("退出");
//创建cookie存放session标识符
Cookie cookie = new Cookie("JSESSIONID", session.getId());
cookie.setMaxAge(60*30);
cookie.setPath("/TheSixSection");
response.addCookie(cookie);
}
LoginServlet.java
//显示doGet方法
response.setContentType("text/html;charset=utf-8");
PrintWriter out = response.getWriter();
String username = request.getParameter("username");
String password = request.getParameter("password");
//假设正确的用户名是:youli,密码是123
if(("youli").equals(username)&&("123").equals(password)){
User user = new User();
user.setUsername(username);
user.setPassword(password);
request.setAttribute("user", user);
response.sendRedirect("/TheSixSection/IndexServlet1");
}else{
out.write("用户名或密码错误,请重新登录");
}