profile
Simple is best

spring batch multi datasource, jpa, transactionManager 정리

source 는 Github 에 있습니다.spring batch 에서 2개 이상의 다른 데이터 베이스에 접근하는 예제를 정리했습니다.이 예제에서는 h2, MySQL 을 jpa 를 통해 저장하는 예제를 정리했습니다. LazyConnectionDataSourceProxy

2021년 7월 18일
·
0개의 댓글

Jpa OneToMany 정리

source 는 Github 에 있습니다.아래와 같이 JoinColumn 없이 OneToMany 단방향을 설정하면 team, team_member 테이블 간 mapping 테이블이 생성 됩니다. (team_list 테이블)테이블이 새로 생성되고 해당 테이블에 inser

2021년 7월 13일
·
0개의 댓글

spring-batch commit interval 이란?

commit-interval 을 알아 보기 전에 ChunkedOrientedTasklet 방식을 알고 넘어 가야합니다. 이 구조는 reader - processor 가 commit-interval 만큼 반복된 후, 가공된 데이터를 writer 에서 bulk 처리하는 구

2021년 7월 9일
·
0개의 댓글

jpa merge vs persist 동작방식 및 목적 정리

merge, persist 동작방식 및 목적을 정리했습니다.merge 는 오직 분리된(detached) 엔티티에만 필요합니다.예를 들면 다음과 같습니다.아래와 같이 test 라는 entity 를 persist 를 통해 영속성 상태로 만들었습니다.그런 뒤 entityMa

2021년 6월 25일
·
0개의 댓글

spring batch jpa 환경에서 ID 생성전략에 따른 bulk insert 하는법

source 는 Github 에 있습니다.spring batch jpa 환경에서 bulk insert 하는법을 정리했습니다.jpa ID 생성전략에 따라 bulk insert 하는법을 정리해봤습니다.애플리케이션에서 ID 를 채번해서 repository.save(xxx)

2021년 6월 24일
·
0개의 댓글

spring data jpa ID 생성전략에 따른 동작 방식 정리

source 는 Github 에 있습니다.Entity ID 생성전략에 따른 동작 방식을 정리했습니다.아래 테스트를 수행할 경우 애플리케이션에서 ID 를 생성해줬기에 DB 에 값이 있나 확인하기 위해 select 를 날려본 후에, INSERT 가 이루어집니다.즉, mer

2021년 6월 22일
·
0개의 댓글

정규화, 비정규화 정리

RDB 설계에서 중복을 최소화하게 데이터를 구조화하는 프로세스를 정규화 라고 합니다.RDB 정규화의 목표는 이상이 있는 관계를 작고 잘 조직된 관계를 생성하는 것에 있습니다.위와 같이 정규화를 통해 테이블을 정비하고 이를 통해 RDB 나머지 부분들로 전파되게 하는 것이

2021년 6월 13일
·
0개의 댓글

Jpa n+1 문제 해결방법

source 는 Github 에 있습니다.상위 엔티티에서 하위 엔티티를 조회할 때마다 하위 엔티티 갯수만큼 쿼리가 더 수행되는 현상입니다.다음은 jpa n + 1 관련 예시입니다.아래 예시는 Member : Account = 1 : n 관계입니다.Member 데이터가

2021년 6월 13일
·
0개의 댓글

spring-batch 통합 테스트 정리

source 는 Github 에 있습니다.spring-batch 통합테스트 하는 방법 입니다.spring-batch 4.1 이상 기준으로 동작합니다.tasklet 을 호출하는 간단한 예제입니다.a. Spring Batch 에서 test 관련 bean 을 자동으로 등록해

2021년 6월 12일
·
0개의 댓글

spring http message convert 설명

spring 에서 client 와 server 간 데이터를 주고 받을 때, 데이터를 어떻게 주고 받는지에 대해서 공부했습니다.아래 예시는 spring mvc + json 기준입니다. client 에서 json 데이터를 네트워크를 통해 보낼 때, server 의 spri

