3. 체이닝(메서드 이어쓰기)WebClient는 빌더 패턴처럼 설계되어 있어서,리턴된 객체가 다시 새로운 기능을 이어갈 수 있게 만들어져 있어. val result = client.get() // RequestHeadersUriSpec .uri("/users") // UriSpec 객체 리턴 .retrieve() // ResponseSpec 객체 리턴 .bodyToMono(MyDto::class.java) // Mono 객체 리턴 .block() // MyDto 객체 리턴각 단계마다 “객체가 나..
MockMvc 코드@AutoConfigureMockMvcclass CustomControllerTest { @Autowired private lateinit var mockMvc: MockMvc}@Testfun `test should pass() { mockMvc.perform( get("/url/etc") .accept(MediaType.APPLICATION_JSON) .param("", "") ) .andExpect(status().isOk)} MockServerHttpRequest 코드class CustomControllerTest { priavet lateinit var mockServerHttpRequest: MockServerHttpRequest..
파이프라인이란?깃 저장소에 코드를 푸시하면 자동으로 실행되는 빌드, 테스트, 배포 과정 전체를 "파이프라인"이라 부른다.(GitHub Actions, GitLab CI/CD, Jenkins 등에서 정의한다.)
스프링 @Autowired 어노테이션 적용시 의존 객체를 찾는 순서타입이 같은 bean 객체를 검색한다. => 1개이면 해당 bean 객체를 사용한다.@Qualifier가 명시되어 있는 경우 같은 값을 갖는 bean 객체여야 한다.타입이 같은 bean 객체가 두개 이상이고, @Qualifier가 없는 경우 이름이 같은 빈 객체를 찾는다.찾은경우 그 객체를 사용타입이 같은 bean 객체가 두개 이상이면, @Qualifier로 지정한 bean 객체를 찾는다.찾은경우 그 객체를 사용위 경우 모두 해당되지 않으면 컨테이너가 Exception을 발생시킨다.참고
// TCP Clientval client = TcpClient.create() .host("localhost") .port(8080) .connect() // connect()로 서버에 붙는다. .block()// TCP Serverval server = TcpServer.create() .port(8080) .handle { inbound, outbound -> outbound.sendString(Mono.just("Hello from server")) } .bindNow() // bindNow()로 포트 열고 기다린다.val client = HttpClient.create() // HTTP 요청을 보내는 역할 .baseUrl("https:..