스프링 Session 쇼핑몰 방금 본 상품&권한 지난 시간에는 스프링 session으로 회원가입을 하고, 자동로그인을 코드로 구현해 보았다. 이전 포스팅과 이어지는 포스팅이라서 이전 포스팅을 참고하고 오면 좋을것 같다. 이번 시간에는 회원가입 후 가입한 내용으로 로그인 로직을 구현해보고, 쇼핑몰에서 방금 내가 봤던 상품을 띄워주는 로직과 사장님만 들어갈 수 있는 admin 페이지 비슷한 내용을 만들어 볼려고한다. loginPage 생성 먼저 아래와 같이 로그인 페이지를 생성해준다. login login 회원가입을 아직 안하셨나요? ${msg} UserRepository 유저 조회 UserRepository 클래스에서 유저정보를 찾는 로직을 작성한다. 없으면 없다는 메시지를 전달하기 위해서 Map을 이용해..
세션의 개념과 원리 - 몽실이의 아이폰12 구입하기 스프링 세션의 구현 지난 포스팅에서 세션에 대해서 몽실이가 아마존에서 아이폰12를 구입하는 과정을 예로들어서 설명을 했다. 세션이라는 기술이 존재하면, 어떤 편리함이 있는지 글로써 설명을 했다. 이번 포스팅에서는 글로 예시로든 내용을 코드로 구현해보자. 먼저 세션을 이용해서 2가지 문제를 해결하고자 한다. 첫번째로 로그인을 했는데, 창을닫고 다시 들어오면 또 다시 로그인을 해야되는 문제를 해결한다. 즉, 세션을 이용해서 자동로그인을 구현한다. 두번째는 쇼핑하다가 창이 닫혔는데, 방금 보았던 상품이 기억이 안나는 문제를 해결한다. 창을 닫고 들어와도 내가 클릭한 상품을 세션을 이용해서 띄워줄 수 있도록 해보자. 1.프로젝트 생성 스프링 프로젝트로 진행을 ..
세션의 탄생 일상에서 웹브라우저를 열어서 무엇인가를 검색할때 세션이라고 하는 기술을 사용을 한다. 왜 세션이라는 기술을 사용할까? 그 이유는 웹브라우저는 사용자의 상태를 알지 못하기 때문이다. 좀 더 풀어서 말하면 HTTP 프로토콜은 TCP/IP라는 통신을 하는데, 이때 사용자는 어떤 검색어를 검색창에 입력하고 엔터를 누르면 웹브라우저에서 서버로 요청이 발생된다. 그리고 서버에서 응답을 한다. 그리고는 연결이 종료된다. 더 쉽게 예를 들어 보자. 1.몽실이가 아마존 사이트에 회원가입을 하고 로그인을 했다. 2.몽실이는 새아이폰을 구입하려고 아이폰12를 검색했다. 3.이때 아마존 웹사이트 화면에서 아마존 서버로 요청이 발생한다. (www.amazon.com/search?productname=ipone 대략..