学习过程中遇到的一些名词解释
public class SimpleJpaRepository<DOMAIN, ID>
: CrudRepository
的默认实现
public interface TypedQuery<X> extends Query
public interface Page<T> extends Slice<T>
A page is a sublist of a list of objects. It allows gain information about the position of it in the containing entire list.
@MappedSuperclass
当我们进行开发项目时,我们经常会用到实体映射到数据库表的操作,此时我们经常会发现在我们需要隐射的几个实体类中,有几个共同的属性,例如编号ID,创建者,创建时间,修改者,修改时间,备注等。遇到这种情况,我们可能会想到把这些属性抽象出来当成一个父类,然后再以不同的实体类来继承这个父类。那么,我们便可以使用@MappedSuperclass注解,通过这个注解,我们可以将该实体类当成基类实体,它不会隐射到数据库表,但继承它的子类实体在隐射时会自动扫描该基类实体的隐射属性,添加到子类实体的对应数据库表中。@MappedSuperclass标识的类不能再有@Entity或@Table注解
@PrePersist
@PreUpdate
@PreRemove
回调方法是附加到实体生命周期事件的用户定义方法,并且在发生这些事件时由JPA自动调用
DDD
Domain-Driven Design, 领域驱动设计,对软件所涉及到的领域进行建模,以应对系统规模过大时引起的软件复杂性的问题。
MyBatis
半自动化的持久层框架,需要显示给出SQL语句
Hibernate
全自动化的持久层框架,
ORM
Object-Relation-Mapping对象关系映射
JDBC
Java DataBase Connectivity,java数据库连接,一组用于执行SQL语句的Java api
POJO
Plain Ordinary Java Object,简单Java对象,就是JavaBeans
SQL语言的分类
数据查询语言DQL:数据查询语言DQL基本结构是由SELECT子句,FROM子句,WHERE子句组成的查询块,数据操纵语言DML:INSERT UPDATE DELETE,数据定义语言DD:创建数据库中的各种对象—–表、视图、索引、同义词、聚簇等L,数据控制语言DCL:授予或回收访问数据库的某种特权,并控制数据库操纵事务发生的时间及效果,对数据库实行监视等
javax.persistence.@Temporal
数据库的字段类型有date、time、datetime,而Temporal注解的作用就是帮Java的Date类型进行格式化,一共有三种注解值:第一种:@Temporal(TemporalType.DATE)——>实体类会封装成日期“yyyy-MM-dd”的 Date类型。第二种:@Temporal(TemporalType.TIME)——>实体类会封装成时间“hh-MM-ss”的 Date类型。第三种:@Temporal(TemporalType.TIMESTAMP)——>实体类会封装成完整的时间“yyyy-MM-dd hh:MM:ss”的 Date类型。
javax.persistence.@Entity
表明这是一个实体类,要与数据库做orm映射,默认表的名字就是类名,表中的字段就是类中的属性。它的定义如下:其中name属性表示用Java Persistence Query Language语句时写的表的名字,如果没有在@Table注解中指定表名,这个名字也将作为表名映射到数据库
javax.persistence.@Table
就是改变某些默认的映射规则,如表名,schema等,可以添加索引和约束,看一下它的定义
public interface JpaSpecificationExecutor<T>
Spring-Data-JPA实现多条件动态查询的执行器?
public interface Specification<T> extends Serializable
用来定义查询条件的类?
VO
View Object:视图对象,用于展示层,它的作用是把某个指定页面(或组件)的所有数据封装起来。
DTO
Data Transfer Object:数据传输对象,泛指用于展示层和服务层之间的数据传输对象
DO
Domain Object:领域对象,就是从现实世界中抽象出来的有形或无形的业务实体。
PO
Persistence Object:持久化对象,跟持久层的数据结构形成映射
Kubernetes
YMP
ActFramwork