스프링 JdbcTemplate과 MyBatis 같은 라이브러리는 JDBC API에서 본 반복 코드를 대부분 제거해준다. 하지만 SQL은 직접 작생해야 한다.
==> 반복 코드 ==> resultset같이 매번 반복되는 코드들
참고로 생성자가 하나일 때는 @Autowired를 생략해 줄 수 있다.
- DataSource 설정
- 위에서 bean으로 등록한 DataSource를 주입
- @Autowired에 의해 주입
- JdbcTemplate 객체를 생성하여 dataSource를 주입한다.
- CRUD API 제공
- SQL문 작성
- RowMapper interface 구현을 통해 SQL의 결과를 객체에 매핑하여 결과를 리턴
- mapRow()라는 interface Method를 정의하여 결과처리
- 한 번만 사용하는 기능의 경우는 RowMapper를 익명 클래스로 작성
람다식으로 간결하게 작성
그 다음 아래와 같이 memberRowMapper()를 인자로 넣어 list형태로 반환되는 결과를 저장하고 stream으로 변환하여 반환한다. 한 눈에 봐도 jdbc를 직접 구현할 때보다 훨씬 간결하다.
* save()
- SimpleJdbcInsert를 통하여 테이블명 (memeber), 칼럼명(id)을 주면 DB에 insert
* 스프링 빈 등록
* JdbcTemplate 테스트
성공
반응형
'Spring > Introduction to Spring' 카테고리의 다른 글
Spring Data JPA (0) | 2021.02.24 |
---|---|
jpa (0) | 2021.02.22 |
스프링 통합 테스트 (0) | 2021.02.20 |
spring DB 접근 (0) | 2021.02.19 |
회원 웹 기능 (0) | 2021.02.19 |