java
-
[Java] 병렬 스트림 효과적으로 사용하기개발자 라이프 2020. 7. 20. 23:31
이 글은 "모던 자바 인 액션" 책을 스터디하며 정리한 내용입니다. 들어가며 병렬 스트림은 내부적으로 작업을 분할하고 멀티 스레드로 병렬 처리할 수 있도록 합니다. 하지만 적절하게 사용하지 않는다면 순차 스트림보다 더욱 안 좋은 성능을 나타냅니다. 이번 글은 효과적으로 병렬 스트림을 사용하는 방법에 대해 알아봅니다. 병렬 스트림을 효과적으로 사용하기 병렬 스트림을 효과적으로 사용하는 방법은 "1천 개 이상의 아이템일 경우 병렬 처리하라"와 같이 정성적으로 구성되어 있지 않습니다. 하지만 몇가지 기준이 되는 방법이 있습니다. 1. 직접 측정하기 순차 스트림과 병렬 스트림은 손 쉽게 변경할 수 있습니다. 그러므로 각각의 스트림을 구성하고 벤치마크 툴(ex. jmh)을 이용하여 직접 측정하고 비교하여 적절한 ..
-
Attribute Converter 적용 후기개발자 라이프 2019. 7. 21. 22:30
도메인의 자유를 위하여! Attirubute Converter는 무엇인가? 후기를 먼저 남기기 전에 Attribute Converter가 무엇인지 간단히 알아보자. Attribute Converter는 JPA 2.1부터 적용되었으며, 이름 그대로 DB와 엔티티 객체 사이에서 컬럼(속성)을 변환시켜주는 녀석이다. 인터페이스 형태로 제공이 되기 때문에 별도의 클래스로 구현해서 변환에 적용해야 한다. 구현이 필요한 메서드 명이 다음처럼 매우 직관적이기 때문에 이해하기도 쉽고 부담이 크지 않다. 다음 인터페이스를 구현하고, Entity 속성에 @Converter(*. class)만 명시해주면 된다. // Entity 속성 타입과 DB 컬럼의 타입을 파라미터로 받는다. public interface Attribu..