원본 본문으로 이동하기

스프링 부트 세션 컴포넌트

박용서 - 스프링 부트 세션 시리즈 스프링 부트 레디스 세션 연동 https://gs.saro.me/#!m=elec&jn=783 스프링 부트 세션 스코프빈 https://gs.saro.me/#!m=elec&jn=784 스프링 부트 세션 컴포넌트 https://gs.saro.me/#!m=elec&jn=785 서론 이전 강의 스코프빈에서 하나의 문제가 생겼습니다. [미디어]가리사니 1-153.png[/미디어] 위에서 처럼 클래스 전체를 시리얼라이즈로 쓴다면, 하나의 클래스에 대량의 맴버가 들어갈때.. 단순히 하나의 맴버만 수정하거나 로드할때 너무많은 자원을 소비할 것 입니다. 그래서 HttpSession 를 @Autowired 가 될지 테스트 해보았습니다. SessionWire @Component public class SessionWire { @Autowired HttpSession httpSession; private final static String NAME = "NAME"; public String getName() { return (String)httpSession.getAttribute(NAME); } public void setName(String name) { httpSession.setAttribute(NAME, name); } public String getId() { return httpSession.getId(); } public String toString() { return getId() + " : " + getName(); } } 컨트롤러 @Controller public class UsingSessionTestController { // 세션 컴포넌트 @Autowired SessionWire sessionWire; @ResponseBody @RequestMapping(path="/se-set", produces="text/plain") public String seSet() { sessionWire.setName("hello!! session"); return "SET session"; } @ResponseBody @RequestMapping(path="/se-get", produces="text/plain") public String seGet() { return sessionWire.toString(); } } 실행 [미디어]가리사니 1-154.png[/미디어] 보시는 것과 같이 적용되었습니다. 조만간 스프링의 전체적인 생명주기나 흐름을 조사해서 강의로 써봐야할 것 같습니다. - 인증서 스프링 Redis