2014년 5월 1일 목요일

[Java]session

  1. package blog.controller;
  2.  
  3. import java.io.IOException;
  4.  
  5. import javax.servlet.ServletException;
  6. import javax.servlet.annotation.WebServlet;
  7. import javax.servlet.http.HttpServlet;
  8. import javax.servlet.http.HttpServletRequest;
  9. import javax.servlet.http.HttpServletResponse;
  10. import javax.servlet.http.HttpSession;
  11.  
  12. import blog.model.Member;
  13. import blog.model.MemberDao;
  14.  
  15. @WebServlet("/LoginAction.blog")
  16. public class LoginAction extends HttpServlet {
  17.     protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  18.         request.setCharacterEncoding("utf-8");
  19.         String id = request.getParameter("id");
  20.         String pw = request.getParameter("pw");
  21.         // System.out.println("LoginAction param id:"+id);
  22.         // System.out.println("LoginAction param pw:"+pw);
  23.         MemberDao dao = new MemberDao();
  24.         Member member = dao.login(new Member(id,pw));
  25.         // System.out.println(member);
  26.         if(member != null ){
  27.             HttpSession session = request.getSession();
  28.             //"login_info"는 세션에 저장된 특정 값을 불러오기 위한 키
  29.             session.setAttribute("login_info", member);
  30.         }
  31.        
  32.         response.sendRedirect("/index.jsp");
  33.     }
  34.  
  35. }
session.setAttribute(String name, Object value);
String name은 세션에 값을 저장하기 위해서는 그 세션을 식별하는 키가 있어야하는데 
name이 세션에 저장된 특정 값을 찾아오기 위한 키로 사용된다. name과 value는 1:1 대응이며 value는 Object형이여야 한다. 

위 코드에서는 object형의 member를 login_info라는 이름으로 저장한다.

댓글 없음:

댓글 쓰기