Spring boot
-
@RequestMapping, @GetMapping, @PostMapping 등에 있는 consumes 나 produces 속성은Spring MVC 에서 컨트롤러 메서드가 어떤 타입의 요청 본문을 받아들 일 수 있는지와 응답을 할 수 있는지명시하는 역할을 한다. 1️⃣ 한 문장으로 요약consumes = 요청(Request) 의 Content-Type 을 제한하는 속성produces = 응답(Response) 를 어떤 형식으로 보낼지 제한하는 속성즉, 클라이언트가 HTTP 요청을 보낼 때 Content-Type 헤더가 consumes 에서 지정한 값과 일치해야요청한 컨트롤러 메서드가 호출된다. 2️⃣ 기본 문법@PostMapping(value = "/save", consumes = "application..
@RequestMapping 의 consumes 속성, produces 속성@RequestMapping, @GetMapping, @PostMapping 등에 있는 consumes 나 produces 속성은Spring MVC 에서 컨트롤러 메서드가 어떤 타입의 요청 본문을 받아들 일 수 있는지와 응답을 할 수 있는지명시하는 역할을 한다. 1️⃣ 한 문장으로 요약consumes = 요청(Request) 의 Content-Type 을 제한하는 속성produces = 응답(Response) 를 어떤 형식으로 보낼지 제한하는 속성즉, 클라이언트가 HTTP 요청을 보낼 때 Content-Type 헤더가 consumes 에서 지정한 값과 일치해야요청한 컨트롤러 메서드가 호출된다. 2️⃣ 기본 문법@PostMapping(value = "/save", consumes = "application..
2025.10.13 -
1️⃣ 직렬화(Serialization) 정의Java 객체 → 특정 포맷의 데이터로 변환하는 과정Spring 에서는 주로 HTTP 응답(Response) 으로 전송할 때 사용 예시Java 객체public class User { private String name = "홍길동"; private int age = 30; // getter/setter} 1. JSON 직렬화{"name":"홍길동","age":30} 2. XML 직렬화 홍길동 30 Spring 에서@RestController 에서 객체를 반환할 때 Spring 이 자동으로 직렬화를 수행Converter 역할 : Java 객체 → JSON/XML 등JSON : MappingJackson2HttpMessageConver..
직렬화, 역직렬화 (HttpMessageConverter)1️⃣ 직렬화(Serialization) 정의Java 객체 → 특정 포맷의 데이터로 변환하는 과정Spring 에서는 주로 HTTP 응답(Response) 으로 전송할 때 사용 예시Java 객체public class User { private String name = "홍길동"; private int age = 30; // getter/setter} 1. JSON 직렬화{"name":"홍길동","age":30} 2. XML 직렬화 홍길동 30 Spring 에서@RestController 에서 객체를 반환할 때 Spring 이 자동으로 직렬화를 수행Converter 역할 : Java 객체 → JSON/XML 등JSON : MappingJackson2HttpMessageConver..
2025.10.02 -
1. 컴파일러 수준(Java 컴파일 타임)@Servicepublic class UserService { private final UserRepository userRepository; // 생성자 파라미터 주입 public UserService(UserRepository userRepository) { this.userRepository = userRepository; }} 컴파일러는 단순히 생성자에 UserRepository 타입 파라미터가 필요하다는 사실만 기록한다.즉, 바이트코드 수준에서는UserService 를 만들려면 UserRepository 타입 인자가 필수라는게 명시된다.userRepository 는 final 이라서 생성자 호출 시 반드시 초기화되어 있어..
Spring Bean 생성 동작 과정1. 컴파일러 수준(Java 컴파일 타임)@Servicepublic class UserService { private final UserRepository userRepository; // 생성자 파라미터 주입 public UserService(UserRepository userRepository) { this.userRepository = userRepository; }} 컴파일러는 단순히 생성자에 UserRepository 타입 파라미터가 필요하다는 사실만 기록한다.즉, 바이트코드 수준에서는UserService 를 만들려면 UserRepository 타입 인자가 필수라는게 명시된다.userRepository 는 final 이라서 생성자 호출 시 반드시 초기화되어 있어..
2025.09.11 -
@ConditionalOnBean, @ConditionalOnExpression두개의 어노테이션들은 조건부 Bean 등록을 하는 어노테이션들이다.보통 @Configuration 클래스나 @Bean 메서드에 붙여서 특정 조건이 만족될 때만 Bean 등록할 수 있도록 한다. 1. @ConditionalOnBean정의: 어플리케이션 컨텍스트에 특정 Bean 이 존재할 경우 현재 Bean 을 등록하도록 조건을 거는 어노테이션용도: 어떤 기능이 다른 Bean 이 존재해야만 동작 가능한 경우 사용예시@Configurationpublic class MyConfig { @Bean public ServiceA serviceA() { System.out.println("================..
@ConditionalOnBean, @ConditionalOnExpression@ConditionalOnBean, @ConditionalOnExpression두개의 어노테이션들은 조건부 Bean 등록을 하는 어노테이션들이다.보통 @Configuration 클래스나 @Bean 메서드에 붙여서 특정 조건이 만족될 때만 Bean 등록할 수 있도록 한다. 1. @ConditionalOnBean정의: 어플리케이션 컨텍스트에 특정 Bean 이 존재할 경우 현재 Bean 을 등록하도록 조건을 거는 어노테이션용도: 어떤 기능이 다른 Bean 이 존재해야만 동작 가능한 경우 사용예시@Configurationpublic class MyConfig { @Bean public ServiceA serviceA() { System.out.println("================..
2025.09.09 -
🔑 STS(Git) 주요 용어 정리 1. CommitGit 개념 : 현재 변경된 파일(Working Tree → Staging Area)을 하나의 버전으로 저장하는 행위Git Staging 뷰에서 Staged Changes 에 있는 파일을 선택 → Commit 버튼메세지를 입력해야함🚩 결과 : 로컬 저장소(Local Repository)에만 기록된다. 아직 원격저장소에는 저장하지 않은 상태 2. PushGit 개념 : 로컬 저장소(Local Repository)에 Commit 한 데이터를 원격 저장소(Remote Repository) 에 업로드Team → Push Branch ... 또는 Git Staging 뷰에서 Commit and Push 가능🚩 결과 : 다른 팀원들이 원격 저장소에 있는 내..
STS git 사용용어 정리🔑 STS(Git) 주요 용어 정리 1. CommitGit 개념 : 현재 변경된 파일(Working Tree → Staging Area)을 하나의 버전으로 저장하는 행위Git Staging 뷰에서 Staged Changes 에 있는 파일을 선택 → Commit 버튼메세지를 입력해야함🚩 결과 : 로컬 저장소(Local Repository)에만 기록된다. 아직 원격저장소에는 저장하지 않은 상태 2. PushGit 개념 : 로컬 저장소(Local Repository)에 Commit 한 데이터를 원격 저장소(Remote Repository) 에 업로드Team → Push Branch ... 또는 Git Staging 뷰에서 Commit and Push 가능🚩 결과 : 다른 팀원들이 원격 저장소에 있는 내..
2025.09.02 -
SpringSessionBackedSessionRegistry 이란?Spring Security 의 동시 세션 제어 기능 및 Spring Session 을 사용하여 분산 환경(다중 서버)에서도동작하게 만들어주는 구현체입니다. SessionRegistry 란?Spring Security 의 SessionRegistry 인터페이스란 현재 로그인한 사용자의 세션 목록을 관리하고동시 세션 개수를 제어하는데 사용된다. public interface SessionRegistry { List getAllPrincipals(); List getAllSessions(Object principal, boolean includeExpiredSessions); SessionInformation getSess..
Spring Security SessionRegistry, SpringSessionBackedSessionRegistry<S extends Session>SpringSessionBackedSessionRegistry 이란?Spring Security 의 동시 세션 제어 기능 및 Spring Session 을 사용하여 분산 환경(다중 서버)에서도동작하게 만들어주는 구현체입니다. SessionRegistry 란?Spring Security 의 SessionRegistry 인터페이스란 현재 로그인한 사용자의 세션 목록을 관리하고동시 세션 개수를 제어하는데 사용된다. public interface SessionRegistry { List getAllPrincipals(); List getAllSessions(Object principal, boolean includeExpiredSessions); SessionInformation getSess..
2025.08.13