전체 글

주로 개발에 대한 이야기들 Spring Kotlin k8s DB
Java & kotlin 기반으로 Spring 을 개발하시는 분들은 너무나 익숙한 그림일텐데요 오늘은 Application과 JPA 단에 대해서 깊이 알아보는 시간보다는 DataSource를 통해서 어떻게 DataBase와 통신하는지에 대해 알아보기 위한 게시글입니다 ㅎㅎ 2021.06.19 기준으로 spring-jdbc 제일 최신 버젼인 5.3.8 을 기반으로 알아보도록 하겠습니다 DataSource란? 먼저 우리는 DataSource가 무엇인지 알아야됩니다 DataSource가 무엇일까요? 개발을 조금 해보았거나, 가벼운 토이 프로젝트로 DataBase와 연결하는 작업을 진행할 때 아래와 같은 설정을 해보신 경험이 있으실 겁니다 바로 Application DataBase 간의 Connection을 맺..
목차 Kotlin Spring Batch 목차 개념정리 Job & Step / Scope? Reader Writer Processor 개념정리 Spring Batch에서 가장 중요한 요소 3개는 바로 Job Step Reader / Writer / Processor 3개가 존재합니다 Job & Step / Scope? Job은 Spring Batch 실행시에 Job Name을 지정해서 실행할 수 있으며 --job.name=addressChangeJob 와 같이 런타임에 어떠한 Job을 실행할 것인지 결정할 수 있습니다 Step 같은 경우에는 실제로 Job에서 어떠한 과정을 가지고 흐를 것인지 결정하게 하는 요소인데요. 가장 중요한 요소는 바로 @Scope(value = "job", proxyMode = ..
Kotlin의 Collection 함수들 오늘은 Kotlin의 Collection 함수들에 대해서 파헤쳐보는 시간을 가지도록 하겠습니다 ㅎㅎ 현업에서 코틀린을 처음 접한지 벌써 저도 5개월차가 되어가는데요 현업에 다양한 비즈니스 로직을 구현하다보면 Collection에 있는 기본 Util 함수들을 자주 사용하게 됩니다 하지만, 아주 기본적이면서도 구체적으로 동작하는 원리를 알아야 어떻게 활용되는지 알 수 있기 때문에 조금 더 deep 하게 파헤쳐보는 시간을 가져볼까 합니다 참고할 코드 우리가 참고하면서 파헤쳐 보는 코틀린 파일은 단 1개입니다 kotlin.collections.CollectionsKt.class 엥? 너무 짧지 않냐구요? 아닙니다 ㅎㅎ 엄청 길어요 ㅠㅠ 분류별로 하나씩 들어가봅시다~! 여..
Spring Context on Test 오늘은 Spring Context와 Junit의 Life Cycle에 대해 알아보는 시간을 가질까 합니다 이전 게시글에 작성된 Junit의 Life Cycle에 대해 보고 오셨나요..? ㅎㅎ 참고: huisam.tistory.com/entry/junit 번외편 - Junit LifeCycle과 @ExtendWith 에 대해 알아보자 JUnit 일반적으로 Spring 기반의 프로젝트에서 테스트를 다루게 된다면, 대부분의 경우에는 Junit 기반의 테스트를 작성하게 됩니다 그런데, Junit을 사용할 때 주의할 점이 몇 가지 있는데요 우리가 huisam.tistory.com 일반적으로 Junit은 Method 혹은 Class 단위로 Life Cycle을 가집니다 하지..
JUnit 일반적으로 Spring 기반의 프로젝트에서 테스트를 다루게 된다면, 대부분의 경우에는 Junit 기반의 테스트를 작성하게 됩니다 그런데, Junit을 사용할 때 주의할 점이 몇 가지 있는데요 우리가 무심코 알고 지내지 못했던 사실들에 대해서 공부해보자 합니다 Junit의 생명주기? 테스트가 실행될 때 우리는 이 생명주기가 어떻게 되는지 알아볼 필요성이 있습니다. 왜냐하면, Spring 통합테스트(=Integration Test)를 작성하다보면, 어쩔 수 없이 하나의 Context 로 여러개의 테스트를 실행하는 경우가 존재할 수 밖에 없기 때문이죠 물론 Spring Context 를 사용하지 않는 방향이 제일 좋은 방향성이지만, 보다 철저한 테스트를 위해서 Context 를 Load 할 수 밖에..
Feign Client spring cloud의 중요 요소중의 하나인 feign client 에 대해서 알아보자 EnableFeignClient 가장 중요한 것은 역시 설정 파일인데요 feign 에서 제공하는 @EnableFeignClients 를 활용하면 정말 좋습니다 기본적으로 class 을 가져오는 방식과 basepackage 를 기반으로 scan 하는 방식 이 있는데요 basePackage를 기반으로 가져온다면.. 더 많이 편리하게 사용할 수 있겠죠? feignClient가 추가될 때마다 환경 설정들을 추가적으로 할 필요가 없으니까요 또한, 보통 Feign 레벨의 client를 한번 더 감싸서 어떻게 처리할 것인지 결정하게 되는데요 이 경우에도 같이 @ComponentScan 을 같이 해준다면, ..
huisam
천천히 올바르게