| | | Java EE互聯網輕量級框架整合開發 SSM+Redis+Spring微服務( 圖書 | 該商品所屬分類:圖書 -> | 【市場價】 | 1225-1776元 | 【優惠價】 | 766-1110元 | 【作者】 | 楊開振劉家成 | 【出版社】 | 電子工業出版社 | 【ISBN】 | 9787121413995 | 【折扣說明】 | 一次購物滿999元台幣免運費+贈品 一次購物滿2000元台幣95折+免運費+贈品 一次購物滿3000元台幣92折+免運費+贈品 一次購物滿4000元台幣88折+免運費+贈品
| 【本期贈品】 | ①優質無紡布環保袋,做工棒!②品牌簽字筆 ③品牌手帕紙巾
| |
版本 | 正版全新電子版PDF檔 | 您已选择: | 正版全新 | 溫馨提示:如果有多種選項,請先選擇再點擊加入購物車。*. 電子圖書價格是0.69折,例如了得網價格是100元,電子書pdf的價格則是69元。 *. 購買電子書不支持貨到付款,購買時選擇atm或者超商、PayPal付款。付款後1-24小時內通過郵件傳輸給您。 *. 如果收到的電子書不滿意,可以聯絡我們退款。謝謝。 | | | | 內容介紹 | |
![](/c49/31/10033911668057.jpg)
出版社:電子工業出版社 ISBN:9787121413995 商品編碼:10033911668057 品牌:文軒 出版時間:2021-07-01 代碼:199 作者:楊開振,劉家成
"![](http://img14.360buyimg.com/cms/jfs/t1/203358/9/26405/134589/62f4a34cEcdefae53/84e082ed3b03dbc0.jpg) 作 者:楊開振,劉家成 著 定 價:199 出 版 社:電子工業出版社 出版日期:2021年07月01日 頁 數:788 裝 幀:平裝 ISBN:9787121413995 "◎ 暢銷書升級版,涵蓋Java EE主流框架技術SSM+Redis+Spring微服務,快速上手開發◎內容全面,以實際應用為導向,取舍明確◎尤其對於技術的重點、難點,解釋得深入淺出,案例豐富◎ 用Spring MVC整合MyBatis框架技術◎ 用Spring整合Redis在Java互聯網技術上的應用◎ 通過對Spring Boot和Spring Cloud的講解讓大家理解Spring微服務開發◎ 通過講解互聯網高並發業務,通過Spring微服務實例串聯本書的主要知識點等 ●上冊 第1部分入門和技術基礎 第1章JavaEE基礎2 1.1JavaEE概述2 1.1.1JavaEE容器3 1.1.2JavaEE組件3 1.2開發環境簡介4 1.2.1Tomcat簡介4 1.2.1Maven5 1.2.3Web項目結構6 1.2.4Web項目發布包7 1.3Web容器的組件――Servlet7 1.3.1Servlet入門實例7 1.3.2Servlet的生命周期8 1.3.3HttpServletRequest的應用12 1.3.4HttpServletResponse的應用14 1.3.5過濾器的使用17 1.3.6監聽20 1.3.7Servlet容器初始化器21 1.3.8使用Cookie23 1.3.9提交表單24 1.3.10使用web.xml26 第2章認識SSM框架、Redis和微服務28 2.1Spring框架28 2.1.1SpringIoC簡介28 2.1.2SpringAOP30 2.2MyBatis簡介31 2.2.1Hibernate簡介32 2.2.2MyBatis34 2.2.3Hibernate和MyBatis的區別35 2.3SpringMVC簡介36 2.4 的NoSQL――Redis36 2.5SSM+Redis結構框圖及概述37 2.6Spring微服務38 第3章Java設計模式40 3.1Java反射技術40 3.1.1通過反射構建對像40 3.1.2反射方法42 3.1.3實例42 3.2動態代理模式和責任鏈模式43 3.2.1JDK動態代理44 3.2.2CGLIB動態代理46 3.2.348 3.2.4責任鏈模式51 3.3觀察者模式54 3.3.1概述54 3.3.2實例55 3.4普通工廠模式和抽像工廠模式58 3.4.1普通工廠模式58 3.4.2抽像工廠模式59 3.5建造者模式61 3.5.1概述61 3.5.2Builder模式實例62 第2部分互聯網持久框架――MyBatis 第4章認識MyBatis核心組件66 4.1持久層的概念和MyBatis的特點66 4.2準備MyBatis環境67 4.3MyBatis的核心組件69 4.4SqlSessionFactory70 4.4.1使用XML配置文件構建SqlSessionFactory對像70 4.4.2使用代碼構建SqlSessionFactory對像72 4.5SqlSession72 4.6映射器73 4.6.1用XML實現映射器74 4.6.2用注解實現映射器75 4.6.3用SqlSession發送SQL76 4.6.4用Mapper接口發送SQL77 4.6.5兩種發送SQL的方式對比77 4.7生命周期77 4.7.1SqlSessionFactoryBuilder77 4.7.2SqlSessionFactory78 4.7.3SqlSession78 4.7.4Mapper78 4.8實例79 第5章MyBatis配置85 5.1概述85 5.2properties屬性86 5.2.1proper素86 5.2.2properties文件87 5.2.3程序代碼傳遞87 5.3settings配置88 5.4typeAliases別名90 5.4.1繫統定義別名91 5.4.2自定義別名92 5.5typeHandler類型轉換器93 5.5.1繫統定義的typeHandler94 5.5.2自定義typeHandler98 5.5.3枚舉typeHandler101 5.5.4文件操作105 5.6對像工廠106 5.7插件108 5.8運行環境108 5.8.1事務管理器109 5.8.2數據源環境111 5.9databaseIdProvider114 5.9.1使用繫統默認的databaseIdProvider114 5.9.2不使用繫統規則116 5.10引入映射器的方法118 第6章映射器120 6.1概述120 6.2sel素――查詢語句121 6.2.1簡單的sel素的應用122 6.2.2自動映射和駝峰映射123 6.2.3傳遞多個參數124 6.2.4使用resultMap映射結果集127 6.2.5分頁參數RowBounds127 6.3ins素――插入語句129 6.3.1概述129 6.3.2簡單的insert語句的應用130 6.3.3主鍵回填130 6.3.4自定義主鍵131 6.4upd素和del素132 6.5素132 6.6參數133 6.6.1概述133 6.6.2存儲過程參數支持134 6.6.3特殊字符串的替換和處理(#和$)134 6.7result素134 6.7.1result素的構成135 6.7.2使用Map存儲結果集136 6.7.3使用POJO存儲結果集136 6.8級聯137 6.8.1MyBatis中的級聯137 6.8.2建立POJO140 6.8.3配置映射文件143 6.8.4N+1問題147 6.8.5延遲加載147 6.8.6另一種級聯151 6.8.7多對多級聯153 6.9緩存156 6.9.1一級緩存和二級緩存157 6.9.2緩存配置項、自定義和引用160 6.10存儲過程161 6.10.1IN和OUT參數存儲過程162 6.10.2遊標的使用164 第7章動態SQL167 7.1概述167 7.素167 7.3choose、when和otherw素168 7.4trim、where和素169 7.5fore素170 7.6用test的屬性判斷字符串171 7.7b素171 第8章MyBatis的解析和運行原理173 8.1構建SqlSessionFactory過程174 8.1.1構建Configuration175 8.1.2構建映射器的內部組成176 8.1.3構建SqlSessionFactory178 8.2SqlSession運行過程179 8.2.1映射器的動態代理179 8.2.2SqlSession運行原理183 第9章插件192 9.1插件接口192 9.2插件的初始化193 9.3插件的代理和反射設計194 9.4常用的工具類――MetaObject197 9.5插件開發過程和實例198 9.5.1確定需要攔截的簽名198 9.5.2實現攔截方法200 9.5.3配置和運行202 9.5.4插件實例――分頁插件203 第3部分Spring基礎 第10章SpringIoC的概念216 10.1Spring概述216 10.2SpringIoC概述218 10.2.1主動創建對像219 10.2.2被動創建對像220 10.2.3SpringIoC闡述222 10.3SpringIoC容器223 10.3.1SpringIoC容器的設計223 10.3.2SpringIoC容器的初始化227 10.3.3SpringBean的生命周期228 第11章裝配SpringBean233 11.1依賴注入和依賴查找233 11.1.1構造器注入233 11.1.2使用setter注入234 11.1.3依賴查找235 11.2裝配Bean概述236 11.3通過XML配置裝配Bean237 11.3.1裝配簡易值237 11.3.2裝配集合238 11.3.3命名空間裝配241 11.4通過注解裝配Bean243 11.4.1使用注解@Component裝配Bean243 11.4.2自動裝配――@Autowired247 11.4.3自動裝配的歧義性(注解@Primary和注解@Qualifier)248 11.4.4裝載帶有參數的構造方法類251 11.4.5使用注解@Bean裝配252 11.4.6注解自定義Bean的初始化和銷毀方法253 11.5裝配的混合使用253 11.6使用Profile256 11.6.1使用注解@Profile配置256 11.6.2使用XML定義Profile257 11.6.3啟動Profile258 11.7加載屬性文件260 11.7.1使用注解方式加載屬性文件261 11.7.2使用XML方式加載屬性文件263 11.8條件化裝配Bean264 11.9Bean的作用域265 11.10使用Spring表達式268 11.10.1SpringEL相關的類268 11.10.2Bean的屬性和方法270 11.10.3使用類的靜態常量和方法271 11.10.4SpringEL運算271 第12章面向切面編程273 12.1一個簡單的約定遊戲273 12.1.1約定規則273 12.1.2讀者的代碼275 12.1.3筆者的代碼277 12.2SpringAOP的基本概念279 12.2.1AOP的概念和使用原因279 12.2.2面向切面編程的術語283 12.2.3Spring對AOP的支持285 12.3使用注解@AspectJ開發SpringAOP285 12.3.1選擇連接點285 12.3.2創建切面286 12.3.3切點287 12.3.4測試AOP289 12.3.5環繞通知291 12.3.6織入293 12.3.7向通知傳遞參數294 12.3.8引入295 12.4使用XML配置開發SpringAOP297 12.4.1各類通知299 12.4.2環繞通知301 12.4.3向通知傳遞參數302 12.4.4引入302 12.5經典SpringAOP應用程序303 12.6多個切面305 第13章Spring和數據庫編程311 13.1傳統的JDBC代碼的弊端311 13.2配置數據庫313 13.2.1使用簡單數據庫配置313 13.2.2使用第三方數據庫連接池314 13.2.3使用JNDI數據庫連接池314 13.3JDBC代碼失控的解決方案――JdbcTemplate315 13.3.1JdbcTemplate的增、刪、查、改316 13.3.2執行多條SQL語句317 13.3.3JdbcTemplate的源碼分析319 13.4MyBatis-Spring項目320 13.4.1配置SqlSessionFactoryBean321 13.4.2SqlSessionTemplate的配置325 13.4.3配置MapperFactoryBean327 13.4.4配置MapperScannerConfigurer327 13.4.5定制掃描330 13.4.6使用Java配置文件配置MyBatis-Spring項目331 13.4.7測試Spring+MyBatis333 第14章深入Spring數據庫事務管理336 14.1Spring數據庫事務管理器的設計336 14.1.1配置事務管理器339 14.1.2用Java配置方式實現Spring數據庫事務340 14.2編程式事務342 14.3聲明式事務342 14.3.1@Transactional的配置項343 14.3.2使用XML配置事務管理器344 14.3.3事務定義器345 14.3.4聲明式事務的約定流程346 14.4數據庫的相關知識348 14.4.1數據庫事務ACID特性348 14.4.2丟失更新348 14.4.3隔離級別349 14.5選擇隔離級別和傳播行為352 14.5.1選擇隔離級別352 14.5.2傳播行為353 14.6在Spring+MyBatis組合中使用事務354 14.6.1實例354 14.6.2深入理解傳播行為361 14.7注解@Transactional的自調用失效問題366 14.8典型錯誤用法剖析371 14.8.1錯誤使用Service371 14.8.2長時間占用事務372 14.8.3錯誤捕捉異常374 下冊 第4部分SpringMVC框架 第15章SpringMVC的初始化和流程2 15.1MVC設計概述2 15.1.1SpringMVC的架構3 15.1.2SpringMVC組件與流程4 15.1.3SpringMVC入門實例5 15.2SpringMVC初始化9 15.2.1初始化SpringIoC上下文10 15.2.2初始化映射請求上下文10 15.2.3使用注解配置方式初始化16 15.2.4WebMvcConfigurer接口20 15.3SpringMVC開發流程詳解21 15.3.1注解@RequestMapping的使用21 15.3.2控制器的開發23 15.3.3視圖渲染27 第16章SpringMVC基礎組件開發31 16.1控制器接收各類請求參數31 16.1.1接收普通請求參數32 16.1.2使用注解@RequestParam獲取參數34 16.1.3使用URL傳遞參數35 16.1.4傳遞JSON參數36 16.1.5接收列表數據和表單序列化38 16.2重定向41 16.3保存並獲取屬性參數43 16.3.1注解@RequestAttribute43 16.3.2注解@SessionAttribute和注解@SessionAttributes45 16.3.3注解@CookieValue和注解@RequestHeader48 16.4驗證表單49 16.4.1使用JSR303注解驗證輸入內容49 16.4.2使用驗證器53 16.5數據模型56 16.6視圖和視圖解析器58 16.6.1視圖58 16.6.2視圖解析器61 16.6.3實例:Excel視圖的使用62 16.7上傳文件65 16.7.1 ltipartResolver概述66 16.7.2提交上傳文件表單69 第17章構建REST風格網站73 17.1REST風格的特點73 17.1.1REST風格的概念73 17.1.2注解@ResponseBody的使用75 17.2SpringMVC對REST風格的支持76 17.2.1SpringMVC支持REST風格的注解77 17.2.2返回結果封裝81 17.3RestTemplate的使用84 第18章SpringMVC高級應用89 18.1SpringMVC處理器執行的過程89 18.1.1HandlerMethodArgumentResolver機制90 18.1.2轉換器和格式化器概述92 18.1.3一對一轉換器(Converter)93 18.1.4數組和集合轉換器(GenericConverter)96 18.1.5格式化器(Formatter)100 18.1.6HttpMessageConverter消息轉換器103 18.2106 18.2.1的定義106 18.2.2單個的執行流程107 18.2.3開發108 18.2.4多個執行的順序109 18.3為控制器添加通知112 18.4處理異常116 18.5國際化117 18.5.1概述117 18.5.2MessageSource接口119 18.5.3CookieLocaleResolver和SessionLocaleResolver121 18.5.4國際化(LocaleChangeInterceptor)122 18.5.5開發國際化123 第5部分Redis應用 第19章Redis概述126 19.1Redis在JavaWeb中的應用127 19.1.1緩存127 19.1.2高速讀/寫場景128 19.2Redis的安裝和使用129 19.2.1在Windows環境下安裝Redis129 19.2.2在Linux下安裝Redis131 19.3Redis的JavaAPI133 19.3.1在Java程序中使用Redis133 19.3.2在Spring中使用Redis134 19.4Redis的數據結構簡介141 19.5Redis和關繫數據庫的差異142 第20章Redis數據結構和其常用命令144 20.1Redis數據結構――字符串145 20.2Redis數據結構――哈希150 20.3Redis數據結構――鏈表154 20.4Redis數據結構――集合160 20.5Redis數據結構――有序集合163 20.5.1Redis基礎命令163 20.5.2spring-data-redis對有序集合的封裝166 20.5.3使用Spring操作有序集合168 第21章Redis的一些常用技術171 21.1Redis事務171 21.1.1Redis的基礎事務172 21.1.2探索Redis事務回滾174 21.1.3使用watch命令監控事務175 21.2流水線178 21.3發布訂閱180 21.4超時命令184 21.5使用Lua語言186 21.5.1執行輸入Lua程序代碼186 21.5.2執行Lua文件190 第22章Redis配置193 22.1Redis配置文件193 22.2Redis備份(持久化)194 22.2.1快照備份194 22.2.2AOF備份195 22.3Redis內存回收策略196 22.4復制197 22.4.1主從同步基礎概念198 22.4.2Redis主從同步配置198 22.4.3Redis主從同步的過程199 22.5哨兵模式201 22.5.1哨兵模式概述201 22.5.2搭建哨兵模式202 22.5.3在Java中使用哨兵模式204 22.5.4哨兵模式的其他配置項207 22.6Redis集群207 22.6.1概述207 22.6.2搭建Redis集群210 22.6.3在Spring中使用Redis集群215 第23章Spring緩存機制和Redis的結合217 23.1Redis和數據庫的結合217 23.1.1Redis和數據庫讀操作218 23.1.2Redis和數據庫寫操作219 23.2使用Spring緩存機制整合Redis220 23.2.1準備測試環境220 23.2.2Spring的緩存管理器224 23.2.3緩存注解簡介226 23.2.4注解@Cacheable和@CachePut226 23.2.5注解@CacheEvict230 23.2.6不適用緩存的方法231 23.2.7自調用失效問題231 23.2.8Redis緩存管理器的配置――RedisCacheConfiguration232 23.3RedisTemplate的實例234 第6部分Spring微服務基礎 第24章SpringBoot入門238 24.1SpringBoot的概念238 24.1.1什麼是SpringBoot?238 24.1.2為什麼要使用SpringBoot?239 24.1.3為什麼需要學習傳統Spring應用程序?239 24.2搭建SpringBoot開發環境239 24.2.1使用Eclipse開發SpringBoot項目240 24.2.2使用IntelliJIDEA開發SpringBoot項目242 24.2.3運行SpringBoot項目243 24.3認識SpringBoot項目和開發244 24.3.1SpringBoot項目是如何運行的244 24.3.2在SpringBoot項目中如何進行自定義開發246 24.3.3使用JSP視圖249 第25章SpringBoot開發252 25.1使用SpringBoot開發數據庫252 25.1.1配置數據源252 25.1.2整合MyBatis258 25.1.3數據庫事務264 25.2使用SpringMVC264 25.2.1使用WebMvcConfigurer接口265 25.2.2使用SpringBoot的SpringMVC配置266 25.2.3使用轉換器266 25.3使用Redis268 25.3.1配置和使用Redis268 25.3.2使用緩存管理器272 第26章SpringBoot部署、測試和監控274 26.1打包、部署和運行SpringBoot項目275 26.1.1打包SpringBoot項目275 26.1.2運行SpringBoot項目276 26.1.3修改SpringBoot項目的配置277 26.2SpringBootActuator278 26.2.1Actuator端點簡介278 26.2.2保護Actuator端點280 26.2.3配置項281 26.2.4自定義端點283 26.2.5健康指標項286 26.3測試289 26.3.1基本測試290 26.3.2使用隨機端口測試REST風格的請求291 26.3.3Mock測試292 第27章SpringCloud微服務入門295 27.1微服務架構的概念295 27.1.1微服務的風格295 27.1.2微服務架構總結298 27.2SpringCloud基礎架構和概念298 27.2.1SpringCloud概述299 27.2.2SpringCloud的架構、組件和基礎概念299 27.3服務治理和服務發現301 27.3.1服務治理中心――Eureka301 27.3.2服務發現303 27.3.3高可用305 27.3.4基礎架構307 27.4服務調用――Ribbon309 27.4.1Ribbon概述310 27.4.2Ribbon實例310 27.4.3Ribbon工作原理312 27.5斷路器――Hystrix315 27.5.1Hystrix的使用316 27.5.2艙壁隔離321 27.5.3Hystrix儀表盤323 27.7服務調用――OpenFeign327 27.7.1入門實例327 27.7.2在OpenFeign中使用Hystrix330 27.8舊網關――Zuul331 27.8.1入門實例332 27.8.2過濾器333 27.9新網關――Gateway337 27.9.1入門實例338 27.9.2Gateway中的術語340 27.9.3Gateway已有斷言和過濾器的使用340 27.9.4自定義過濾器345 27.10新斷路器――Resilience4j347 27.10.1斷路器348 27.10.2限速器350 27.10.3艙壁隔離352 27.10.4限時器353 第7部分繫統實踐 第28章高並發繫統設計和Spring微服務實例356 28.1高並發繫統設計356 28.1.1高並發繫統的優化經驗356 28.1.2性能357 28.1.3高可用363 28.2微服務實例365 28.2.1SpringBoot下的整合(product模塊)366 28.2.2服務調用(user模塊)376 28.2.3網關(gateway模塊)378 28.2.4測試380 附錄A數據庫表模型381 隨著移動互聯網的興起,以Java技術為後臺的互聯網技術占據了市場的主導地位。在Java互聯網後臺開發中,SSM框架(Spring+SpringMVC+MyBatis)成為了主要架構,本書講述了SSM框架從入門到實際工作的要求。與此同時,為了提高繫統性能,NoSQL(尤其是Redis)在互聯網繫統中已經廣泛應用用,為了適應這個變化,本書通過Spring講解了有關Redis的技術應用。隨著微服務的異軍凸起,Spring微服務也成為時代的主流,本書也包括這方面的內容。 本書主要分為7部分:第1部分對Java互聯網的框架和主要涉及的模式做簡單介紹;第2部分講述MyBatis技術;第3部分講述Spring基礎(包括IoC、AOP和數據庫應用),重點講解Spring數據庫事務應用,以滿足互聯網企業的應用要求;第4部分講述SpringMVC框架;第5部分通過Spring講解Redis技術;第等 楊開振,劉家成 著 "楊開振,技術暢銷書作家,精通Java 互聯網技術開發和實踐,擁有十餘年一線企業開發經驗,著有業內暢銷書《深入淺出MyBatis 技術原理與實戰》《深入淺出Spring Boot 2.x》和《Spring Cloud微服務和分布式繫統實踐》等。寫作特點是技術點詳盡準確、文字淺顯易懂,立志於用書普及基礎技術。劉家成,資深軟件工程師,曾任職Synnex中國、亞信國際等,在電信、分銷領域有豐富經驗,在Java高並發和Spring生態有深刻的理解。" ![](https://img10.360buyimg.com/imgzone/jfs/t1/147514/7/5440/73116/5f34a3beE3ba58783/f5b2391383f5625c.jpg)
" | | | | | |