트랜잭션(Transaction) 데이터베이스의 상태 변화를 위한 하나의 논리적 기능을 수행하는 작업 단위 데이터베이스의 상태를 변화시킨다는 의미는 SQL을 이용하여 데이터베이스에 접근하는 것을 의미 작업 단위는 사람이 정하는 기준에 따라 한꺼번에 모두 수행되어야 할 일련의 연산 트랜잭션의 Commit과 Rollback 1) Commit 연산 하나의 트랜잭션이 성공적으로 끝나서 데이터베이스가 일관성 있는 상태에 있음을 의미 2) Rollback 연산 하나의 트랜잭션 처리가 비정상적으로 종료되어 트랜잭션의 원자성이 깨진 상태를 의미. 트랜잭션의 원자성을 지키기 위해 해당 트랜잭션이 행한 모든 연산을 재시작하거나 취소(Undo)함 트랜잭션 성질(ACID) 데이터의 무결성(Interity)을 보장하기 위해 DB..
@SpringBootTest + @AutoConfigureMockMvc 특징 프로젝트 내부 스프링 빈을 모두 등록하여 테스트에 필요한 의존성 추가 실제 운영 환경에서 사용될 클래스를 통합 테스트 단위 테스트와 같은 기능 테스트가 아닌 전체적인 흐름과 동작을 검증 장점 모든 스프링 빈을 등록하기에 운영환경과 가장 유사한 테스트 가능 단점 테스트 단위가 크기에 디버깅 쉽지 않음 비교적 로딩시간이 오래 걸림 @WebMvcTest 특징 MVC를 위한 테스트, Controller가 예상대로 동작하는지 테스트하기 위함 Web Layer만 로드 해당 어노테이션 사용 시 다음과 같은 항목만 제한하여 스캔하기에 빠르고 가벼운 테스트 가능 Security, Filter, Interceptor, request/respons..
스프링 REST 클라이언트 Spring에서 제공하는 Http 통신에 사용 을 할 수 있는 Rest한 Client Template REST 클라이언트는 스프링 프레임워크가 제공하는 것이고, 스프링부트는 REST 클라이언트를 쉽게 사용할 수 있도록 RestTemplateBuilder, WebClient.Builder을 Bean으로 등록 Builder를 주입받아, 필요 시 build()를 통해 rest client 인스턴스를 생성해서 사용 spring6 (spring-boot 3) 에서 활용 가능한 3가지 Rest API 활용 방법 RestTemplate WebClient HttpInterface RestTemplate Blocking I/O 기반의 Synchronous API이다. 많은 사람들이 사용하고 있..
Implementation 알고리즘? 문제를 풀기 위한 머릿속 알고리즘을 코드로 작성하는 과정을 구현이라한다. 사실 모든 알고리즘 문제는 코드를 통한 해결이기에 모든 범주를 포함하는 유형이다. 논리적 사고를 판단할 수 있는 가장 기본 난이도 문제로 그리디와 같이 1~2번 문제로 자주 출제 문제유형 : 풀이를 떠올리기는 쉽지만, 코드구현이 복잡하거나 어려움. -> 문법 또는 경험이 요구된다. 피지컬을 요구하는 문제이다. -> 피지컬 : 문법에 능숙하고 코드를 빠르게 작성하는 것 완전탐색, 시뮬레이션 문제가 포함될 수 있다. -> 완전탐색 : 모든 경우를 다 계산하는 해결방법 -> 시뮬레이션 : 문제에서 요구되는 알고리즘을 한 단계식 직접 수행 구현하기 어려운 문제? 간단한 알고리즘이지만 구현 시 코드가 길..
스프링 컨테이너 ? 스프링 컨테이너는 스프링 프레임워크의 핵심 컴포넌트이며, 스프링에서 자바 객체를 빈(Bean)이라 함 스프링 컨테이너는 내부에 존재하는 빈의 생명주기를 관리(빈의 생성, 관리, 제거 등)하며, 생성된 빈에게 추가적인 기능을 제공 스프링 컨테이너는 XML, 어노테이션 기반의 자바 설정 클래스 생성 가능 스프링 부트(Spring Boot)를 사용하기 이전에는 xml을 통해 직접적으로 설정했다면, 스프링 부트가 등장하면서 대부분 사용하지 않게 되었다. 스프링 컨테이너의 종류 - BeanFactory는 Bean의 생성 및 관계설정 같은 제어를 담당하는 IoC Object이고, BeanFactory를 좀 더 확장한 것이 ApplicationContext이다 BeanFactory BeanFact..
내 블로그 - 관리자 홈 전환 |
Q
Q
|
---|---|
새 글 쓰기 |
W
W
|
글 수정 (권한 있는 경우) |
E
E
|
---|---|
댓글 영역으로 이동 |
C
C
|
이 페이지의 URL 복사 |
S
S
|
---|---|
맨 위로 이동 |
T
T
|
티스토리 홈 이동 |
H
H
|
단축키 안내 |
Shift + /
⇧ + /
|
* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.