인터넷뱅킹을 생각해보자. 로그인을 하면 이체, 조회 메뉴등에서 나의 자산을 관리할 수 있고, 10분 뒤 자동으로 로그아웃 된다는 걸 본 적 있을 것이다. 웹 페이지는 하나의 웹 프로그램과 동일한데, 어떻게 단 한번의 로그인 만으로 기능을 모두 이용하고, 제한 시간까지 둘 수 있는 것일까?
클라이언트와 서버 간의 연결 단위
만약 웹사이트에 5명의 사용자가 접속한 상태라면 "5개의 Session이 생성되었다." 라고 표현한다.
Inside JSP : 몇번 브라우저가 접속했네? 얘를 몇번으로 관리하자 하는 메모리에 변수가 생김.
10분뒤 로그아웃? → 세션 시간 10분. (기본값 30분)
서버 운영체제 설정 파일에 최대 업로드 가능용량, 세션 유지시간 있을거임 거기서 설정해줌
→ 프로그램에서도 세션 시간 설정이 가능하나, 운영체제 설정파일이 제일 세다.
사이트 내의 모든 페이지들간의 공유할 수 있는 데이터(전역변수)
놀이공원의 자유이용권 같은 개념. 놀이기구를 탈때 자유이용권을 보여줘야 탈 수 있다.
웹 서버는 접속한 사용자를 구분하기 위해 메모리 영역을 할당하는데, 이를 JsessionID라고 한다.
각 브라우저가 접속하면 제이세션 아이디를 줌 (브라우저에 쿠키로 저장)
페이지 요청할때마다 난 몇번 제이세션 아이디에요 확인, 설정하는 것
http 프로토콜 : 페이지 요청마다 새로운 요청임. 계속 이어져있는게 아님. 계속 이어져있는 것 처럼 관리하기 위해 웹상태 유지기법이 쓰인다. 각 페이지들은 독립된 프로그램인데 이걸 하나의 사이트, 거대한 프로그램으로 묶어서 한번 요청하면 땡임.
프로그램의 단위 : 한번 요청해서 한번 응답을 주는 하나의 일련된 동작. 정확히는 메인01에서 run 눌렀을때 콘솔에 나오는... 한번의 실행 주체. 하나의 시작 흐름.
세션이 있으면 로그인 UI를 보여줄 필요가 없음 로그아웃 UI를 보여주면 댐
http-equiv 속성은 HTTP 응답 헤더를 시뮬레이션할 때 사용할 수 있습니다.
만약 http-equiv 속성이 명시되어 있다면, 반드시 content 속성도 함께 명시되어야만 합니다.
https://tcpschool.com/html-tag-attrs/meta-http-equiv
원격 저장소에 등록되어 있는 라이브러리의 정보를 명시한 XML 파일을 토대로 프로젝트에서 사용되는 각종 라이브러리(jar파일)들에 대한 다운로드와 Java Build Path 설정을 자동화 하는 도구
ejb : 엔터프라이즈 자바빈즈(Enterprise JavaBeans; EJB)는 기업환경의 시스템을 구현하기 위한 서버측 컴포넌트 모델이다. 즉, EJB는 애플리케이션의 업무 로직을 가지고 있는 서버 애플리케이션이다. 라이브러리 다 덕지덕지 붙이니 속도가 느려져서 초심으로 돌아가자고 나온게 POJO. 그리고 그와 연관있는게 Maven이다.
시스템의 모든 동작과정을 기록해 놓은 텍스트 파일
DEBUG : 프로그래머 입장에서 나이스. 트레이스는 성능 향상을 위해
운영중일때는 warn이나 error로 설정함.