21년 3월 18일
한 일
- 세션
- Session은 각 사용자별로 독립적으로 생성된다.
- Key:Value로 이루어져 있다.
- Session은 sid를 갖고 있다.
- HTTP는 무상태 프로토콜이기 때문에, 쿠키로 sid를 저장하고 있다가 request에 sid를 담아 보냄으로써 본인의 Session에 접근할 수 있다.
- Session은 기본적으로 서버 메모리에 저장하고 있는다. (Session DB를 사용해 저장 가능 - Redis)
- 쿠키
- 쿠키는 사이트마자 생성된다.
- Key:Value로 이루어진 String 텍스트 파일
- 웹 접속시 접속자의 개인장치에 다운로드 되고 브라우저에 관리되는 작은 텍스트 파일
- 쿠키와 세션의 차이
- 자바와 자바스크립트만큼 다르다.
- 비교 대상이 아니다.
- 쿠키는 브라우저에 저장되고, 세션은 서버에 저장됩니다. (2% 부족한 답변)
- 로그아웃 과정
- session을 확인하여 valid한 계정인지 확인
- session을 삭제
- cookie의 만료시간을 now()로 하여 cookie도 삭제 (서버가 직접 삭제할수는 없음)
-
코드스쿼드 전체 과정 끝나고 공부할 것: JPA, Spring Security
- 오늘 나온 모르는 키워드
- JWT
- UUID
- 프로그래머스 문제 합승 택시 푸는 법을 알게 되었다 (플루이드 와샬)
- 합승 택시
- 플루이드 와샬(시간복잡도 n^3)을 통해 각 지점과 지점 사이의 최소 비용을 2차 배열로 저장한다.
- 모든 지점을 경유지에 넣어보며 (시작~경유지 비용) + (경유지~도착1 비용) + (경유지~도착2 비용) 의 최소값을 찾는다.
- 합승 택시
잘못한 것
- 스프링 질문 게시판 만들기 미션이 너무 밀려서 알고리즘 스터디 문제(합승 택시)를 풀지 못한채로 스터디에 참여했다.
잘한 것
느낌
- 거리 비용 문제는 무조건 다익스트라인 줄 알았는데 플루이드 와샬이라는 알고리즘도 알게 되어서 좋았다.
- 스터디를 통해 많이 배우는 것 같아서 좋다.
- 코드스쿼드 수업을 들을 때마다 여전히 모르는 키워드가 많다. 열심히 공부해야겠다.
할 일
- 인프런 스프링 핵심 원리 강의 듣기
- 코드스쿼드 미션 하기
- 프로그래머스 문제 풀기