内容简介
第一部分 基础部分
第1章 整体认识JPA
1.1市场上ORM框架比对
1.2JPA的介绍以及开源实现
1.3了解Spring Data
1.3.1Spring Data介绍
1.3.2Spring Data的子项目
1.3.3Spring Data操作的主要特性
1.4Spring Data JPA的主要类及结构图
1.5MySQL的快速开发实例
第2章 JPA基础查询方法
2.1Spring Data Common的Repository
2.2Repository的类层次关系(diagms/hierarch /structure)
2.3CrudRepository方法详解
2.3.1CrudRepository interface内容
2.3.2CrudRepository interface的使用示例
2.4PagingAndSortingRepository方法详解
2.4.1PagingAndSortingRepository interface内容
2.4.2PagingAndSortingRepository使用示例
2.5JpaRepository方法详解
2.5.1JpaRepository详解
2.5.2JpaRepository的使用方法
2.6Repository的实现类SimpleJpaRepository
第3章 定义查询方法
3.1定义查询方法的配置方法
3.2方法的查询策略设置
3.3查询方法的创建
3.4关键字列表
3.5方法的查询策略的属性表达式
3.6查询结果的处理
3.6.1参数选择分页和排序(Pageable/Sort)
3.6.2查询结果的不同形式(List/Stream/Page/Future)
3.6.3Projections对查询结果的扩展
3.7实现机制介绍
第4章 注解式查询方法
4.1@Query详解
4.1.1语法及源码
4.1.2@Query用法
4.1.3@Query排序
4.1.4@Query分页
4.2@Param用法
4.3SpEL表达式的支持
4.4@Modifying修改查询
4.5@QueryHints
4.6@Procedure储存过程的查询方法
4.7@NamedQueries预定义查询
4.7.1简介
4.7.2用法举例
4.7.3@NamedQuery、@Query和方法定义查询的对比
第5章 @Entity实例里面常用注解详解
5.1javax.persistence概况介绍
5.2基本注解
5.2.1@Entity
5.2.2@Table
5.2.3@Id
5.2.4@IdClass
5.2.5@GeneratedValue
5.2.6@Basic
5.2.7@Transient
5.2.8@Column
5.2.9@Temporal
5.2.10@Enumerated
5.2.11@Lob
5.2.12几个注释的配合使用
5.3关联关系注解
5.3.1@JoinColumn定义外键关联的字段名称
5.3.2@OneToOne关联关系
5.3.3@OneToManyg与@ManyToOne关联关系
5.3.4@OrderBy关联查询时排序
5.3.5@JoinTable关联关系表
5.3.6@ManyToMany关联关系
5.4Left join、 Inner join与@EntityGraph
5.4.1Left join与Inner join
5.4.2@EntityGraph
5.5关于关系查询的一些坑
第二部分 晋级之高级部分
第6章 JpaRepository扩展详解
6.1JpaRepository介绍
6.2QueryByExampleExecutor的使用
6.2.1QueryByExampleExecutor详细配置
6.2.2QueryByExampleExecutor的使用示例
6.2.3QueryByExampleExecutor的特点及约束
6.2.4ExampleMatcher详解
6.2.5QueryByExampleExecutor使用场景&实际的使用
6.2.6QueryByExampleExecutor的原理
6.3JpaSpecificationExecutor的详细使用
6.3.1JpaSpecificationExecutor的使用方法
6.3.2Criteria概念的简单介绍
6.3.3JpaSpecificationExecutor示例
6.3.4Specification工作中的一些扩展
6.3.5JpaSpecificationExecutor实现原理
6.4自定义Repository
6.4.1EntityManager介绍
6.4.2自定义实现Repository
6.4.3实际工作的应用场景
第7章 Spring Data JPA的扩展
7.1Auditing及其事件详解
7.1.1Auditing如何配置
7.1.2@MappedSuperclass
7.1.3Auditing原理解析
7.1.4Listener事件的扩展
7.2@Version处理乐观锁的问题
7.3对MvcWeb的支持
7.3.1@EnableSpringDataWebSupport
7.3.2DomainClassConverter组件
7.3.3HandlerMethodArgumentResolvers可分页和排序
7.3.4@PageableDefault改变默认的page和size
7.3.5Page原理解析
7.4@EnableJpaRepositories详解
7.4.1Spring Data JPA加载Repositories配置简介
7.4.2@EnableJpaRepositories详解
7.4.3JpaRepositoriesAutoConfiguration源码解析
7.5默认日志简单介绍
7.6Spnng Boot JPA的版本问题
第8章 DataSource的配置
8.1默认数据源的讲解
8.1.1通过三种方法查看默认的DataSource
8.1.2DataSource和JPA的配置属性
8.1.3JpaBaseConfiguration
8.1.4Configuration思路
8.2AIiDruidDataSource的配置
8.3事务的处理及其讲解
8.3.1默认@Transactional注解式事务
8.3.2声明式事务
8.4如何配置多数据源
8.4.1在application.properties中定义两个DataSource
8.4.2定义两个DataSourceConfigJava类
8.5Naming命名策略详解及其实践
8.5.1Naming命名策略详解
8.5.2实际工作中的一些扩展
8.6完整的传统XML的配置方法
第三部分 延展部分
第9章 IntelliJ IDEA与Spring JPA
9.1IntelliJ IDEA概述
9.2DataBase插件
9.3Persistence及JPA相关的插件介绍
9.4IntelliJ IDEA分析源码用到的视图
第10章 Spring Data Redis详解
10.1Redis之Jedis的使用
10.2Spring Boot+Spring Data Redis配置
10.2.1第1步:分析一下源码
10.2.2第2步:配置方法
10.2.3第3步:调用的地方
10.2.4第4步:总结
10.2.5主要的几个类&简单用法介绍
10.3Spring Data Redis结合Spring Cache配置方法
10.3.1Spring Cache介绍
10.3.2Spring Boot快速开始Demo
10.3.3Spring Boot Cache实现过程解析
10.3.4Cache和Spring Data Redis结合快速开始
10.3.5Spring Boot实现过程
第11章 SpEL表达式讲解
11.1SpEL介绍
11.1.1SpEL主要特点
11.1.2使用方法
11.2SpEL的基础语法
11.2.1逻辑运算操作
11.2.2逻辑关系比较
11.2.3逻辑关系
11.2.4三元表达式& Elvis运算符
11.2.5正则表达式的支持
11.2.6Bean的引用
11.2.7List和Map的操作
11.3主要的类及其原理
11.3.1ExpressionParser
11.3.2root object
11.3.3EvaluationContext
11.3.4类型转换
11.3.5SpelParserConfiguration编译器配置
11.3.6表达式模板设置
11.3.7主要类关系图
11.3.8SpEL支持的一些特性
11.4Spnng的主要使用场景
11.4.1Spring Data JPA中SpEL支持
11.4.2Spring Cachae
11.4.3@Value
11.4.4Web验证应用场景
11.4.5总结
第12章 Spring Data REST
12.1快速入门
12.1.1Spring Data REST介绍
12.1.2快速开始
12.1.3Repository资源接口介绍
12.2Spring Data REST定制化
12.2.1@RepositoryRestResource改变***Repository对应的Path路径和资源名字
12.2.2@RestResource改变SearchPath
12.2.3改变返回结果
12.2.4隐藏某些Repository.Repository的查询方法或@Entity关系字段
12.2.5隐藏Repository的CRUD方法
12.2.6自定义JSON输出
12.3Spring Boot 2.0加载原理
12.4未来发展
附录1 Repository Query Method关键字列表
附录2 Repository Query Method返回值类型
附录3 JPA注解大全
附录4 Spring中涉及的注解
附录5 application.properties里面关于J PA的配置大全