분류 전체보기
-
🧩 기본 개념 요약콜 스택(Call Stack)"지금 실행중인 함수들의 순서" 를 관리하는 실행 컨텍스트 스택LIPO (Last In, First Out) 마이크로태스크 큐(Microtask Queue)Promise .then() / await 이후 코드가 들어간다.콜 스택이 비면, 바로 이 큐에 작업이 우선 실행된다. 태스크 큐(Task Queue)setTimeout, setInterval 같은 일반 비동기 콜백이 들어간다.마이크로태스크보다 나중에 실행된다. 실행 컨텍스트우리가 작성한 Javascript 가 실행되는 환경을 실행 컨텍스트 환경이라고 한다.실행 컨텍스트는 콜 스택(Call Stack) 위에서 관리된다. 실행 컨텍스트는 두가지의 실행 컨텍스트가 존재한다.전역 실행 컨텍스트(Global E..
Javascript 실행순서(async, await)🧩 기본 개념 요약콜 스택(Call Stack)"지금 실행중인 함수들의 순서" 를 관리하는 실행 컨텍스트 스택LIPO (Last In, First Out) 마이크로태스크 큐(Microtask Queue)Promise .then() / await 이후 코드가 들어간다.콜 스택이 비면, 바로 이 큐에 작업이 우선 실행된다. 태스크 큐(Task Queue)setTimeout, setInterval 같은 일반 비동기 콜백이 들어간다.마이크로태스크보다 나중에 실행된다. 실행 컨텍스트우리가 작성한 Javascript 가 실행되는 환경을 실행 컨텍스트 환경이라고 한다.실행 컨텍스트는 콜 스택(Call Stack) 위에서 관리된다. 실행 컨텍스트는 두가지의 실행 컨텍스트가 존재한다.전역 실행 컨텍스트(Global E..
2025.10.16 -
@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