전체 글

전체 글

    [DataGrip] 쿼리 결과 콘솔(에디트) 창에서 확인하기

    시스템을 운영할 때 현업에서 데이터 확인을 요청하는 경우가 많다. 테이블 및 데이터 양이 많을 경우 여러 테이블과 같은 테이블이라도 조건을 다르게하여 여러개의 쿼리를 실행할 때가 많은데, 이때 하나의 콘솔창에서 쿼리 결과같이 여러개 나오면 데이터 비교하기 좋다. 1. DataGrip의 Settings 선택 2. 검색창에 show results 입력 3. Show results in editor 체크 위와 같이 설정을 하면 아래와 같이 쿼리 바로 아래에 결과값이 나온다.

    [Spring Batch] - Job, Tasklet Step, Chunk Step 개념

    Job - 순서를 가진 여러 Step의 목록 또는 모음 - 외부 의존성에 영향을 받지 않고 실행되는 독립적인 작업 Step - 배치처리를 정의하고 제어하는 독립된 작업의 단위 1. Tasklet Step - 간단히 정의한 하나의 작업처리 2. Chunk Step - 한번에 하나씩 데이터를 읽고 chunk를 만든 후 chunk 단위로 트랜잭션을 처리

    [Spring Data JPA & Querydsl] - QuerydslPredicateExecutor 사용시 javax.persistence.noresultexception 오류 원인

    spring data jpa querydsl spring boot 3.x.x hal-explorer 을 이용하여 개발시 오류에 대해서 기록 JpaRepository, QuerydslPredicateExecutor를 다중으로 상속받은 인터페이스를 이용해서 api를 호출했는데, javax.persistence.noresultexception 오류가 발생. 딱히 문제에 대한 기록도 없고 컴파일 오류도 없기 때문에 멘붕이 왔다. 우선 원인은 3.0 이상 버전을 사용했기 때문에 gradle에 의존성 추가한 디펜던시들이 참고했던 예제와 달라서 발생했다. 2 버전대로 낮추니jakarta를 참조했던 라이브러리들을 모두 javax.persistence로 수정. 또한 스프링 버전에 맞게 각각 라이브러리의 버전을 맞추니 해..

    [Spring Data JPA] @Modifying과 @Query를 이용한 벌크 연산

    지난번에는 QueryDSL에서 벌크연산을 위한 글을 작성했는데, 이번에는 JPQL에서 벌크연산을 위해서 기록을 남기기 위해 작성하려고 한다. @Modifying @Query 어노테이션을 이용해서 JPQL을 사용할 때 @Query 어노테이션 위에 @Modifying 을 추가해야한다. 간단하게 데이터 처리할 때 유용하다. @Modifying에는 clearAutomatically, flushAutomatically 두개의 속성을 추가로 설정할 수 있다. clearAutomatically 이 속성을 true로 하면 @Query가 실행된 후 1차 캐시를 clear한다. 1차 캐시를 clear한다는 것은 영속성 컨텍스트에 데이터가 clear 된다는 것이고 그렇게되면 DB의 쿼리가 추가로 발생하게 된다. flushA..