일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 백준
- 인프런
- 김영한
- Exception
- spring
- db
- java
- springdatajpa
- 스프링 핵심 원리
- 그리디
- Servlet
- QueryDSL
- JPQL
- Thymeleaf
- 자바
- jpa
- pointcut
- JDBC
- Greedy
- kotlin
- Proxy
- http
- AOP
- 스프링 핵심 기능
- 알고리즘
- Spring Boot
- Android
- SpringBoot
- transaction
- 스프링
- Today
- Total
목록HttpSession (4)
개발자되기 프로젝트
1. 현상 현재 로그아웃을 시도하면 화면이 바뀌지 않는다. 아래와 같이 로그아웃을 클릭하면 logcalhost:8080/logout 으로 접속하고 session이 있는 경우 session을 만료시킨다. 이후 localhost:8080/으로 redirect된다. 이때 localhost:8080/ 접속 시 세션에 로그인 회원에 대한 정보가 없으면 home.html 정보가 있으면 loginHome.html을 뿌려준다. 하지만 로그아웃을 시도해도 뷰가 변경되지 않는다.. 2. 원인 분석 localhost:8080/ 접속 시 처리하는 로직 중 세션 유뷰 확인 이후에 현재 세션에 담긴 정보를 찍어보자. 만약 로그아웃 시도 후 위에 작성한 로그가 남는다면, 세션 만료 처리가 되지 않아 발생하는 문제이다. 2021-1..
1. Session 정보를 출력해보자. session에서 time을 가져오면 타입이 long이다. new Date()에 넣어서 날짜 형식으로 바꿈. @Slf4j @RestController public class SessionInfoController { @GetMapping("/session-info") public String sessionInfo(HttpServletRequest request){ HttpSession session = request.getSession(); if(session == null){ return "세션이 없음"; } //세션 데이터 출력 session.getAttributeNames().asIterator() .forEachRemaining(name -> log.info..
1. @SessionAttribute Spring은 세션을 더 편리하게 사용할 수 있도록 @SessionAttribute 을 지원 이미 로그인 된 사용자를 찾을 때는 다음과 같이 하면 됨. 참고로 이 기능은 세션을 생성하지 않는다. -> create : false(required = false) @SessionAttribute(name = "loginMember", required = false) Member loginMember @SessionAttribute 기능 request에서 session을 꺼내고 session에서 name으로 쿠키 조회 해당 쿠키가 없으면 null 반환? 쿠키에서 JSESSIONID 조회 해당 JESSIONID로 member조회 세션을 찾고, 세션에 들어있는 데이터를 찾는 ..
Servlet은 HTTP Session기능 제공. 1. HttpSession 서블릿이 제공하는 HttpSession 도 앞서 만든 SessionManager 와 같은 방식으로 동작 서블릿을 통해 HttpSession 을 생성하면 다음과 같은 쿠키를 생성 쿠키 이름이 JSESSIONID 이고, 값은 추정 불가능한 랜덤 값이다. Cookie: JSESSIONID=5B78E23B513F50164D6FDD8C97B0AD05 HttpSession은 attribute(member정보), 쿠키 이름, 기타 정보(생성 시각, 마지막 요청 시각 등) 를 포함하는 객체. HttpServletRequest에서 httpRequest.getSession()을 통해 받을 수 있음. 2. HttpSession 사용 2.1 Sess..