-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
3/26 新書到! 3/19 新書到! 3/14 新書到! 12/12 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

Spring Data JPA從入門到精通

( 簡體 字)
作者:張振華類別:1. -> 程式設計 -> JAVA -> Spring
譯者:
出版社:清華大學出版社Spring Data JPA從入門到精通 3dWoo書號: 49327
詢問書籍請說出此書號!

缺書
NT售價: 295

出版日:5/1/2018
頁數:240
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
加入購物車 加到我的最愛
(請先登入會員)
ISBN:9787302499480
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證)
作者序:

譯者序:

前言:

前 言



本書初衷
隨著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也做了一些總結,作為本書的配套閱讀內容。可以通過掃描如下二維碼查看:


技術支持
本書示例源代碼下載地址(注意數字與字母大小寫)如下:
https://github.com/zhangzhenhuajack/spring-data-jpa-guide
如果下載有問題,請聯系電子郵箱booksaga@163.com,郵件主題為“Spring Data JPA從入門到精通”。
雖然本書是以Spring Boot為配置案例的教程,但是實際工作中,我們可能用XML甚至是混合的模式,還有可能是MyBatis的方式,所以實戰不免會超出本書范疇,歡迎加群進行討論,一起進步。交流QQ群號如下:
? QQ群一:240619787。
? QQ群二:559701472。
作者本人的微信二維碼如下:

致謝
首先,感謝清華大學出版社各位編輯的辛勤勞動,得以讓此書面世。其次,感謝家人對我的支持,特別是老婆大人在我寫作過程中承擔了大量的家務,比較辛苦。最后,特別感謝幫我寫書評的行業技術大神們,也非常感謝日常工作中提供幫助的同事們以及技術社區的技術達人們,感謝大家提供的技術資料。
著 者
2018年3月

內容簡介:

《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開發架構師閱讀,也適合高等院校和培訓學校相關專業的師生教學參考。
目錄:

