'Spring' 카테고리의 글 목록 (3 Page)
jaemeon's note
Spring
Spring_21) 그거 만료된 토큰인데요?
2026.01.01
세션 로그인 VS JWT 토큰 로그인세션 로그인과 JWT 토큰 로그인은 사용자 인증을 처리하는 두 가지 주요 방식이다. 세션 로그인은 서버가 사용자 상태를 관리하는 Stateful 방식이고, JWT 로그인은 서버가 상태를 관리하지 않는 Stateless 방식이다. 각각의 장단점을 이해하고 프로젝트 특성에 맞는 방식을 선택해야 한다.두 방식의 차이점을 명확히 알자로그인 방식을 선택하지 않으면 보안 취약점이 발생하거나 확장성 문제가 생길 수 있습니다. 세션 로그인은 서버 메모리 부하와 확장성 제약이 있고, JWT 로그인은 토큰 탈취 시 보안 위험이 있습니다. 각 방식의 특징을 이해하지 못하면 잘못된 선택으로 인해 성능 저하나 보안 문제가 발생할 수 있습니다.세션과 JWT 로그인 방식을 이해하면 프로젝트 특성..
Spring
Spring_20) 갑자기 내 Spring 페이지가 로그인을 요청하는 이유
2026.01.01
Topic (오늘의 주제)Spring Security는 Spring 기반 애플리케이션을 위한 보안 프레임워크로, 인증(Authentication)과 인가(Authorization)를 제공한다. 인증은 "누구인가"를 확인하는 과정이고, 인가는 "무엇을 할 수 있는가"를 확인하는 과정이다.Why (왜 사용하는가? 왜 중요한가?)보안이 없는 애플리케이션은 누구나 접근할 수 있어 데이터 유출, 무단 접근, 시스템 파괴 등의 심각한 보안 위험이 발생합니다. 인증 없이는 사용자 신원을 확인할 수 없고, 인가 없이는 권한에 따른 접근 제어가 불가능합니다.Spring Security는 인증과 인가를 체계적으로 관리하여 애플리케이션의 보안을 강화합니다. 다양한 인증 방식(폼 로그인, JWT, OAuth 등)을 지원하고,..
Spring
Spring_19) 내가 작성하지 않은 어노테이션, 함부로 지우면 안 되는 이유
2025.12.30
Topic (오늘의 주제)@SpringBootApplication은 Spring Boot 애플리케이션의 메인 클래스에 붙이는 어노테이션으로, 세 가지 핵심 기능을 하나로 통합한 편의 어노테이션이다. 이 어노테이션은 필수는 아니지만, Spring Boot의 자동 구성과 컴포넌트 스캔을 활성화하기 위해 거의 항상 사용된다.Why (왜 사용하는가? 왜 중요한가?)@SpringBootApplication 없이도 Spring Boot 애플리케이션을 만들 수 있지만, 세 가지 어노테이션(@Configuration, @EnableAutoConfiguration, @ComponentScan)을 각각 붙여야 하며 코드가 복잡해집니다. 또한 자동 구성과 컴포넌트 스캔이 활성화되지 않아 Spring Boot의 핵심 기능을 ..
Spring
Spring_18) 에러가 아닙니다. 예외입니다.
2025.12.30
Topic (오늘의 주제)에러가 아닙니다. 예외입니다.스프링이 선택한 안정적인 예외 처리 전략서비스 도중 에러가 나면 안된다.예외를 적절히 처리하지 않으면 사용자에게 스택 트레이스 같은 내부 에러 메시지가 노출되어 보안 위험이 증가하고, 어디서 실패했는지 찾기 어려워 디버깅 비용이 증가하며, 사용자 경험이 악화됩니다. 대규모 애플리케이션에서 예외 처리가 없으면 서비스 장애로 이어질 수 있습니다.Spring 예외 처리는 애플리케이션의 안정성과 신뢰성을 보장하는 핵심 요소입니다. 서버가 예외를 잡고 의미 있는 메시지로 변환하여 일관된 방식으로 응답하는 구조를 통해 개발 생산성을 높이고, 비즈니스 로직에 집중할 수 있게 합니다. 글로벌 예외 처리기를 통해 중복을 제거하고 유지보수성을 향상시킬 수 있습니다.예외..
Spring
Spring_17) 어노테이션 없는 스프링은 팥 없는 단팥빵
2025.12.26
Topic (오늘의 주제)스프링에서 사용하는 주요 어노테이션(@Component, @Service, @Repository, @Controller)의 역할과 차이점을 이해하고, 각 어노테이션을 언제 사용해야 하는지 학습한다.Why (왜 사용하는가? 왜 중요한가?)어노테이션 없이는 모든 클래스를 XML이나 Java Config로 직접 등록해야 하며, 설정 파일이 복잡해지고 유지보수가 어려워집니다. 또한 각 계층의 역할을 명확히 구분하기 어렵습니다.스프링 어노테이션을 사용하면 클래스에 어노테이션만 붙이면 자동으로 스프링 빈으로 등록되어 설정이 간소화됩니다. 각 어노테이션은 계층별 역할을 명확히 구분하여 코드의 가독성과 유지보수성을 향상시킵니다.@Component, @Service, @Repository, @C..