| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 |
- oracle
- 프로그래머스
- MySQL
- 자바스크립트
- node.js
- 프런트엔드
- 미니정리
- 정리
- 서버
- 디자인 패턴
- 데이터베이스
- 자바
- jpa
- 오라클
- jsp
- SQL
- 백엔드
- BACK-END
- 스프링부트
- 코드테스트
- JavaScript
- 쿼리
- 스프링
- web
- Next.js
- 코드 테스트
- spring
- 알고리즘
- java
- 프론트엔드
- Today
- Total
참치코더의 꿈 메모장
JSP// 세션(session) 에 대한것 본문
세션 생성법
기본 : <%@ page session="true" %> // page에다가 session 속성을 true로 주면 세션이 생성된다. false로 주면 생성이 되지 않는다.
/*쿠키는 웹브라우저 에서 저장되는 속성이라고 생각하면 되고 서버에 저장되는 것을 세션이라고 생각하면 된다.*/
다른방법 : 위의 session 속성을 false로 만들고 request 기본 객체의 getSession( ) 메서드를 사용
ex) <%@ page session="false"%>
<%
HttpSession httpSession = request.getSession( );
List list = (List)httpSession.getAttribute("list");
list.add(productId);
%>
session 기본 객체
session.getId( ) : 세션의 ID를 구한다.
session.getCreationTime( ) : 세션이 언제 생성됬는지 생성된 시간을 구한다.
session.getLastAccessedTime( ) : 웹브라우저가 마지막으로 언제 세션에 접근 했는 지를 구하는 메서드이다.
세션에 값을 저장할 때는 속성을 사용하는데 속성에 값을 저장하려면 setAttribute( )를 사용하고 값을 얻을려면 getAttribute( )
메서드를 사용해야 한다.
session 종료
session.invalidate( ) : 메서드를 사용해서 세션을 종료한다.
session 유효시간
세션은 유효시간을 가지게 되는데 일정 유효시간 안에 세션에 접근하지 않으면 자동으로 세션을 종료한다.
1. 세션 유효시간 설정 방법 첫번째 : WEB-INF\web.xml 파일에 <session-config> 태그 사용하기.
ex) <session-config>
<session-timeout>100</session-timeout> //여기서는 분단위로 계산한다.
</session-config>
2. 세션 유효기간 설정 방법 두번째 : session 기본 객체가 제공하는 setMaxInactiveInterval( ) 메서드 사용하기.
ex) <%
session.setMaxInactiveInterval(60*30) // 여기서는 초 단위로 계산한다.
%>
세션의 유효시간을 0으로 설정하면 session.invalidate( )를 실행시키지 않는 이상 세션이 종료되지가 않는다.
따라서 세션 객체가 계속 메모리에 남아서 웹 컨테이너의 메모리 부족 현상이 발생하게 된다.
여러개의 세션 속성을 클래스로 편하게 하기
public class Member{ // 세션으로 설정할 속성들을 class로 묶는다.
private String id;
private String name;
private String email;
private boolean mail;
private int age;
}
<%
Member member = new Member(id,name); // id와 이름속성을 가질수 있다.
session.setAttribute("member",member); member 속성을 입력할수 있게 setAttribute에다가 설정을 한다.
%>
<%
Member member = (Member)session.getAttribute("member"); // member 속성에 있는 값을 읽어서 Member 객체에 전달한다.
%>
<%= member.getEmail().toLowerCase( )%>
'JSP' 카테고리의 다른 글
| JSP// JSP 기본객체와 영역 & 에러페이지 처리 (0) | 2020.03.21 |
|---|---|
| JSP// application 기본 객체 (0) | 2020.03.18 |
| JSP// out 기본객체, pageContext 기본객체 (0) | 2020.03.15 |
| JSP// 스크립트 요소 (0) | 2020.03.09 |
| JSP// 람다식 사용법 , 스트림 API_1 (0) | 2020.02.21 |