본문 바로가기
반응형

2018/098

Spring Boot에서 외부 API 테스트하기 안녕하세요? 이번 시간엔 Spring Boot의 @RestClientTest 예제를 진행해보려고 합니다. 모든 코드는 Github에 있기 때문에 함께 보시면 더 이해하기 쉬우실 것 같습니다. 1. 문제 상황 예를 들어 외부 API를 통해 데이터를 가져와야 하는 경우가 있다고 가정해보겠습니다. 예제로 사용할 Service 코드는 다음과 같습니다. @Slf4j @Service public class UserService { private final RestTemplate restTemplate; @Value("${order.api.url}") private String orderApiUrl; public UserService(RestTemplateBuilder restTemplateBuilder) { thi.. 2018. 9. 29.
SpringBoot에서 Spock Mock 사용법과 문제점 문제점 Spring Boot의 @MockBean, @SpyBean은 Junit & Mockito를 지원합니다. 그러다보니 Spock을 쓴다 해도 Spring의 Bean을 Mocking하려면 Mockito 방식을 사용해야 합니다. example) @SpringBootTest class CustomerServiceSpockMockTest extends Specification { @Autowired CustomerService customerService @MockBean(name = "jdbcTemplate") JdbcTemplate jdbcTemplate def "Customer_id로_이름을_조회"() { given: given(jdbcTemplate.query(anyString(), any(BeanP.. 2018. 9. 28.
8. Spring Batch 가이드 - ItemWriter 앞 시간에 Reader에 대해서 배웠습니다. Writer는 Reader, Prcessor와 함께 ChunkOrientedTasklet을 구성하는 3 요소입니다. 여기서 Processor가 아닌 Writer를 우선 선택한 이유는 Processor는 선택이기 때문입니다. Processor는 없어도 ChunkOrientedTasklet는 구성할 수 있습니다. 반면 Reader와 Writer는 ChunkOrientedTasklet에서 필수 요소입니다. 그래서 Writer를 먼저 다뤄보겠습니다. 8-1. ItemWriter 소개 ItemWriter는 Spring Batch에서 사용하는 출력 기능입니다. Spring Batch가 처음 나왔을 때, ItemWriter는 ItemReader와 마찬가지로 item을 하나.. 2018. 9. 27.
NHN 엔터테인먼트 안정적인 서비스 운영 참석 후기 안녕하세요? 어제 NHN Entertainment TOAST팀의 개발 세미나에 다녀왔습니다! 라고 하고 싶지만 ㅠㅠㅠ 2시간 교육인데 1시간 밖에 듣지 못했습니다 ㅠㅠ 경기도 광역 버스 탔다가 신갈에 도착해서 부랴부랴 택시타고 5시에 출발해서 도착하니 7시 30분이네요….(같이 가신 동료분이 라인으로 하신 말씀) 발표장까지 안내해주시던 직원분이 계셨는데, 굉장히 파이팅이 넘치시는 분이셔서 광역버스 2시간 택시 30분 타고 오면서 지친 것이 좀 회복되는 느낌이였습니다. 여튼 도착하고 보니 벌써 첫번째 시간은 끝나고 쉬는 시간이였습니다. 아쉽지만 사진으로 대체를.. 주신 샌드위치와 음료를 마신뒤 본격적으로 2번째 교육이 시작되었습니다. 2. 운영 서비스 오픈은 끝이 아니라 시작 메일 발송 한통 발송은 쉬움 .. 2018. 9. 19.
Spring Batch Paging Reader 사용시 같은 조건의 데이터를 읽고 수정할때 문제 안녕하세요. 이번 시간에는 Spring Batch를 사용하시는 분들이 자주 묻는 질문 중 하나인 같은 조건의 데이터를 읽고 수정할때 어떻게 해야하는지 에 대해서 소개드리려고 합니다. 모든 코드는 Github에 있으니 참고하시면 됩니다. 문제 상황 예를 들어 아래와 같은 문제가 있다고 가정하겠습니다. pay라는 테이블에 successStatus가 false인 데이터를 모두 가져와 true로 변환해야 한다고 보겠습니다. 샘플로 사용할 Pay Entity는 다음과 같습니다. import lombok.AccessLevel; import lombok.Getter; import lombok.NoArgsConstructor; import javax.persistence.Entity; import javax.persi.. 2018. 9. 15.
7. Spring Batch 가이드 - ItemReader 앞의 과정들을 통해 Spring Batch가 Chunk 지향 처리를 하고 있으며 이를 Job과 Step으로 구성되어 있음을 배웠습니다. Step은 Tasklet 단위로 처리되고, Tasklet 중에서 ChunkOrientedTasklet을 통해 Chunk를 처리하며 이를 구성하는 3 요소로 ItemReader, ItemWriter, ItemProcessor가 있음을 배웠습니다. 즉, ItemReader & ItemWriter & ItemProcessor의 묶음 역시 Tasklet이란 이야기입니다. 이들의 묶음을 ChunkOrientedTasklet에서 관리하기 때문이죠. 이번 시간부터 이 3 요소를 차근차근 배워보겠습니다. 7-1. ItemReader 소개 Spring Batch의 Chunk Taskle.. 2018. 9. 14.

728x90
반응형