교육 (Today I Learned)/SeSAC

SeSAC 42일차 / JSP

Bay Im 2023. 9. 17. 15:50
SeSAC 42일차(2023-09-13)
JSP


JSP

  • 객체의 범위
    • 영역에 따른 내장 객체들의 유효 범위
    • page
      • 서블릿 인스턴스의 _jspService() 메소드가 실행되는 동안 유효
    • request
      • 클라이언트의 요청이 처리되는 동안 유효
    • session
      • 세션이 유지되는 동안 유효
    • application
      • 해당 어플리케이션이 실행되는 동안 유효

 

  • request Object
    • JSP, 서블릿 컨테이너는 요청된 HTTP 메시지를 통해 HttpServletRequest 객체를 생성하고 request라는 이름으로 사용
    • public String getParameter(String name)
      • 요청 파라미터의 값을 리턴
    • public String getParameterNames()
      • 요청에 사용된 파라미터의 이름들을 리턴
    • public String getHeader(String headerName)
      • Http요청헤더에 지정된 헤더이름의 값을 리턴
    • public HttpSession getSession()
      • 세션 객체를 얻을 때
    • public Cookie[] getCookies()
      • 쿠키를 배열로 리턴

 

  • response Object
    • 요청을 시도한 클라이언트로 전송할 응답(HttpServletResponse)를 나타내는 객체, response 객체로 사용(변수명 사용)
    • public void addCookie(cookie)
    • public boolean ConstainsHeader(String headerName)
    • public void sendRedirect(String location) throws IOException

 

  • Session Object
    • 웹 서버와 클라이언트 간의 session 정보를 저장하고 있는 개체
    • public String getId()
      • jsp 컨테이너에 의해 할당 된 고유한 값인 세션 ID를 얻는다.
    • public void invalidate()
      • 해당 세션을 종료시킨다.
    • public boolean isNew()
      • 해당 세션이 새로 생성된 것인지 판단
    • public void setMaxInactiveInterval(int seconds)
      • 클라이언트의 요청이 없더라도 세션을 유지 할 시간을 초단위로 설정

 

  • 데이터 공유
    • session 범위에서의 데이터 공유
      • session 내장 객체를 사용하여 공유할 데이터 저장
      • session이 사용되는 페이지에서 사용
    • request 범위에서의 데이터 공유
      • request 내장 객체를 사용하여 공유할 데이터 저장
      • 요청된 페이지에서 사용
    • application 범위에서의 데이터 공유
      • application 내장 객체를 사용하여 공유할 데이터 저장
      • 모든 페이지에서 사용(다른 application도 가능)
728x90