본문 바로가기
반응형

springboot4

[SpringSecurity] JWT를 선택한 이유 & JWT 인증 플로우 개요 웹 애플리케이션 토이 프로젝트 진행 중, 사용자 인증 방식으로 JWT와 세션 중 어떤 방식을 적용할지 고민하게 되었다. 두 방식을 간단히 비교해 보고, JWT를 선택한 이유와 동작 원리에 대해 작성해보고자 한다. 세션과 JWT의 특징을 알아보자 ✅ 세션(Session)클라이언트로 부터 들어오는 일련의 요청을 하나의 상태로 보고 그 상태를 일정하게 유지시키는 기술이다.세션은 서버측에서 세션을 관리하고, 클라이언트는 세션 ID (JSESSIONID)를 통해 인증을 처리한다.서버에서 세션을 관리하기 때문에 요청이 많아지면 서버에 부하가 심해진다. ✅ JWT (Json Web Token)JSON 포맷을 이용하여 사용자에 대한 최소한의 속성을 저장하는 Claim 기반 토큰이다.JWT는 서버가 발급하고.. 2025. 5. 8.
Communications link failure 에러 해결 (docker + mysql + SpringBoot) 문제상황 Docker를 사용하여 동일한 버전에서의 실행환경을 구축하기 위하여 MySQL과 Spring Boot 앱을 각각의 도커 컨테이너로 실행시키고자 했다. 발생한 오류는 다음과 같다. Caused by: cohttp://m.mysql.cj.exceptions.CJCommunicationsException: Communications link failure Hibernate가 MySQL과 연결을 시도했는데, 연결에 실패했다 원인을 파악해 보자 이전 프로젝트를 진행하면서, 이 오류를 몇 번 마주친 적이 있다. 가장 먼저 떠올렸던 원인은 첫 번째, application.yml 파일에서 DB설정 오류spring: datasource: url: jdbc:mysql://localhost:3306/{p.. 2025. 4. 25.
[JPA] 게시판 프로젝트 - 로그인 및 게시판 메인화면 구현, Spring Security를 사용한 로그인 (4) 이전 개발 단계 보러 가기 https://taetae99.tistory.com/30 벡엔드 토이 프로젝트 (게시판) - 게시글,댓글 기능 개발 및 테스트 (3)이전 개발 단계 보러 가기https://taetae99.tistory.com/28 벡엔드 토이 프로젝트 (게시판) - 도메인 설계 및 회원 기능 개발 및 테스트 (2)이전 개발 단계 보러 가기https://taetae99.tistory.com/27 벡엔드 토이taetae99.tistory.com   목차    1. 게시판 메인 화면 구현 화면 구현 없이 개발을 진행하다 보니 한계를 느꼈고 메인 화면부터 차근차근 구현하며 개발을 하기로 했다.  1. 메인 화면    비로그인과 로그인에는 네비게이션 바 버튼의 기능에 차이점이 존재한다.로그인 시에는 네.. 2025. 1. 17.
[JPA] 게시판 프로젝트 - 게시글,댓글 기능 개발 및 테스트 (3) 이전 개발 단계 보러 가기https://taetae99.tistory.com/28 벡엔드 토이 프로젝트 (게시판) - 도메인 설계 및 회원 기능 개발 및 테스트 (2)이전 개발 단계 보러 가기https://taetae99.tistory.com/27 벡엔드 토이 프로젝트 (게시판) - 프로젝트 명세서 작성 (1)목차     0. 프로젝트를 시작하며 간단한 프로젝트를 진행하며 학습과 기록에 의taetae99.tistory.com  목차     1. 게시글 기능 개발(PostRepository, PostService)  1. PostRepository @Repository@RequiredArgsConstructorpublic class PostRepository { private final EntityM.. 2025. 1. 9.
반응형