第一部分基礎部分
第1章整體認識JPA 3
1.1市場上ORM框架比對 3
1.2JPA的介紹以及開源實現 4
1.3了解SpringData 5
1.3.1SpringData介紹 5
1.3.2SpringData的子項目 5
1.3.3SpringData操作的主要特性 6
1.4SpringDataJPA的主要類及結構圖 7
1.5MySQL的快速開發實例 8
第2章JPA基礎查詢方法 13
2.1SpringDataCommon的Repository 13
2.2Repository的類層次關系(diagms/hierarchy/structure) 14
2.3CrudRepository方法詳解 16
2.3.1CrudRepositoryinterface內容 17
2.3.2CrudRepositoryinterface的使用示例 18
2.4PagingAndSortingRepository方法詳解 19
2.4.1PagingAndSortingRepositoryinterface內容 19
2.4.2PagingAndSortingRepository使用示例 20
2.5JpaRepository方法詳解 21
2.5.1JpaRepository詳解 21
2.5.2JpaRepository的使用方法 21
2.6Repository的實現類SimpleJpaRepository 22
第3章定義查詢方法 24
3.1定義查詢方法的配置方法 24
3.2方法的查詢策略設置 25
3.3查詢方法的創建 26
3.4關鍵字列表 27
3.5方法的查詢策略的屬性表達式 29
3.6查詢結果的處理 29
3.6.1參數選擇分頁和排序(Pageable/Sort) 29
3.6.2查詢結果的不同形式(List/Stream/Page/Future) 30
3.6.3Projections對查詢結果的擴展 31
3.7實現機制介紹 34
第4章注解式查詢方法 36
4.1@Query詳解 36
4.1.1語法及源碼 36
4.1.2@Query用法 37
4.1.3@Query排序 38
4.1.4@Query分頁 39
4.2@Param用法 40
4.3SpEL表達式的支持 40
4.4@Modifying修改查詢 41
4.5@QueryHints 42
4.6@Procedure儲存過程的查詢方法 43
4.7@NamedQueries預定義查詢 44
4.7.1簡介 44
4.7.2用法舉例 45
4.7.3@NamedQuery、@Query和方法定義查詢的對比 45
第5章@Entity實例里面常用注解詳解 46
5.1javax.persistence概況介紹 46
5.2基本注解 48
5.2.1@Entity 48
5.2.2@Table 49
5.2.3@Id 50
5.2.4@IdClass 50
5.2.5@GeneratedValue 51
5.2.6@Basic 52
5.2.7@Transient 52
5.2.8@Column 52
5.2.9@Temporal 53
5.2.10@Enumerated 53
5.2.11@Lob 54
5.2.12幾個注釋的配合使用 54
5.3關聯關系注解 55
5.3.1@JoinColumn定義外鍵關聯的字段名稱 55
5.3.2@OneToOne關聯關系 55
5.3.3@OneToManyg與@ManyToOne關聯關系 56
5.3.4@OrderBy關聯查詢時排序 57
5.3.5@JoinTable關聯關系表 58
5.3.6@ManyToMany關聯關系 59
5.4Leftjoin、Innerjoin與@EntityGraph 60
5.4.1Leftjoin與Innerjoin 60
5.4.2@EntityGraph 61
5.5關于關系查詢的一些坑 61
第二部分晉級之高級部分
第6章JpaRepository擴展詳解 65
6.1JpaRepository介紹 65
6.2QueryByExampleExecutor的使用 66
6.2.1QueryByExampleExecutor詳細配置 66
6.2.2QueryByExampleExecutor的使用示例 67
6.2.3QueryByExampleExecutor的特點及約束 68
6.2.4ExampleMatcher詳解 68
6.2.5QueryByExampleExecutor使用場景&實際的使用 70
6.2.6QueryByExampleExecutor的原理 73
6.3JpaSpecificationExecutor的詳細使用 74
6.3.1JpaSpecificationExecutor的使用方法 74
6.3.2Criteria概念的簡單介紹 75
6.3.3JpaSpecificationExecutor示例 76
6.3.4Specification工作中的一些擴展 78
6.3.5JpaSpecificationExecutor實現原理 80
6.4自定義Repository 81
6.4.1EntityManager介紹 81
6.4.2自定義實現Repository 82
6.4.3實際工作的應用場景 84
第7章SpringDataJPA的擴展 95
7.1Auditing及其事件詳解 96
7.1.1Auditing如何配置 96
7.1.2@MappedSuperclass 98
7.1.3Auditing原理解析 99
7.1.4Listener事件的擴展 101
7.2@Version處理樂觀鎖的問題 103
7.3對MvcWeb的支持 105
7.3.1@EnableSpringDataWebSupport 105
7.3.2DomainClassConverter組件 105
7.3.3HandlerMethodArgumentResolvers可分頁和排序 106
7.3.4@PageableDefault改變默認的page和size 108
7.3.5Page原理解析 108
7.4@EnableJpaRepositories詳解 110
7.4.1SpringDataJPA加載Repositories配置簡介 110
7.4.2@EnableJpaRepositories詳解 111
7.4.3JpaRepositoriesAutoConfiguration源碼解析 113
7.5默認日志簡單介紹 114
7.6SpringBootJPA的版本問題 117
第8章DataSource的配置 119
8.1默認數據源的講解 120
8.1.1通過三種方法查看默認的DataSource 120
8.1.2DataSource和JPA的配置屬性 123
8.1.3JpaBaseConfiguration 124
8.1.4Configuration思路 126
8.2AliDruidDataSource的配置 126
8.3事務的處理及其講解 129
8.3.1默認@Transactional注解式事務 129
8.3.2聲明式事務 133
8.4如何配置多數據源 134
8.4.1在application.properties中定義兩個DataSource 134
8.4.2定義兩個DataSourceConfigJava類 135
8.5Naming命名策略詳解及其實踐 137
8.5.1Naming命名策略詳解 137
8.5.2實際工作中的一些擴展 139
8.6完整的傳統XML的配置方法 140
第三部分延展部分
第9章IntelliJIDEA與SpringJPA 145
9.1IntelliJIDEA概述 145
9.2DataBase插件 146
9.3Persistence及JPA相關的插件介紹 150
9.4IntelliJIDEA分析源碼用到的視圖 155
第10章SpringDataRedis詳解 158
10.1Redis之Jedis的使用 158
10.2SpringBoot+SpringDataRedis配置 164
10.2.1第1步:分析一下源碼 165
10.2.2第2步:配置方法 168
10.2.3第3步:調用的地方 170
10.2.4第4步:總結 171
10.2.5主要的幾個類&簡單用法介紹 171
10.3SpringDataRedis結合SpringCache配置方法 172
10.3.1SpringCache介紹 172
10.3.2SpringBoot快速開始Demo 176
10.3.3SpringBootCache實現過程解析 177
10.3.4Cache和SpringDataRedis結合快速開始 179
10.3.5SpringBoot實現過程 182
第11章SpEL表達式講解 189
11.1SpEL介紹 189
11.1.1SpEL主要特點 190
11.1.2使用方法 190
11.2SpEL的基礎語法 191
11.2.1邏輯運算操作 192
11.2.2邏輯關系比較 193
11.2.3邏輯關系 194
11.2.4三元表達式&Elvis運算符 194
11.2.5正則表達式的支持 195
11.2.6Bean的引用 195
11.2.7List和Map的操作 196
11.3主要的類及其原理 197
11.3.1ExpressionParser 197
11.3.2rootobject 198
11.3.3EvaluationContext 199
11.3.4類型轉換 199
11.3.5SpelParserConfiguration編譯器配置 200
11.3.6表達式模板設置 201
11.3.7主要類關系圖 202
11.3.8SpEL支持的一些特性 202
11.4Spring的主要使用場景 203
11.4.1SpringDataJPA中SpEL支持 203
11.4.2SpringCachae 204
11.4.3@Value 204
11.4.4Web驗證應用場景 205
11.4.5總結 205
第12章SpringDataREST 206
12.1快速入門 206
12.1.1SpringDataREST介紹 206
12.1.2快速開始 208
12.1.3Repository資源接口介紹 215
12.2SpringDataREST定制化 216
12.2.1@RepositoryRestResource改變***Repository對應的Path路徑和資源名字 216
12.2.2@RestResource改變SearchPath 217
12.2.3改變返回結果 218
12.2.4隱藏某些Repository、Repository的查詢方法或@Entity關系字段 219
12.2.5隱藏Repository的CRUD方法 219
12.2.6自定義JSON輸出 220
12.3SpringBoot2.0加載原理 220
12.4未來發展 222
附錄1RepositoryQueryMethod關鍵字列表 223
附錄2RepositoryQueryMethod返回值類型 226
附錄3JPA注解大全 228
附錄4Spring中涉及的注解 232
附錄5application.properties里面關于JPA的配置大全 235
序: