기존에 springboot에서 http 통신을 해야할 때 RestTemplate을 곧잘 쓰곤 했다. 하지만 spring 5.0 버전부터는 RestTemplate은 더 이상 새로운 버전을 내놓지 않을 것이며 WebClient를 쓰라고 권장하고 있다. As of 5.0, the non-blocking, reactive org.springframework.web.reactive.client.WebClient offers a modern alternative to the RestTemplate with efficient support for both sync and async, as well as streaming scenarios. The RestTemplate will be deprecated in a fu..
개발을 하다보면 특정 패턴을 가진 메소드에 대해서 공통적으로 적용해줘야하는 기능이 있다. 제일 대표적인게 바로 로그 기록이 있는데, 이와 같은 기능을 특정 패턴을 가진 메소드에 넣기 위해서는 로그를 기록하는 공통 Util 메소드를 생성하고 해당 Util 메소드를 특정 패턴을 가진 메소드에 일일이 넣는 것을 생각할 수 있다. 하지만 이렇게 수동으로 공통 기능을 넣어줄 경우 추후 코드를 수정할 곳이 많아진다거나 어디에 Util 메소드를 넣었는지 찾기가 힘들어 유지보수가 힘들어진다. 위와 같이 특정 패턴을 가진 메소드에 공통되는 위치(실행 전, 실행 후)에 있는 공통되는 기능을 횡단 관심사라고 한다. 그리고 이러한 횡단 관심사를 수동으로 구현할 필요 없이 알아서 지정한 패턴에 넣어주는 방법으로는 Spring ..
개발을 하다보면, 개발 공부를 하다보면 DI라는 용어를 많이 접하게 된다. 거기에 덧붙여 DI 컨테이너, IoC이라는 용어도 많이 접하게 되는데 처음에 이러한 용어들을 접하고 가지 않으면 이게 뭐지? 라고 어리둥절하다가 해당 용어의 뜻을 알고 아 그렇구나 라고 바로 이해를 하게 된다. 그래서 이번에 제대로 해당 용어들에 대한 개념들을 정리해보려 한다. DI(Dependency Injection)이란? 우선 제일 기본적인 DI는 의존성 주입을 의미한다. 의존성 주입에 대해 제일 간단한 예를 들면 Controller에서 Service를 사용하는 것을 예로 들 수 있다. public class MenuController { private tinal MenuService menuService; ... } Con..
스터디에서 작게 프로젝트를 생성해서 코딩을 하다보니 ApplicationContext라는 객체를 사용해서 해당 Interface Ben Type에 해당하는 모든 객체들을 아래와 같이 가져오게 되었다. private final ApplicationContext applicationContext; @PostConstruct public void init() { Collection makersCollection = applicationContext.getBeansOfType(Test.class).values(); ... } ApplicationContext를 통해서 Spring 컨테이너에 등록된 빈들을 가져올 수 있다는 것을 이해하고 이렇게 사용한 것이지만 ApplicationContext란 무엇일까? App..
- Total
- Today
- Yesterday
- MAC
- 스프링부트
- DATABASE
- 캐시
- annotation
- JPA
- 캐싱
- PostgreSQL
- Caching
- eclipse
- Spring
- Intellij
- cache
- mockito
- 공간데이터
- 어노테이션
- DB
- enum
- 데이터베이스
- ssh
- HttpClient
- Java
- 메시지큐
- postgres
- 자바
- k8s
- 이클립스
- 역직렬화
- springboot
- rabbitmq
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |