SpringDataJPA从入门到精通pdf下载pdf下载

SpringDataJPA从入门到精通百度网盘pdf下载

作者:
简介:本篇主要提供SpringDataJPA从入门到精通pdf下载
出版社:清华大学出版社
出版时间:2018-05
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

产品特色

内容简介

《Spring Data JPA从入门到精通》以Spring Boot为技术基础,从入门到精通,由浅入深地介绍Spring Data JPA的使用。有语法,有实践,有原理剖析。

《Spring Data JPA从入门到精通》分为12章,内容包括整体认识JPA、JPA基础查询方法、定义查询方法、注解式查询方法、@Entity实例里面常用注解详解、JpaRepository扩展详解、JPA的MVC扩展REST支持、DataSource的配置、乐观锁、SpEL表达式在Spring Data里面的应用、Spring Data Redis实现cacheable的实践、IntelliJ IDEA加快开发效率、Spring Data REST简单介绍等。

《Spring Data JPA从入门到精通》适合Java开发初学者、Java开发工程师、Java开发架构师阅读,也适合高等院校和培训学校相关专业的师生教学参考。


作者简介

张振华,先后在驴妈妈、携程、要买车等公司担任过Java高级工程师、架构师、开发主管、技术经理等职务,有丰富的电商公司的互联网工作经验。在电商公司工作期间,负责过PC站和后端服务的平台架构、实现和升级。目前从事Spring相关的Java架构工作,对Spring整个全家桶特别钟爱。从业十几年来没有离开过Java。著有图书《Java并发编程从入门到精通》。

目录

第一部分 基础部分
第1章 整体认识JPA
1.1 市场上ORM框架比对
1.2 JPA的介绍以及开源实现
1.3 了解Spring Data
1.3.1 Spring Data介绍
1.3.2 Spring Data的子项目
1.3.3 Spring Data操作的主要特性
1.4 Spring Data JPA的主要类及结构图
1.5 MySQL的快速开发实例
第2章 JPA基础查询方法
2.1 Spring Data Common的Repository
2.2 Repository的类层次关系 (diagms/hierarchy/structure)
2.3 CrudRepository方法详解
2.3.1 CrudRepository interface内容
2.3.2 CrudRepository interface的使用示例
2.4 PagingAndSortingRepository方法详解
2.4.1 PagingAndSortingRepository interface内容
2.4.2 PagingAndSortingRepository使用示例
2.5 JpaRepository方法详解
2.5.1 JpaRepository详解
2.5.2 JpaRepository的使用方法
2.6 Repository的实现类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.3 Projections对查询结果的扩展
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.3 SpEL表达式的支持
4.4 @Modifying修改查询
4.5 @Quer
4.6 @Procedure储存过程的查询方法
4.7 @NamedQueries预定义查询
4.7.1 简介
4.7.2 用法举例
4.7.3 @NamedQuery、@Query和方法定义查询的对比
第5章 @Entity实例里面常用注解详解
5.1 javax.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.1 0@Enumerated
5.2.1 1@Lob
5.2.1 2几个注释的配合使用
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.4 Left join、Inner join与@EntityGraph
5.4.1 Left join与Inner join
5.4.2 @EntityGraph
5.5 关于关系查询的一些坑

