Servlet & JSP day9 - HttpSession HttpSession을 이용한 Session 관리 ☞ client의 상태값을 서버측에 저장하여 Session 관리 ☞ javax.servlet.http.HttpSession 객체를 이용하여 관리 ◎ 클라이언트의 상태값은 Attribute로 관리됨 ☞ 장점 ◎ 관리할 수 있는 상태값(클라이언트 데이터)의 종류나 크기나 개수의 제한이 없다. ◎ 서버에 저장되므로 cookie에 비해 보안상 유리 ☞ 단점 ◎ 서버에 부담 HttpSession 객체 생성 ☞ HttpServeltRequest객체.getSession() ◎ 기존 Session이 있으면 기존 Session객체를, 없으면 새로 생성하여 리턴 - ex) 주로 로그인 페이지에서 사용 ☞ HttpServletRequest객체.getSession(false).. 더보기 Servlet & JSP day8 - Session, Cookie Session 관리 ☞ HTTP 프로토콜은 stateless 한 특징을 가진다. ☞ Stateless - 상태유지를 못한다. -> 클라이언트의 데이터를 유지하지 못 함 Session ☞ 하나의 클라이언트가 프로그램을 시작해서 종료 할 때까지 ☞ 하나의 세션동안 여러번의 요청과 응답이 반복 될 수 있다. ☞ 하나의 세션동안 클라이언트의 데이터는 유지 되어야 한다. Session 관리 개념 ☞ HTTP프로토콜의 특징은 클라이언트의 상태를 유지 못하므로 CGI에서 지원 ☞ 방식 ◎ Cookie를 이용 ◎ Session을 이용 ◎ URLReWriting을 이용 Cookie를 이용한 Session 관리 ☞ 쿠키 ◎ 서버가 브라우저(Client)로 전송하는 text 데이터 ◎ 쿠키는 클라이언트의 정보를 유지하기 위.. 더보기 Servlet & JSP day8 - Multi-Thread 상황에서 Data 동기화 Multi-Thread 상황에서 Data 동기화(Synchronized) ☞ Local 변수 : X ☞ Instance 변수 : O ☞ Static 변수 : O Attribute ☞ Request Scope : X ☞ Session Scope : 이론적으로는 O, but 실제로는 X ☞ Application Scope : O 서블릿 입장에서 각각의 클라이언트는 service(), doGet(), doPost() 메서드를 통해 서블릿을 호출하는 다른 쓰레드이다. 서블릿이 단순히 요청을 읽고 응답을 반환하고 지역변수에 저장을 한다면, 각각의 쓰레드의 연결을 신경 쓸 필요가 없다. 그러나, 어떠한 정보가 비지역변수에 저장되면 각각의 클라이언트의 쓰레드가 서블릿의 비지역변수를 조작가능해진다. ex) 두 개의 요.. 더보기 이전 1 ··· 27 28 29 30 31 32 33 ··· 37 다음