2021년 6월 12일
·
0개의 댓글

전각문자, 반각문자 정리 (Java)

source 는 Github 에 있습니다.전각 문자는 정사각형 형태, 반각은 전각의 가로폭을 반으로 줄인 직사각형 형태입니다.영문과 숫자 등은 반각이고, 한글은 전각으로 표현하고 있습니다.컴퓨터에서 보통 반각은 1바이트, 전각은 2바이트로 표현됩니다. (유니코드 등장하

2021년 6월 3일
·
0개의 댓글

spring data jpa batch insert 정리

source 는 Github 에 있습니다.batch insert 라는 것은 여러 개의 SQL Statement 를 하나의 구문으로 처리할 수 있습니다. 정확히는 위 기능은 jdbc batch 기능이며, hibernate 에서 위 기능을 이용해서 처리하는 것입니다.여러

2021년 5월 20일
·
0개의 댓글

spring data jpa save, saveAll 비교

source 는 Github 에 있습니다.save 동작 원리는 이전 글 참고하시면 됩니다.간략히 설명하면 save(xxx) 는 1건을 저장하는 메소드이며, saveAll 은 다건이상의 데이터를 저장하는 메소드입니다.아래 로직만 보면 saveAll 은 save() 를 호

2021년 5월 15일
·
0개의 댓글

spring @Transaction 동작 원리

스프링 @Transactional 의 주된 개념은 AOP proxy 입니다.여기서 AOP, Proxy 에 관련해서 자세히는 다루지 않겠습니다.이 부분을 좀 더 상세화 해보면 Spring core 에서 @Transacational 이 붙은 메소드를 찾아서 (AOP mec

2021년 5월 14일
·
0개의 댓글

spring-batch QuerydslPagingItemReader 설명

Reference 보고 정리했습니다.spring-batch 에서 사용가능한 querydsl 기반 ItemReader 이며, Paging 기능을 사용할 수 있습니다.Paging 기능은 전체 데이터 중 일부 데이터를 조회하는 기법예를 들면, 1만건의 데이터가 있을 때, 1

2021년 4월 30일
·
0개의 댓글

Jpa OSIV (Open Session In View)

source 는 Github 에 있습니다. Open Session In View보통 DB 트랜잭션이 시작될 때, 영속성 컨텍스트에서 데이터베이스 Connection 을 가져옵니다. 그러면 언제 Connection 을 반환할까요?아래 예시를 통해 보면 @Transacti

2021년 4월 30일
·
0개의 댓글

spring-data-jpa save 동작 원리

source 는 Github 에 있습니다.spring-data-jpa save source 를 보면 아래와 같습니다.entity 가 새로 생성할 예정이라면 persist() 를 호출하고, 그렇지 않다면 merge() 를 호출합니다.The following table d

2021년 4월 30일
·
0개의 댓글

find, mv 를 조합해서 폴더에서 폴더로 파일 이동 또는 복사

아래 예제는 현재 위치에서 파일 타입, 수정일이 오늘로부터 1일 이내인 파일을 '옮길위치폴더' 로 이동시킵니다.mv 대신 cp 를 사용하면 현재 폴더에있는 파일이 복사가 됩니다.

2021년 4월 20일
·
0개의 댓글

spring boot, jpa, querydsl 정리 - 1편 환경 구성

IntellijSpring bootjpaquerydslgradle (multi project) spring-boot-jpa-example source 참고RootProject : spring-boot-exampleSubProject : spring-boot-jpa-ex

2021년 4월 4일
·
0개의 댓글

dbcp 개선사항

dbcp 관련 개선사항을 정리. 추후 관련 내용을 다시 봤을 때 기억이 안날 것을 대비해 적어놓음.MyBatis 에서 dbcp 를 통해 connection 을 가져올 때마다 connection 관련 추가적으로 해야 할 요건이 있음. 추가적인 요건을 A라 가정. 그런데

2021년 4월 3일
·
0개의 댓글