전체 글

스터디/2023_스프링부트

[study] 스프링 DB 2편 - 4. MyBatis

김영한님의 스프링 DB 2편 - 데이터 접근 활용 기술을 듣고 정리한 내용입니다. MyBatis SQLMapper 이다. SQL을 XML에 편리하게 작성할 수 있고 동적 쿼리를 매우 편리하게 작성할 수 있다 JdbcTemplate - SQL 여러줄 String sql = "update item " + "set item_name=:itemName, price=:price, quantity=:quantity " + "where id=:id"; MyBatis - SQL 여러줄 update item set item_name=#{itemName}, price=#{price}, quantity=#{quantity} where id = #{id} JdbcTemplate - 동적 쿼리 String sql = "sele..

스터디/2023_스프링부트

[study] 스프링 DB 2편 - 3. 데이터 접근 기술 - 테스트

김영한님의 스프링 DB 2편 - 데이터 접근 활용 기술을 듣고 정리한 내용입니다. 테스트 - 데이터베이스 분리 로컬에서 사용하는 어플리케이션 서버와 테스트에서 같은 DB 사용하고 있다면 테스트에서 문제가 발생한다. 테스트 전용 데이터베이스를 별도로 운영하면 된다. 테스트는 다른 테스트와 격리해야 한다. 테스트는 반복해서 실행할 수 있어야 한다. 테스트 - 데이터 롤백 트랜잭션과 롤백 전략 이때 도움이 되는 것이 바로 트랜잭션이다. 예를 들어서 다음 순서와 같이 각각의 테스트 실행 직전에 트랜잭션을 시작하고, 각각의 테스트 실행 직후에 트랜잭션을 롤백해야 한다. 1. 트랜잭션 시작 2. 테스트 A 실행 3. 트랜잭션 롤백 4. 트랜잭션 시작 5. 테스트 B 실행 6. 트랜잭션 롤백 테스트 - @Transa..

스터디/2023_스프링부트

[study] 스프링 DB 2편 - 2. JdbcTemplate

김영한님의 스프링 DB 2편 - 데이터 접근 활용 기술을 듣고 정리한 내용입니다. JdbcTemplate 소개 Sql을 직접 사용하는 경우 스프링이 제공하는 JdbcTemplet은 JDBC를 편리하게 사용할 수 있게 도와준다. 장점 설정의 편리 spring-jdbc 라이브러리에 포함되어 있는데, 이 라이브러리는 스프링으로 JDBC를 사용할 때 기본으로 사용되는 라이브러리이다. 별도의 설정 없이 바로 사용 가능 반복문제 해결 JdbcTemplate는 템플릿 콜백 패턴을 사용해서 JDBC를 직접 사용할 때 발생하는 대부분의 반복작업 대신 처리 개발자는 SQL을 작성하고, 전달할 파리미터를 정의하고, 응답 값을 매핑하기만 하면 된다. 단점 동적 SQL 해결하기 어려움 item테이블 생성 후 진행 drop ta..

Hotsan
Experience