afterStep 에서 Exception을 던져도 다음 Step이 이어서 실행된다.
afterStep에서 검증 로직 돌린 후, 다음 Step 실행하지 않고 배치를 종료하고 싶은 경우가 있다. 배치 애플리케이션을 아예 종료해버리는 방법도 있지만, 보다 graceful 하게 처리하고 싶은 경우, 다음 Step이 실행되지 않도록 하려면? 종료 상태를 나타내는 Status는 BatchStatus와 ExitStatus 두개가 있다. ...
afterStep에서 검증 로직 돌린 후, 다음 Step 실행하지 않고 배치를 종료하고 싶은 경우가 있다. 배치 애플리케이션을 아예 종료해버리는 방법도 있지만, 보다 graceful 하게 처리하고 싶은 경우, 다음 Step이 실행되지 않도록 하려면? 종료 상태를 나타내는 Status는 BatchStatus와 ExitStatus 두개가 있다. ...
패키지 vs 모듈 나누는 기준 패키지가 아니라 별도의 (멀티 모듈, 서브 모듈)로 구성했을 때의 장점은? ▲ 관심 분리를 통한 스파게티 코드 방지, 변경 범위 축소 왜 세모? 패키지만 나눠도 효과를 볼 수 있는 영역이기 때문. 단, 분리된 패키지 간 참조는 양방향이고, 분리된 모듈 간 참조는 단방향만 가능하다는 ...
왜 하이퍼클로버가 가치가 있는지? 왜 경영진은 거기에 집중했나? AI는 게임체인저가 맞고, 각 서비스에 무조건 도입은 다 될거임 차이점은 원천기술 가지고 자체적으로 해낼 수 있느냐, 아니면 openai같은데서 돈내고 가져다 쓰느냐. 이 차이가 있음. 어차피 FMops 운용하는 레이어부터는 어느 회사든 다 있을거같구 그 아래 레이어를 원천기술가지고 ...
인덱스 관련 이론 6장. 물리적 데이터베이스 설계 : 인덱스 관련 https://dataonair.or.kr/인덱스 기본 원리 index range scan index full scan index unique scan index skip scan 등등 다양한 인덱스 스캔 방식과 ...
@Test fun typeCastTest() { val stringMap = mapOf( "a" to "0", "b" to "10.01" ) val bigDecimalMap = stringMap as Map<String, BigDecimal> println(bigDecimalMap) ...
Spring Data JDBC에서 native query 사용하기 Spring Data JDBC를 사용할 때, CrudRepository 와 자동 생성 쿼리 만으로는 커버가 되지 않는 경우가 반드시 생긴다. 복합키 사용하는 경우 Spring Data JDBC에서는 복합키를 아직 지원하지 않는다.https://github.co...
전문 해석 시 고려해야 하는 것들은, align, padding, trim, 날짜 포맷, 숫자 포맷 변환 등이다. 문자 타입은 끝문자 trim 정도만 처리하면 제대로 매핑되지만, 날짜, 숫자 포맷은 전문 송신처에 따라 포맷이 각각 달라 디테일한 처리가 필요하다. e.g., 0.8%을 어디서는 00080000 으로 보내고, 어디서는 00.80으...
RecordFieldSetMapper로 모든 케이스의 전문 변환이 커버 가능할까? => 아니다. public interface ConversionService { override fun convert(source: Any?, sourceType: TypeDescriptor?, targetType: TypeDescriptor): Any? ...
상황 1) 외부 API 요청에 대한 응답 수신 코드로 enum을 쓰는게 좋을까? [!tip] 요약 ) 외부 API 요청에 대한 응답 코드는 String으로 정의하고 enum 변환하는게 더 유연하고 안전하다. (fault tolerance) enum에 정의 되어 있지 않은 값이 응답 코드로 들어올 수 있기 때문이다. (e.g., 예고 없이 갑자기...
LineMapper는 크게 Tokenizer와 FieldSetMapper로 이루어진다. 전문 특성상 LineMapper로는PatternMatchingCompositeLineMapper 를 Tokeinizer로는 FixedLengthTokenizer를 사용하면 되는데 FieldSetMapper로는 세 가지 선택지가 있다. BeanWrapperFi...