2021-08-08

0808 SimpleJdbcInsert 이용하기

 jdbcTemplate을 이용해서 insert하는 방법은 여러가지가 있다.

1. jdbcTemplate의 update메소드를 이용한다. ??파라메터

2. NamedParameterJdbcTemplate을 이용한다. :컬럼명 파라메터

3. SimpleJdbcInsert 을 이용한다

-> 테이블명 만으로!! sql을 짜지않고!!!! 파라메터만 던지면 insert를 해준다!! 매직!!


jdbcTemplate을 생성자파라메터로 받기때문에 넘겨주고 ( 혹은 dataSource를 생성자에 넘겨줘도 됨)


테이블명 지정하고, map에 넣은 파라메터만 넘겨주면 된다!! 매직!!

근데 신경쓰이는 건 - 결국에 저 테이블명 설정할때 jdbcInsert가 새로 생성되는건가?

아니면 @Bean으로 jdbcTemplate 넘겨줬으니까 싱글톤인가??

생성자에서 테이블명이랑 autoGeneratedKeyColumn다 셋팅해주고. 메서드에서는 이용만 하는 방식으로 하는게 좋을 듯함. 메서드 부를때마다 new되면. insert다량으로 할때 곤란할듯..





4 . SimpleJdbcInsert의 장점은 - autoGenerated되는 key값을 리턴받을 수 있다는 점이다.

마이바티스의 insertKey메서드랑 비슷한느낌!!

generatedAutoKey 값이라는 값만 추가해주면 - 해당 키값을 아주 간편하게 리턴받을수있음!! 매직!!


-------------------------------------------------------

메서드마다 simpleJdbcInsert를 생성할수는 없으니까 - 애초에 해당 repository에서 생성자에서 한번 만들어서 싱글톤으로 돌리는 전략


근데 조금 희한(?)한게, jdbctemplate을 생성자에 넘겨주니까 - SimpleJdbcInsert가 null이라고 에러 뜨더라. 

그래서 아예 dateSource를 넘겨주니까 - 에러 안나고 잘됨!!

댓글 없음:

댓글 쓰기

0328 fdisk, mkfs, mount, fstab

 1. 하드디스크를 붙인다. 2. fdisk -l로 하드디스크를 확인한다.  - interactiive한 커맨드모드 사용하여 (m) 붙인 하드디스크의 파티셔닝을 한다.  - 마지막에 w를 해야 실제로 반영이 된다.  3. mkfs를 하여 어떤 파일시스...