본문 바로가기

Programming!

QueryDSL 이용시 datetime column type에 대한 group by 아래와 같이 세개의 컬럼이 존재한다. 상품번호 판매수량 일자 100003 2 2018-12-19 12:23:11 100003 1 2018-12-18 11:13:09 100003 1 2018-12-18 09:13:09 요구사항은 일자별 판매수량 sum이라고 치자. 즉, 아래와 같이 시간은 제거되고 일자 만으로 groupby와 판매수량에 대한 sum 처리를 해야 한다. 100003 | 2 | 2018-12-19100003 | 2 | 2018-12-18 QueryDSL으로 이용하려니 날짜에 대한 시간 제거를 모르겠다..흠.해서 MySQL의 자체 function을 이용하는 방법으로 우선 해결. 코드는 다음과 같다. StringTemplate datePathOrderDate = Expressions.stringT.. 더보기
Annotation 정리 문서 - 추가중 이렇게 정리해두니 좋네~ https://dzone.com/articles/all-java-built-in-annotation-examples https://dzone.com/articles/spring-web-mvc-annotation-examples https://dzone.com/articles/all-hibernate-annotations-mapping-annotations https://dzone.com/articles/all-jpa-annotations-mapping-annotations 더보기
Spring Boot 에서 다중 Datasource 의 사용. #2 첫번째. http://eclipse4j.tistory.com/284 Spring Boot / Data / JPA 에서 위와 같이 다중 Datasource를 기본적으로 사용했다면 문제가 없지만, 만약 QueryDsl을 사용시에는 QuerydslRepositorySupport 부분에서 어떤 EntityManager를 선택해야 하는지 몰라서(?) 오류를 내뱉는다. QuerydslRepositorySupport.java @Repository public abstract class QuerydslRepositorySupport { private final PathBuilder builder; private @Nullable EntityManager entityManager; private @Nullable Que.. 더보기
Mac java version 전환하기 팀에서 신규플젝을 진행하게 되어 새롭게 시작하는 김에 까짓 java version도 올리자!! 라는 생각으로 11 로 환경을 맞추고 있다. 뚜시궁!! Spring Boot 2.1.x + JAVA(OpenJDK) 11 # brew upgrade# brew update # brew cask info javajava: 11.0.1,13 # brew cask install java # /usr/libexec/java_home # vi ~/.bashrc 또는 ~/.zshrc 또는.... 하단에 아래처럼 추가해 준다. alias j8="export JAVA_HOME=`/usr/libexec/java_home -v 1.8`; java -version"alias j11="export JAVA_HOME=`/usr/lib.. 더보기
List<Order>의 Order 내 List<OrderItem>을 갖는 경우 OrderItem 기준으로 List 생성 public class Order { private Long id; private List orderItems;} List orders = .... 위와 같이 Order 에 대한 List를 있을 경우, OrderItem을 꺼내 새로운 List를 만들고 싶을 경우가 있다.해서 1차적으로 List orderItems = new ArrayList();for (orders...) { for(o.getOrderItems()...) { ... orderItems.add(oi); }} 위와 같은 형태로 중복 for 문을 생각해볼 수도 있을 것이고. 이후,List orderItems = new ArrayList();orders.stream().foreach(o->{ List orderItems = o.getOrderI.. 더보기