>  기사  >  Java  >  Spring Data JPA를 사용하여 Spring Boot에서 데이터베이스에 연결

Spring Data JPA를 사용하여 Spring Boot에서 데이터베이스에 연결

不言
不言앞으로
2018-10-17 16:16:343764검색

이 기사의 내용은 Spring Data JPA를 사용하여 Spring Boot에서 데이터베이스에 연결하는 내용입니다. 필요한 친구가 참고할 수 있기를 바랍니다.

저는 데이터베이스 개발을 위해 Mybatis를 사용하곤 했습니다. 최근 Spring Boot를 배우고 나서 JPA가 더 친숙하다는 것을 알았으니 JPA의 원리에 대해 함께 알아볼까요?

Spring Data JPA

JPA 간략한 소개

JPA(Java Persistence API)는 Java의 사양입니다. Java 객체와 관계형 데이터베이스 간의 데이터를 저장하는 데 사용됩니다.
JPA는 객체 지향 도메인 모델과 관계형 데이터베이스 시스템 사이의 다리 역할을 합니다. JPA는 단지 사양일 뿐이므로 그 자체로는 아무 것도 수행하지 않습니다. 구현이 필요합니다. 따라서 Hibernate, TopLink 및 iBatis와 같은 ORM 도구는 JPA 데이터 지속성 사양을 구현합니다.

Spring Data JPA는 ORM 프레임워크와 JPA 사양을 기반으로 Spring으로 캡슐화된 JPA 애플리케이션 프레임워크 세트로, 이를 통해 개발자는 최소한의 코드로 데이터에 액세스하고 조작할 수 있습니다. 추가, 삭제, 수정, 확인 등 공통 기능을 제공하며, 확장도 쉽습니다! Spring Data JPA를 배우고 사용하면 개발 효율성이 크게 향상됩니다!

기본 쿼리

Spring Data JPA는 기본 추가, 삭제, 수정 및 쿼리를 포함한 몇 가지 기본 데이터베이스 작업을 구현했습니다.

먼저 pom.xml에 관련 종속성을 도입해야 합니다.

    <dependency>
    <groupid>mysql</groupid>
    <artifactid>mysql-connector-java</artifactid>
    </dependency>
    <dependency>
    <groupid>org.springframework.boot</groupid>
    <artifactid>spring-boot-starter-data-jpa</artifactid>
    </dependency>

둘째, application.properties 구성 파일에 데이터베이스 관련 구성과 jpa 관련 구성을 추가해야 합니다

    #配置数据源
    spring.datasource.driver-class-name=com.mysql.jdbc.Driver
    spring.datasource.url=jdbc:mysql://localhost:3306/springboot
    spring.datasource.username=username
    spring.datasource.password=password
    
    #jpa数据库表格创建的方式,和控制台sql的打印
    jpa.hibernate.ddl-auto=update
    jpa.hibernate.show-sql=true

셋째, 엔터티 클래스를 작성합니다.

일반적으로 @Entity 주석을 엔터티 클래스에 추가하면 엔터티 클래스가 테이블에 연결됩니다.
속성 중 하나를 데이터베이스와 연결할 필요가 없고 표시 중에 계산만 수행하는 경우 @Transient 속성만 추가하면 됩니다.

Spring Data JPA를 사용하여 Spring Boot에서 데이터베이스에 연결

@Id는 기본 키를 식별합니다.
@GeneratedValue는 기본 키를 지정하는 자동 증가 방법입니다.

넷째, 쿼리 메소드를 작성합니다.

JpaRepository 인터페이스를 구현하기 위한 인터페이스 작성:
JpaRepository 뒤에 두 개의 매개변수를 추가해야 합니다. 하나는 엔터티 클래스이고 다른 하나는 기본 키 유형입니다.

Spring Data JPA를 사용하여 Spring Boot에서 데이터베이스에 연결

JpaRepository를 상속받은 후에는 간단한 추가, 삭제, 수정, 확인 기능을 사용할 수 있습니다.

@Test
public void testBaseQuery() throws Exception {
    Girl girl=new Girl();
    userRepository.findAll();
    userRepository.findOne(1);
    userRepository.save(girl);
    userRepository.delete(girl);
    // ...
}

맞춤형 단순 쿼리

이것은 기본 쿼리만 만족시킬 수 있기 때문에 그가 제공한 쿼리를 따르지 않으려면 자체 쿼리문을 작성해야 합니까? 대답은 확실히 '아니요'입니다. JPA 규칙에 따라 일부 쿼리 문을 생성할 수 있습니다.

사용자 정의 단순 쿼리는 메소드 이름을 기반으로 SQL을 자동으로 생성합니다. 기본 구문은 findXXBy, readAXXBy, queryXXBy, countXXBy, getXXBy이며 그 뒤에 속성 이름이 옵니다:

Spring Data JPA를 사용하여 Spring Boot에서 데이터베이스에 연결

Spring Data JPA를 사용하여 Spring Boot에서 데이터베이스에 연결

여기 우리가 직접 SQL을 작성해야 하는데, 주의해야 할 점을 살펴보겠습니다.

SQL 쿼리 메서드에 @Query 주석을 사용하세요. 삭제 및 수정이 포함된 경우 필요에 따라 @Modifying을 추가하세요. 또한 필요에 따라 사물에 대한 @Transactional 지원을 추가할 수도 있습니다.
참고: Query를 작성할 때 HQL 문의 테이블 이름은 ORM에 매핑된 클래스 이름이어야 합니다.

rreee

위 내용은 Spring Data JPA를 사용하여 Spring Boot에서 데이터베이스에 연결의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 segmentfault.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제