美文网首页
Spring Data JPA知识 day05

Spring Data JPA知识 day05

作者: 小陈工 | 来源:发表于2022-04-26 08:01 被阅读0次

一、Specifications动态查询

        有时我们在查询某个实体的时候,给定的条件是不固定的,这时就需要动态构建相应的查询语句,在Spring Data JPA中可以通过JpaSpecificationExecutor接口查询。相比JPQL,其优势是类型安全,更加的面向对象。

        对于JpaSpecificationExecutor,这个接口基本是围绕着Specification接口来定义的。我们可以简单的理解为,Specification构造的就是查询条件。

        Specification接口中只定义了如下一个方法:

1.1 使用Specifications完成条件查询

1.2 基于Specifications的分页查询

        对于Spring Data JPA中的分页查询,是其内部自动实现的封装过程,返回的是一个Spring Data JPA提供的pageBean对象。其中的方法说明如下:

1.3 方法对应关系

二、多表设计

2.1 表之间关系的划分

        从图可以看出,系统设计的三种实体关系分别为:多对多、一对多和一对一关系。注意:一对多关系可以看为两种:  即一对多,多对一。所以说四种更精确。

2.2 在JPA框架中表关系的分析步骤

        在实际开发中,我们数据库的表难免会有相互的关联关系,在操作表的时候就有可能会涉及到多张表的操作。而在这种实现了ORM思想的框架中(如JPA),可以让我们通过操作实体类就实现对数据库表的操作。

        第一步:首先确定两张表之间的关系。

        第二步:在数据库中实现两张表的关系

        第三步:在实体类中描述出两个实体的关系

        第四步:配置出实体类和数据库表的关系映射(重点)

相关文章

网友评论

      本文标题:Spring Data JPA知识 day05

      本文链接:https://www.haomeiwen.com/subject/nslcyrtx.html