zoukankan      html  css  js  c++  java
  • Spring Data JPA 的基本用法

    Spring Data JPA 介绍

    JPA 是 Java Persistence API 的简称,中文名为 Java 持久层 API。

    可以理解为 JPA 规范的再次封装抽象,底层还是使用了 Hibernate 的 JPA 技术实现,引用 JPQL(Java Persistence Query Language)查询语言,属于 Spring 整个生态体系的一部分。

    简单示例

    1. 导入依赖

    <dependency>
       <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter-data-jpa</artifactId>
    </dependency>
    
    <!-- 使用嵌入式 H2 数据库 -->
    <dependency>
                <groupId>com.h2database</groupId>
                <artifactId>h2</artifactId>
                <scope>runtime</scope>
    </dependency>
    

    2、创建实体类

    @Data
    @Entity
    public class Book {
        @Id
        @GeneratedValue(strategy = GenerationType.AUTO)
        private Long id;
        private String reader;
        private String isbn;
        private String title;
        private String author;
        private String description;
    }
    

    注解 @Data 出自依赖 lombok ,它会自动生成 setting/getting 方法。

    @Entity 注解表明它是一个 JPA 实体,id 属性加了 @Id 和 @GeneratedValue 注解,说明这个字段是实体的唯一标识,并且这个字段的值是自动生成的。

    3、定义仓库接口

    package com.example.readinglist.data;
    
    import com.example.readinglist.bean.Book;
    import org.springframework.data.jpa.repository.JpaRepository;
    
    import java.util.List;
    
    /**
     * @author 爱吃西瓜的番茄酱
     * @version 1.0
     * @date 2020/10/8 14:49
     *
     * Spring Data Jpa 提供了很神奇的魔法,
     * 只需定义仓库接口,在应用程序启动后,
     * 该接口在运行时会自动实现。
     */
    public interface ReadingListRepository extends JpaRepository<Book, Long> {
        /**
         * 根据读者的用户名来查找阅读列表。
         * @param reader
         * @return
         */
        List<Book> findByReader(String reader);
    }
    

    通过扩展 JpaRepository, ReadingListRepository 直接继承了18个执行常用持久化操作的方法。

    JpaRepository 是个泛型接口,有两个参数:仓库操作的领域对象类型,及其ID属性的类型。

    此外,我还增加了一个 findByReader() 方法,可以根据读者的用户名来查找阅读列表。

    我们不需要定义 ReadingListRepository 接口的实现类。Spring Data 提供了很神奇的魔法,只需定义仓库接口,在应用程序启动后,该接口在运行时会自动实现。

    4、使用 Spring MVC 创建 Web 界面

    5、创建逻辑视图,就是 HTML 文件

    基本的 Spring Data JPA 操作如上所示。

    参考资料

    Spring Data JPA 官方文档

    Spring Data JPA 基本使用

    Spring Data JPA(一)简介

    《Spring Boot 实战》

    每天学习一点点,每天进步一点点。

  • 相关阅读:
    Pale Moon 15.1 发布,苍月浏览器
    开源云端代码编辑器 ACE 1.0 正式发布
    Jailer 4.0.14 发布,智能数据提取工具
    Bitcoin 0.7.0 发布, P2P网络的匿名数字货币
    Pike 7.8.700 发布,脚本编程语言
    PhoneGap 2.1.0 正式版发布
    DHTMLX Touch 1.2 发布,移动 JS 框架
    abcm2ps 6.6.20/7.1.0 发布
    Little CMS 2.4 发布,色彩管理引擎
    Linux静态库和动态库
  • 原文地址:https://www.cnblogs.com/youcoding/p/13784351.html
Copyright © 2011-2022 走看看