본문 바로가기
인프런/스프링 DB 2편 - 데이터 접근 활용 기술

[인프런] 스프링 DB 2편 - 데이터 접근 기술 활용 / 1. 데이터 접근 기술 - 시작

by hxxyeoniii 2024. 7. 3.

데이터 접근 기술 진행 방식 소개

1. SQL Mapper

- Jdbc Template

- Mybatis

 

-> 개발자가 sql를 작성하면 sql 결과를 객체로 매핑해줌

 

 

2. ORM 관련 기술

- JPA, Hibernate

- 스프링 데이터 JPA

- Querydsl

 

-> 기본적인 sql은 JPA가 대신 작성하고 처리해줌

-> JPA는 자바 진영의 ORM 표준, 하이버네이트는 JPA에서 가장 많이 사용하는 구현체

-> 스프링 데이터 JPA, Querydsl은 JPA를 더 편리하게 사용할 수 있도록 도와주는 프로젝트


프로젝트 셋팅 관련

메모리 저장소를 사용해 아이템을 저장하는 기본 웹 어플리케이션 생성

 

 

* @EventListener(ApplicationReadyEvent.class) 

: 스프링 컨테이너가 완전히 초기화를 끝내고 실행 준비가 되었을 때 발생하는 이벤트로 이 시점에 해당 애노테이션이 붙은 initData() 메서드를 호출함

: 만약 이 기능 대신 @PostConstruct 사용 시에 AOP가 다 처리되지 않은 시점에 호출될 수 있기 때문에 간혹 문제가 발생하기도 함

 

 

* 프로필

: 스프링은 로딩 시점에 application.properties의 spring.profile.active 속성을 읽어 프로필로 사용함

: 이 프로필은 로컬, 운영, 테스트 등등 다양한 환경에 따라 다른 설정을 할 때 사용하는 정보

local로 셋팅
main 메서드

-> @Profile("local")이 동작하고, testDataInit이 스프링 빈으로 등록됨

 

* 만약 프로필을 지정하지 않을 시, 디폴트 프로필이 실행됨