第二部分 晋级之高级部分
第6章 JpaRepository扩展详解
6.1 JpaRepository介绍
6.2 QueryByExampleExecutor的使用
6.2.1 QueryByExampleExecutor详细配置
6.2.2 QueryByExampleExecutor的使用示例
6.2.3 QueryByExampleExecutor的特点及约束
6.2.4 ExampleMatcher详解
6.2.5 QueryByExampleExecutor使用场景&实际的使用
6.2.6 QueryByExampleExecutor的原理
6.3 JpaSpecificationExecutor的详细使用
6.3.1 JpaSpecificationExecutor的使用方法
6.3.2 Criteria概念的简单介绍
6.3.3 JpaSpecificationExecutor示例
6.3.4 Specification工作中的一些扩展
6.3.5 JpaSpecificationExecutor实现原理
6.4 自定义Repository
6.4.1 EntityManager介绍
6.4.2 自定义实现Repository
6.4.3 实际工作的应用场景
第7章 Spring Data JPA的扩展
7.1 Auditing及其事件详解
7.1.1 Auditing如何配置
7.1.2 @MappedSupe
7.1.3 Auditing原理解析
7.1.4 Listener事件的扩展
7.2 @Version处理乐观锁的问题
7.3 对MvcWeb的支持
7.3.1 @EnableSpringDataWebSupport
7.3.2 DomainClassConverter组件
7.3.3 HandlerMethodArgumentResolvers可分页和排序
7.3.4 @PageableDefault改变默认的page和size
7.3.5 Page原理解析
7.4 @EnableJpaRepositories详解
7.4.1 Spring Data JPA加载Repositories配置简介
7.4.2 @EnableJpaRepositories详解
7.4.3 JpaRepositoriesAutoConfiguration源码解析
7.5 默认日志简单介绍
7.6 Spring Boot JPA的版本问题
第8章 DataSource的配置
8.1 默认数据源的讲解
8.1.1 通过三种方法查看默认的DataSource
8.1.2 DataSource和JPA的配置属性
8.1.3 JpaBaseConfiguration
8.1.4 Configuration思路
8.2 AliDruidDataSource的配置
8.3 事务的处理及其讲解
8.3.1 默认@Transactional注解式事务
8.3.2 声明式事务
8.4 如何配置多数据源
8.4.1 在application.properties中定义两个DataSource
8.4.2 定义两个DataSourceConfigJava类
8.5 Naming命名策略详解及其实践
8.5.1 Naming命名策略详解
8.5.2 实际工作中的一些扩展
8.6 完整的传统XML的配置方法

第三部分 延展部分
第9章 IntelliJ IDEA与Spring JPA
9.1 IntelliJ IDEA概述
9.2 DataBase插件
9.3 Persistence及JPA相关的插件介绍
9.4 IntelliJ IDEA分析源码用到的视图
第10章 Spring Data Redis详解
10.1 Redis之Jedis的使用
10.2 Spring Boot+Spring Data Redis配置
10.2.1 第1步:分析一下源码
10.2.2 第2步:配置方法
10.2.3 第3步:调用的地方
10.2.4 第4步:总结
10.2.5 主要的几个类&简单用法介绍
10.3 Spring Data Redis结合Spring Cache配置方法
10.3.1 Spring Cache 介绍
10.3.2 Spring Boot快速开Demo
10.3.3 Spring Boot Cache 实现过程解析
10.3.4 Cache和Spring Data Redis结合快速开始
10.3.5 Spring Boot实现过程
第11章 SpEL表达式讲解
11.1 SpEL介绍
11.1.1 SpEL主要特点
11.1.2 使用方法
11.2 SpEL的基础语法
11.2.1 逻辑运算操作
11.2.2 逻辑关系比较
11.2.3 逻辑关系
11.2.4 三元表达式& Elvis运算符
11.2.5 正则表达式的支持
11.2.6 Bean的引用
11.2.7 List和Map的操作
11.3 主要的类及其原理
11.3.1 ExpressionParser
11.3.2 root object
11.3.3 EvaluationContext
11.3.4 类型转换
11.3.5 SpelParserConfiguration编译器配置
11.3.6 表达式模板设置
11.3.7 主要类关系图
11.3.8 SpEL支持的一些特性
11.4 Spring的主要使用场景
11.4.1 Spring Data JPA中SpEL支持
11.4.2 Spring Cachae
11.4.3 @Value
11.4.4 Web验证应用场景
11.4.5 总结
第12章 Spring Data REST
12.1 快速入门
12.1.1 Spring Data REST介绍
12.1.2 快速开始
12.1.3 Repository资源接口介绍
12.2 Spring 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.3 Spring Boot 2.0加载原理
12.4 未来发展
附录1 Repository Query Method 关键字列表
附录2 Repository Query Method 返回值类型
附录3 JPA注解大全
附录4 Spring中涉及的注解
附录5 application.properties 里面关于JPA的配置大全

