急求:jsp页面怎样获取 session值
我在登录后,用servlet存储登录信息,为什么在jsp页面中取不到呢?请各位大虾帮帮忙!
Servlet主要代码:
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=utf-8");
PrintWriter out = response.getWriter();
HttpSession session = request.getSession();
//获取参数名称
String stateName = request.getParameter("stateType");
String userName = request.getParameter("userName");
String userPass = request.getParameter("userPass");
if(userName == null || userName.equals("")){
out.println(" <script>alert('请输入用户名!');history.go(-1); </script>");
}else if(userPass == null || userPass.equals("")){
out.println(" <script>alert('请输入密码!');history.go(-1); </script>");
}else{
Dao dao = new DaoImpl();
int result = dao.getLoginUser(stateName, userName, userPass);
if(result > 0){
UserEntity user = new UserEntity();
user.setStateManager(stateName);
user.setUserName(userName);
//给session赋值
session.setAttribute("user", user);
//System.out.println(user.getStateManager());
request.getRequestDispatcher("/Report/index.jsp").forward(request, response);
}else{
out.println(" <script>alert('用户名或密码错误,请重新输入!');history.go(-1); </script>");
}
}
}
jsp页面代码:
//获取session值
UserEntity managerType = (UserEntity)session.getAttribute("user");
String manager = managerType.getStateManager();