전체글663 SpringBatch에서 ItemReader를 Mock객체로 교체하기 안녕하세요? 이번 시간엔 SpringBatch에서 ItemReader를 Mock객체로 교체하는 예제를 진행해보려고 합니다. 모든 코드는 Github에 있기 때문에 함께 보시면 더 이해하기 쉬우실 것 같습니다. (공부한 내용을 정리하는 Github와 세미나+책 후기를 정리하는 Github, 이 모든 내용을 담고 있는 블로그가 있습니다. ) 발단 스프링 배치로 테스트 코드를 짜다보면 정말 하기 싫은것이 ItemReader로 읽어올 데이터를 만드는 것입니다. 특히나 실제 업무에서 쓰다보면 수많은 필수값들과 엔티티 관계들로 인해 만들어야할 데이터가 많을 경우 더 그렇습니다. 이렇게 테스트 환경 구축이 힘들때는 역시나! Mock을 활용하면 좋다고 생각했습니다. ItemReader를 어떻게 Mocking할지 고민하.. 2017. 10. 17. JPA에서 대량의 데이터를 삭제할때 주의해야할 점 안녕하세요? 이번 시간엔 JPA에서 대량의 데이터를 삭제할때 주의해야할 점을 샘플예제로 소개드리려고 합니다. 모든 코드는 Github에 있기 때문에 함께 보시면 더 이해하기 쉬우실 것 같습니다. (공부한 내용을 정리하는 Github와 세미나+책 후기를 정리하는 Github, 이 모든 내용을 담고 있는 블로그가 있습니다. ) 발단 업무중에 배치로 일괄 데이터 삭제 기능을 작업하였습니다. 테스트를 진행하는데 삭제 성능이 너무나 안나오는 것이였습니다. 단순 삭제에서 왜이렇게 성능이 안나오나 slow query를 확인해보는데 이상한 점을 발견하였습니다. 이를 샘플예제로 소개드리겠습니다. 예제 샘플 코드 작성을 위해 다음과 같은 의존성들을 사용할 예정입니다. Gradle을 사용할 예정이며, 테스트 프레임워크로 S.. 2017. 10. 16. SpringBoot H2 DB 클라이언트로 IntelliJ 사용하기 안녕하세요? 이번 시간엔 SpringBoot H2 DB 클라이언트로 IntelliJ를 사용하는 방법을 소개드리려고 합니다. 모든 코드는 Github에 있기 때문에 함께 보시면 더 이해하기 쉬우실 것 같습니다. (공부한 내용을 정리하는 Github와 세미나+책 후기를 정리하는 Github, 이 모든 내용을 담고 있는 블로그가 있습니다. ) 들어가며 보통 로컬에서 개발환경을 구축하면 H2 DB를 많이 사용합니다. 여기서 H2는 설치형이 아니라, SpringBoot에 의존성을 둔 H2 내장 DB를 사용하는 경우입니다. 이 경우에 일반적으로는 h2-console 이라는 웹 형태의 콘솔을 사용합니다. 하지만 웹 콘솔은 결국 기능상 한계점이 많아 전문적인 DB Client가 필요할때가 많습니다. 이때 좋은 해결 방.. 2017. 10. 13. [Java8] 메소드를 파라미터로 전달하기 안녕하세요? 이번 시간엔 java8에 새로 추가된 기능 중 메소드 파라미터에 대해 다시 정리해볼 예정입니다. 모든 코드는 Github에 있기 때문에 함께 보시면 더 이해하기 쉬우실 것 같습니다. (공부한 내용을 정리하는 Github와 세미나+책 후기를 정리하는 Github, 이 모든 내용을 담고 있는 블로그가 있습니다. ) 예제 여기에서는 간단한 프로그램을 기존 자바 코드로 해결하면서 발생하는 문제를 자바8에서 어떻게 개선할 수 있는지 비교해볼 예정입니다. 단, 람다식/스트림 등등의 자세한 내용은 다음 포스팅에 포함될 예정입니다. 여기선 자바8의 변화로 메소드를 파라미터로 넘기는 이유와 장점에 대해 소개할 예정입니다. 과일 재고 프로그램 예를 들어 과일 재고 목록을 관리하는 어플리케이션을 만든다고 가정하.. 2017. 10. 9. JUnit 만들어보기 안녕하세요? 이번 시간엔 JUnit을 직접 만들어보는 시간을 가지려고 합니다. 모든 코드는 Github에 있기 때문에 함께 보시면 더 이해하기 쉬우실 것 같습니다. (공부한 내용을 정리하는 Github와 세미나+책 후기를 정리하는 Github, 이 모든 내용을 담고 있는 블로그가 있습니다. ) 계기 긴 추석연휴 기간동안 미뤄둔 포스팅 예정 글들을 정리했습니다. 3개를 연달아 처리하고 뭐가 더 남았나 에버노트를 보다가 아주 예전에 메모해놓은 일감이 있었습니다. 바로 나만의 XUnit 만들기입니다. 토비님께서 올리신 글을 보고 일감 등록을 했었던 기억이 떠올랐습니다. (원분 : 페이스북링크) 일단 회사에서 사용하는 기술들을 익히기에 급급해 계속 미루다가 이제야 다시 봤습니다. 장기간 휴식이 또 언제 생길지 .. 2017. 10. 7. Airbnb의 eslint를 IntelliJ에 적용하기 안녕하세요? 이번 시간엔 airbnb의 eslint를 IntelliJ에 적용하는 예제를 진행해보려고 합니다. 모든 코드는 Github에 있기 때문에 함께 보시면 더 이해하기 쉬우실 것 같습니다. (공부한 내용을 정리하는 Github와 세미나+책 후기를 정리하는 Github, 이 모든 내용을 담고 있는 블로그가 있습니다. ) 들어가며 팀내에서 프론트엔드 코딩 컨벤션을 정하자는 이야기가 나왔습니다. 구성원 모두가 백엔드 개발자이며, 메인 언어가 되는 Java를 다들 최근에 시작하셔서(기존엔 ASP, PHP) Java & 백엔드 학습으로도 시간이 부족하기에 프론트엔드 쪽은 거의 등한시 하고 있었습니다. 그러다 최근에 큰 프로젝트가 끝나고 회고 시간에 백엔드 코드에 비해 프론트엔드 코드가 컨벤션없이 작성되어 퀄.. 2017. 10. 3. 이전 1 ··· 88 89 90 91 92 93 94 ··· 111 다음