[Spring] 스프링 DB 2편 01

알재·2023년 11월 27일

스프링 DB

목록 보기
7/17

김영한님의 스프링 DB 2편 을 공부하여 정리한 글입니다.

데이터 접근 기술 소개

SQLMapper

  • JdbcTemplate
  • MyBatis

SQL Mapper 주요기능

  • 개발자는 SQL만 작성하면 해당 SQL의 결과를 객체로 편리하게 매핑해준다.
  • JDBC를 직접 사용할 때 발생하는 여러가지 중복을 제거해주고, 기타 개발자에게 여러가지 편리한 기능을 제공한다.

ORM 주요 기능

  • JPA를 사용하면 기본적인 SQL은 JPA가 대신 작성하고 처리해준다.
    개발자는 저장하고 싶은 객체를 마치 자바 컬렉션에 저장하고 조회하듯이 사용하면 ORM 기술이 데이터베이스에 해당 객체를 저장하고 조회해준다.
  • JPA는 자바 진영의 ORM 표준이고, Hibernate(하이버네이트)는 JPA에서 가장 많이 사용하는 구현체이다.
    자바에서 ORM을 사용할 때는 JPA 인터페이스를 사용하고, 그 구현체로 하이버네이트를 사용한다고 생각하면 된다.
  • 스프링 데이터 JPA, Querydsl은 JPA를 더 편리하게 사용할 수 있게 도와주는 프로젝트이다.
    실무에서는 JPA를 사용하면 이 프로젝트도 꼭! 함께 사용하는 것이 좋다.

프로젝트 설정

프로필

스프링은 로딩 시점에 application.properties 의 spring.profiles.active 속성을 읽어서 프로필로 사용한다.
프로필은 로컬(나의 PC), 운영 환경, 테스트 실행 등등 다양한 환경에 따라서 다른 설정을 할 때 사용하는 정보이다.

main 프로필

/src/main/resources 하위의 application.properties

spring.profiles.active=local
  • /src/main 하위의 자바 객체를 실행할 때 (주로 main() ) 동작하는 스프링 설정이다.
    @Profile("local") 가 동작한다.
  • 프로필을 지정하지 않으면 디폴트( default ) 프로필이 실행된다.

test 프로필

/src/test/resources 하위의 application.properties

spring.profiles.active=test
  • /src/test 하위의 자바 객체를 실행할 때 동작하는 스프링 설정이다.
  • 주로 테스트 케이스를 실행할 때 동작한다.

profile
저장소

0개의 댓글