분류 전체보기363 spring-boot, Jpa 정리 - Insert, Update bulk 처리 나중에 볼 용도로 정리했습니다. Jpa Insert, Update bulk 처리 Jpa 배치 관련 옵션 설명 hibernate.order_inserts=true hibernate.order_updates=true 위 옵션은 insert, update statement 를 처리할 때 정렬을 하겠다는 의미이다. 정렬을 하는 이유는 성능을 높이기 위함. 어떻게 성능을 높이는지는 다음과 같다. Family family = new Family(); family.setParent(parent); family.setChild(child); xxxRepository.save(family); 위 예시는 다음과 같이 동작한다. insert into Family (xxx) insert into parent (xxx) ins.. 2020. 7. 11. spring-boot, Jpa 정리 - Oracle Sequence 사용하기 Jpa, Oracle Sequence 사용하기 Oracle 의 Sequence 를 이용해 PK 자동 증가시키기. 아래와 같이 하면 INSERT 시 자동으로 SEQUENCE 를 사용해서 처리한다. // Sequence 는 미리 생성되있어야 한다. @Id @GeneratedValue(strategy=GenerationType.SEQUENCE, generator = "xxx_SEQUENCE_GENERATOR") @SequenceGenerator(name="xxx_SEQUENCE_GENERATOR", sequenceName = "xxx_SEQUENCE", initialValue = 1, allocationSize = 1) private long xxxSeqNo; 2020. 7. 11. spring boot, spring batch 정리 - 5편 대용량, low latency 를 위해 어떤 ItemReader 가 좋은가? (spring-batch 병렬 처리) 이 문서는 추후 다시 볼 목적으로 정리한 글입니다. 우연찮게 글을 읽어보게 됐는데 정리하면 좋을 것 같아서 기록. 혹시 읽다가 틀린 점이 있으면 알려주시면 감사하겠습니다. JdbcCursorItemReader vs JdbcPagingItemReader reference 에 나온 답변을 보면 이용하는 데이터베이스와 처리하는 모델에 따라 달라진다고 하는데 이 말이 이해가 안간다. 추측하기로는 각 Reader 들은 fetchSize 를 통해 데이터를 받아오고 이는 네트워크를 거치는데 특정 DBMS 에서는 이 옵션이 안먹히기 때문이다. pagingItemReader 는 paging 만큼 데이터를 가져와야하는데 fetchSize 옵션이 제대로 설정돼지 않으면 어떻게 동작할지를 모를테고. 마찬가지로 cursorIt.. 2020. 7. 11. spring-boot, gradle test 환경 구성 정리 이 문서는 추후 다시 볼 목적으로 정리한 글입니다. spring-boot, gradle test 환경 구성 정리 build.gradle 파일 // build.gradle compile('org.springframework.boot:spring-boot-starter') testCompile('org.springframework.boot:spring-boot-starter-test') 그런 뒤, gradle build 나 gradle test 를 하면 @Test 등록된 것들이 실행된다. 주의사항 Test package 와 src package 가 같아야 한다. src/main/java/com/example 이라면 test/java/com/example 밑에 테스트 파일이 존재해야 한다. 2020. 7. 11. 이전 1 ··· 68 69 70 71 72 73 74 ··· 91 다음