| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- input
- 자바
- 테스트자동화
- html
- 인텔리제이
- 단위테스트
- ArrayList
- js
- Array
- javascript
- HashMap
- IntelliJ
- junit5
- Java
- java테스트
- 자바스크립트
- vscode
- CSS
- Eclipse
- 자바문법
- 정규식
- 배열
- junit
- SpringBoot
- 스프링부트
- math
- list
- string
- Visual Studio Code
- 문자열
- Today
- Total
목록2026/02/19 (2)
어제 오늘 내일
지난 6편(이론편)에서 JWT는 "서버가 발급해 주는 위조 불가능한 출입증"이라고 배웠습니다.이제부터 실전입니다!기존 세션 방식을 버리고 JWT 방식을 적용하기 위해 가장 먼저 해야 할 일은'출입증을 찍어내는 기계(Provider)'를 만드는 것입니다.이 클래스 하나만 잘 만들어두면, 로그인할 때 토큰을 만들고, 요청이 올 때 토큰을 검사하는 모든 곳에서 핵심 부품으로 사용됩니다.Step 1. 의존성 추가 (build.gradle)JWT 기능을 구현하려면 외부 라이브러리가 필요합니다. Java 진영에서 가장 널리 쓰이는 jjwt 라이브러리를 추가합니다.파일: build.gradledependencies { // ... 기존 의존성 ... // JWT 라이브러리 (0.11.5 버전 사용) ..
지금까지 우리는 "세션(Session) 기반"의 로그인을 구현했습니다.사용자가 로그인하면 서버(Tomcat)의 메모리에 "이 사람 로그인했음!"이라고 적어두고,브라우저에게는 JSESSIONID라는 입장권을 줬죠.하지만 요즘 트렌드인 React, Vue, 모바일 앱(Android/iOS)과 통신하려면 세션 방식은 한계가 있습니다.그래서 등장한 것이 JWT(JSON Web Token)입니다.코드를 짜기 전에, "도대체 JWT가 뭐고, 세션이랑 뭐가 다른지" 명확히 짚고 넘어가는 이론편을 준비했습니다.(이걸 모르면 코드를 짜도 이해가 안 됩니다!)두 방식의 차이점을 '헬스장 이용'에 비유해서 아주 쉽게 설명해 드립니다.1. 세션(Session) 인증 방식 (우리가 지금까지 한 것)비유: "회원님 얼굴 기억해 ..