[Spring Project] JPA(Java Persistence API) - 사용 이유부터 설정 방법까지

2025. 4. 25. 18:19·Back end/Spring Project
반응형

🤷‍♀️ JPA는 왜 사용할까?

Google 트렌드에 따르면 JPA(Java Persistence API)는

2015년부터 관심도가 꾸준히 증가하고 있으며, 전 세계적으로 많이 사용되는 기술입니다.


🔗 Google 트렌드 바로가기

 

아래 이미지를 보면 JPA는 시간의 흐름에 따라 검색량이 꾸준히 증가하고 있습니다.

이는 객체 중심의 데이터 접근 방식이 점점 더 많은 개발자들에게 채택되고 있다는 것을 보여줍니다.


💡 JPA 란?

  • 자바 ORM(Object Relational Mapping) 기술 표준입니다.
  • 기존의 반복 코드 작성을 최소화하고, 기본적인 SQL을 직접 생성 및 실행해 줍니다.
  • 즉, SQL 중심의 설계에서 객체 중심의 설계로 패러다임 전환을 가능하게 해주며, 개발 생산성을 크게 향상시킬 수 있습니다.

📌 JPA 사용하는 법

1. 의존성 추가

build.gradle 파일에 아래와 같이 JPA 관련 의존성을 추가합니다.

implementation 'org.springframework.boot:spring-boot-starter-data-jpa'

2. JPA 설정

application.properties 파일에 다음과 같은 설정을 추가합니다.

spring.jpa.show-sql=true
spring.jpa.hibernate.ddl-auto=none
  • show-sql: JPA가 생성하는 SQL을 콘솔에 출력합니다. 디버깅 시 유용합니다.
  • ddl-auto: JPA는 테이블을 자동으로 생성하는 기능을 제공합니다.
    • none: 자동 생성 기능을 사용하지 않음
    • create: 애플리케이션 실행 시 엔티티를 기반으로 테이블을 새로 생성

이렇게 JPA의 기본적인 사용 준비는 완료되었습니다.


이후에는 엔티티(Entity), 리포지토리(Repository), 서비스(Service) 등을 구성하여

객체 중심의 데이터 처리 방식을 구현할 수 있습니다.

반응형

'Back end > Spring Project' 카테고리의 다른 글

[Spring Project] 스프링 데이터 JPA 완전 정복: CRUD부터 메서드 자동 생성까지  (0) 2025.04.30
[Spring Project] JPA 핵심: EntityManager와 주요 메서드 정리 (persist, find, createQuery)  (0) 2025.04.29
[Spring Project] 반복되는 JDBC 코드, JdbcTemplate으로 깔끔하게 정리하기  (0) 2025.04.24
[Spring Project] 스프링 부트 정적 컨텐츠와 Welcome Page 동작 원리  (0) 2025.03.26
Swagger2 사용하여 RESTful API 문서 자동화하기 (Feat.egovframework 전자정부프레임워크)  (0) 2023.02.13
'Back end/Spring Project' 카테고리의 다른 글
  • [Spring Project] 스프링 데이터 JPA 완전 정복: CRUD부터 메서드 자동 생성까지
  • [Spring Project] JPA 핵심: EntityManager와 주요 메서드 정리 (persist, find, createQuery)
  • [Spring Project] 반복되는 JDBC 코드, JdbcTemplate으로 깔끔하게 정리하기
  • [Spring Project] 스프링 부트 정적 컨텐츠와 Welcome Page 동작 원리
Kim-SooHyeon
Kim-SooHyeon
개발일기 및 알고리즘, 블로그 운영에 대한 글을 포스팅합니다. :) 목표: 뿌리 깊은 개발자 되기
    반응형
  • Kim-SooHyeon
    soo_vely의 개발로그
    Kim-SooHyeon
  • 전체
    오늘
    어제
    • 분류 전체보기 (254) N
      • 알고리즘 (108)
        • 자료구조 (3)
        • Java (104)
        • Python (1)
      • Back end (70)
        • Spring Project (27)
        • Java (21)
        • API (1)
        • Python (0)
        • Django (3)
        • Linux (1)
        • 서버 (2)
        • 에러로그 (11)
        • 부스트 코스 (1)
      • Front end (9)
        • HTML, CSS (4)
        • JavaScript (4)
        • JQuery (0)
      • 기타 프로그래밍 (4)
        • Android Studio (1)
        • Arduino (2)
        • Azure Fundamental(AZ-900) (1)
      • 개발도구 (24) N
        • IntelliJ (2) N
        • Git (12)
        • SVN (0)
        • Eclipse (2)
        • 기타 Tool (8)
      • Database (16)
        • Oracle (10)
        • MySQL (0)
        • H2 Database (3)
        • ORM & JPA (1)
      • 자격증 (10)
        • 컴활 1급 (7)
        • 컴활 2급 (2)
        • SQLD (1)
      • 기타 (13)
        • 블로그 운영 (6)
        • 문서 (1)
        • 기타 (6)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    문자열
    단계별풀기
    구현
    배열
    백준알고리즘
    Oracle
    Git
    for문
    오라클
    solved.ac
    spring
    github
    알고리즘
    백준
    springboot
    백준 자바
    1차원 배열
    jpa
    BOJ
    java
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
Kim-SooHyeon
[Spring Project] JPA(Java Persistence API) - 사용 이유부터 설정 방법까지
상단으로

티스토리툴바