前言/序言

前 言


本书初衷

随着Java技术和微服务技术逐渐广泛应用,Spring Cloud、Spring Boot逐渐统一Java的框架江湖。市场上的ORM框架也逐渐被人重视起来。Spring Data逐渐走入Java开发者的视野,被很多架构师作为ORM框架的技术选型。市场上没有对Spring Data JPA的完整介绍。资料比较零散,很难一下子全面、深入地掌握Spring Data JPA。本书注重从实际出发来提高从事Java开发者的工作效率,可以作为一本很好的自我学习手册和Spring Data JPA的查阅手册。“不仅授之以鱼,还授之以渔”,不仅告诉大家是什么、怎么用,还告诉大家学习步骤、怎么学习,以及原理、使用技巧与实践。全书以Spring Boot为技术基础,从入门到精通,由浅入深地介绍和使用Spring Data JPA,很适合Java的初学者从此弯道超车,走上Spring全家桶学习的快车道。

“未来已经来临,只是尚未流行”

纵观市场上的ORM框架,MyBitas以灵活著称,但是要维护复杂的配置,并且不是Spring官方的天然全家桶,还得做额外的配置工作,即使是资深的架构师也得做很多封装;Hibernate以HQL和关系映射著称,但是使用起来不是特别灵活。这样Spring Data JPA来了,感觉要夺取ORM的JPA霸主地位了,它底层以Hibernate为封装,对外提供了超级灵活的使用接口,又非常符合面向对象和REST的风格,越来越多的API层面的封装都是以Spring Data JPA为基础的,感觉是架构师和开发者的福音。Spring Data JPA与Spring Boot配合起来使用具有天然的优势,你会发现越来越多的公司招聘会由传统的SSH、Spring、MyBitas技术要求逐步地变为Spring Boot、Spring Cloud、Spring Data等Spring 全家桶技术的要求。

追本溯源

架构师在架构设计系统之前都要先设计各种业务模型、数据模型,其实在众多技术框架中,要掌握Spring Boot、Spring MVC、Spring Cloud、微服务架构等,都离不开底层数据库操作层,如果我们能很好地掌握Data这层的技术要领,从下往上学习,这样可能会更好掌握一些。

本书特色

(1)本书针对Java开发者、Spring的使用者,是Spring Data JPA开发必备书籍。

(2)本书从介绍到使用再到原理和实践,可以作为一本很好的Spring Data JPA的实战手册。

(3)本书的代码清晰,迭代完整,便于全面、完整地掌握和学习JPA。

(4)本书注重从实战经验方面进行讲解,非常实用,一点即破。

(5)本书原型PPT深受同事喜爱,并在企业内部培训的时候得到了很多Java程序员的肯定。

阅读指南

本书以Spring Boot为开发基础和线索,大量采用了UML释义的讲解方式。本书分为3个部分,共12章。

(1)基础部分:整体认识JPA、JPA基础查询方法、定义查询方法、注解式查询方法、@Entity实例里面常用注解详解,了解Spring Data JPA的基本使用和语法。

(2)晋级之高级部分:JpaRepository详解、JPA的MVC扩展Rest支持、DataSource的配置、乐观锁等,了解其背后的实现动机及其原理。

(3)延展部分:SpEL表达式在Spring Data里面的应用、Spring Data Redis实现cacheable的实践、IntelliJ IDEA加快开发效率、Spring Data Rest的介绍,直至整个Spring Data的生态。

另外,由于Spring Boot 2.0的版本Spring Data JPA有了一些变化,作者对Spring Boot 2.0中的JPA

致谢

首先,感谢清华大学出版社各位编辑的辛勤劳动,得以让此书面世。其次,感谢家人对我的支持,特别是老婆大人在我写作过程中承担了大量的家务,比较辛苦。最后,特别感谢帮我写书评的行业技术大神们,也非常感谢日常工作中提供帮助的同事们以及技术社区的技术达人们,感谢大家提供的技术资料。

著 者

2018年3月