๐ฅ ๋ง์ด๋ฐํฐ์ค, ์ธํฐ์ ํฐ, ๋น์ค์ฝํ 14๊ฐ ~ 16๊ฐ
1๏ธโฃ @SessionScope & ์ฑ๊ธํค & @RequestScope
@Component // Bean ๋ฑ๋ก
@SessionScope // ๋ธ๋ผ์ฐ์ ๋น 1๊ฐ
public class Rq {
@Getter
private int count = 0;
@Getter
private String name;
public void increaseCount() {
this.count ++;
}
}
@Configuration
@RequiredArgsConstructor
@Slf4j
public class NeedToLoginInterceptor implements HandlerInterceptor {
private final Rq rq;
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
log.debug("NeedToLoginInterceptor::preHandle ์คํ๋จ");
rq.increaseCount();
log.debug("rq : " + rq + ", rq count : " + rq.getCount());
// (์๋ต)
return HandlerInterceptor.super.preHandle(request, response, handler);
}
}
โ @SeesionScope โก๏ธ ๋ธ๋ผ์ฐ์ ๋น 1๊ฐ
โก ์ฑ๊ธํค โก๏ธ ์คํ๋ง๋ถํธ ์ฑ ๋น 1๊ฐ
โข @RequestScope โก๏ธ ์์ฒญ์ด ๋ค์ด์ฌ ๋ ๋ง๋ค ์์ฑ
๐ค ์ธํฐ์ ํฐ์์ Rq ๋ final ์ด๊ณ ์ฑ๊ธํค์ผ๋ก ๊ด๋ฆฌ๋๋๋ฐ @SessionScope ๊ฐ ์ ์ฉ๊ฐ๋ฅํ ์ด์ ๋?
โก๏ธ Java ์ ์์ ์ ์์๋ ๋ถ๊ฐ๋ฅํ๋ฉฐ ํ๋ก์(Proxy) ๊ฐ ๊ด๋ จ ๊ธฐ๋ฅ์ ์ํํด์ค๋ค.
๐ฆ ํ๋ก๊ทธ๋๋จธ์ค Java ๋ฌธ์ ํ์ด
๋ฐ๋ก ์ ๋ฆฌ : https://like099.tistory.com/82
[Programmers] Level 2 Java ๋ฌธ์ ํ์ด (2)
1๏ธโฃ ์ต์๊ฐ ๋ง๋ค๊ธฐ (https://school.programmers.co.kr/learn/courses/30/lessons/12941) 2๏ธโฃ ์ฌ๋ฐ๋ฅธ ๊ดํธ (https://school.programmers.co.kr/learn/courses/30/lessons/12909) โก๏ธ ํจ์จ์ฑ ํ ์คํธ ์คํจ 3๏ธโฃ ์ด์ง ๋ณํ ๋ฐ๋ณตํ๊ธฐ (h
like099.tistory.com
'TIL ๐' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| TIL 23์ผ์ฐจ (2022.12.29) (0) | 2023.01.02 |
|---|---|
| TIL 22์ผ์ฐจ (2022.12.03) (1) | 2022.12.03 |
| TIL 20์ผ์ฐจ (2022.11.07) (0) | 2022.11.07 |
| TIL 19์ผ์ฐจ (2022.11.04) (0) | 2022.11.04 |
| TIL 18์ผ์ฐจ (2022.11.03) (0) | 2022.11.03 |