Spring Boot에서 로그인 기능을 구현하려고 하면 많은 개발자가 여기서 막힙니다. 세션 로그인과 JWT 로그인은 무엇이 다르고, Spring Security 설정은 어떻게 잡아야 하며, Access Token과 Refresh Token은 어디서 발급하고 어떻게 검증해야 하는지 한 번에 정리되지 않기 때문입니다.특히 JWT 로그인은 단순히 토큰 하나 발급해서 끝나는 구조가 아닙니다. 인증 필터, Security 설정, 토큰 생성, 토큰 검증, 만료 처리, Refresh Token 재발급 흐름까지 같이 봐야 실제 서비스에 넣을 수 있습니다. 그래서 이 글에서는 개념 설명과 함께 실제 구현 흐름, 자주 막히는 포인트, 확인 방법까지 같이 정리합니다.결론부터 말하면 Spring Boot JWT 로그인 구현..
ORM이란 무엇인가? JPA 포함 개념 정리와 SQL과의 차이Java나 Spring Boot를 공부하다 보면 JPA, Hibernate, Entity, 영속성 컨텍스트 같은 용어를 자주 보게 됩니다. 그런데 이 용어들을 제대로 이해하려면 가장 먼저 ORM부터 정확히 잡아야 합니다.많은 분들이 JPA = ORM 정도로 이해하지만, 정확히는 다릅니다.먼저 핵심부터ORM은 객체와 관계형 데이터베이스를 매핑하는 방식입니다.JPA는 자바에서 ORM을 사용하기 위한 표준 명세입니다.Hibernate는 JPA를 실제로 동작하게 만드는 대표 구현체입니다.이번 글에서는 ORM이 무엇인지, 왜 필요한지, SQL과 어떤 차이가 있는지, 그리고 JPA와 Hibernate는 어떤 관계인지까지 흐름대로 정리해보겠습니다.ORM은 ..
GET/POST/PUT/PATCH/DELETE를 어떻게 구현할까?REST API를 공부하다 보면 GET, POST, PUT, PATCH, DELETE는 자주 보는데, 막상 Spring Boot에서 실제 CRUD 코드로 옮기려고 하면 헷갈리는 경우가 많습니다.특히 초보 단계에서는 아래 질문이 자주 나옵니다.GET과 POST는 알겠는데 PUT과 PATCH는 정확히 뭐가 다를까?CRUD API를 만들 때 메서드를 어떻게 나눠야 할까?컨트롤러, 서비스, DTO는 어떤 식으로 연결해야 할까?이번 글에서는 회원(User) 관리 예제를 기준으로, Spring Boot에서 GET/POST/PUT/PATCH/DELETE를 실제 CRUD로 어떻게 구현하는지 쉽게 정리해보겠습니다.1. 먼저 CRUD와 HTTP 메서드를 연결..
REST API란 무엇일까?백엔드나 Java 웹 개발을 공부하다 보면 REST API, RESTful API라는 표현을 정말 자주 보게 됩니다. 특히 Spring Boot로 프로젝트를 시작하면 거의 기본처럼 등장하죠.그런데 처음 접하면 이런 생각이 듭니다.API는 알겠는데 REST는 뭐지?URL만 예쁘게 만들면 RESTful한 걸까?GET, POST만 잘 쓰면 되는 걸까?이번 글에서는 Java 기준으로 REST API가 무엇인지, 왜 쓰는지, 그리고 RESTful하게 설계할 때 어떤 원칙을 봐야 하는지를 쉽게 정리해보겠습니다.1. API와 REST를 먼저 구분해보자API란?API(Application Programming Interface)는 프로그램끼리 대화하는 창구라고 보면 됩니다.예를 들어,프론트엔..

