본문 바로가기

교육/Servlet&JSP

[Servlet]상태정보 유지

1. ServletContext

    • 웹 어플리케이션 시작 시 생성
    • 웹 어플리케이션 내릴 때 제거
    • 웹 어플리케이션 단위
    • init()함수에서 servletconfig.getServletContext()
    • service()함수에서 this.getServletContext()
    • servletContext 변수
      • web.xml에서 선언
        • <context-param>
          • <param-name>파라미터 이름</param-name>
          • <param-value>파라미터 값</param-value>
        • </context-param> 
      • 변수 추출
        • sc.getInitParameter("파라미터이름");
    • 웹 어플리케이션 단위 정보 공유
      • sc.setAttribute("이름",값);
      • sc.getAttribute("이름");

2. HttpSession

    • 클라이언트가 처음 접속 시 생성
    • 클라이언트가 접속 종료 시 제거
      • Session ID가 삭제될때
        • 브라우저가 종료될 때
      • invalidate();호출 시
      • 유효시간이 경과되었을 때
    • 클라이언트 단위
    • 클라이언트 단위 정보 공유
      • session = req.getSession()
        • getSession(true);
          • getSession()과 같이 없으면 새로운 HttpSession객체를 생성하여 반환함
        • getSession(false);
          • 없으면 null 반환
      • session.setAttribute("이름", 값);
      • session.getAttribute("이름");

3. HttpServletRequest

    • 요청 시 생성
    • 응답 시 제거
    • 요청 단위
    • 요청 단위 정보 공유
      • req.setAttribute("이름", 값);
      • req.getAttribute("이름");
    • 요청 재지정
      • RequestDispatcher rd = sc.getRequestDispatcher("경로");
      • forward()
        • 바로 다음으로 넘긴다
      • include()
        • 요청페이지를 들러 다음으로 넘긴다.

4. 쿠키

    • 보안상 문제가 있는 데이터에는 사용하면 안됌
    • 2번째 줄까지는 서버가 보낸 데이터
    • 그 아래는 브라우저가 작성한 값
      • 쿠키이름
      • 쿠키 값
    • 생성
      • Cookie c = new Cookie("이름", 값);
      • res.addCookie(c);
    • 유효시간 설정
      • c.setMaxAge(정수 초 단위);
    • 추출
      • Cookie[] list = req.getCookies();
      • for(Cookie c : list)
      • c.getName(),c.getValue()


'교육 > Servlet&JSP' 카테고리의 다른 글

[JSP] 태그  (0) 2018.01.21
[Servlet] 필터,리스너, 에러처리  (0) 2018.01.21
[Servlet] 중요 파일들 의미와 위치  (0) 2018.01.21
[Servlet&JSP] 개발 환경 구축  (0) 2018.01.21
[Servlet&JSP] 기본 배경 지식  (0) 2018.01.21