Spring Framework 6開發實戰(Spring+Spring Web MVC+MyBatis)
定 價:¥79
中 教 價:¥46.61 (5.90折)促銷
庫 存 數: 13
叢 書 名:計算機科學與技術叢書
《Spring Framework 6開發實戰(Spring Spring Web MVC MyBatis)》基于框架Spring 6.x,按照理論講解 貫穿案例的模式詳細講解了SSM框架的應用技術。本書共10章,第1章對Spring框架進行簡單介紹;第2~4章結合員工系統分別講解Spring框架的核心功能IoC、AOP、聲明性事務等內容;第5章引入當當書城企業項目案例,結合具體項目講解Spring整合JDBC;第6章講解Spring MVC框架;第7章講解使用Spring MVC實現當當書城項目;第8章講解MyBatis框架的使用技術;第9、10章結合當當書城項目,講解SSM框架統一整合。 《Spring Framework 6開發實戰(Spring Spring Web MVC MyBatis)》適合具備Java基礎的SSM初學者和進階開發人員閱讀,也適合Java Web開發工程師閱讀,同時也可作為高等院校計算機、軟件工程專業高年級本科生、研究生相關課程的教材。
《Spring Framework 6開發實戰(Spring Spring Web MVC MyBatis)》采用理論講解 貫穿案例相結合的闡述方式,先進行理論講解,再用小的案例進行演示,然后分別使用員工系統和當當書城項目作為本書的貫穿案例,把理論知識與項目實踐有機地結合在一起。通過《Spring Framework 6開發實戰(Spring Spring Web MVC MyBatis)》,讀者不僅能掌握理論知識,而且能掌握相關理論的應用場景。
在Java平臺開發中,Java開源框架一直占據著重要的地位,以前流行的是SSH(Spring Struts 2 Hibernate),當前階段的主流框架為SSM(Spring Spring Web MVC MyBatis)。 2019年12月31日,著名的云計算及安全軟件提供商VMware宣布,它已經完成了以27億美元收購Pivotal軟件公司的交易。Spring Framework和Spring Boot項目就是Pivotal公司的著名產品,這也意味著Spring項目開始加速向云端發力。 2022年11月16日,VMware正式發布了Spring Framework 6.0,它的依賴環境是JDK17 、Jakarta EE 9 (Tomcat 10 / Jetty 11)、Spring Boot 3(參考Spring Framework 5.3.x的環境為Java 8~ Java 16、Java EE 7和Java EE 8),這標志著在甲骨文的全新運行環境基礎上,Spring Framework和Spring Boot項目也進行了全面升級。 Spring項目現在已經成長為一個龐大的家族,我們熟知的有Spring Framework、Spring Boot、Spring Data、Spring Cloud、Spring Security、Spring Batch、Spring LDAP、Spring??AMQP、Spring REST、Spring WebFlow、Spring Web Services、Spring Shell等,本書重點講解的是Spring Framework框架(簡稱Spring),這是所有其他Spring項目的基礎。 Spring MVC框架從屬于Spring Framework,Spring Framework的核心功能是IoC、AOP、事務整合等,而Spring MVC的核心功能是MVC和REST服務,因此習慣上會把Spring與Spring MVC作為兩個框架分別講解。 MyBatis是持久層框架,它與Hibernate的定位是一致的。現在Hibernate在企業項目的開發中仍然很有生命力,而MyBatis則在互聯網項目開發中更有優勢。 本書采用理論講解 貫穿案例相結合的闡述方式,先進行理論講解,再用小的案例進行演示,然后分別使用員工系統和當當書城項目作為本書的貫穿案例,把理論知識與項目實踐有機地結合在一起。這樣讀者不僅能掌握理論知識,而且能掌握相關理論的應用場景。 配套資源 * 程序代碼、開發環境等資源:掃描目錄上方的配套資源二維碼下載。 * 課件等資源:掃描封底的書圈二維碼在公眾號下載,或者到清華大學出版社官方網站本書頁面下載。 注:請先掃描封底刮刮卡中的文泉云盤防盜碼進行綁定后再獲取配套資源。 Java開源框架SSM的學習是一個漫長的過程,一蹴而就是不可能的,尤其是SSM的原理、SSM與Java EE平臺的關系、如何用SSM搭建高并發系統等,需要長時間的消化。因此,本書的讀者不限于剛入門的大學生,對于有3~5年開發經驗的熟練開發人員,仍然可以從本書中有所收益。 限于編者的水平和經驗,錯誤或者不妥之處在所難免,敬請廣大讀者批評指正和提出寶貴意見。 肖海鵬????? 2023年4月 II
III
第1章 Spring入門 11.1 Rod Johson與Spring 11.2 Spring與Jakarta EE的關系 21.2.1 Java EE與Jakarta EE 21.2.2 Jakarta EE是什么 31.2.3 Jakarta EE 9架構 31.2.4 Spring與Jakarta EE 41.3 Spring Project介紹 51.3.1 Spring官網 51.3.2 Spring熱門Project 61.4 Spring Framework歷史版本比較 61.4.1 Spring Framework資料下載 61.4.2 Spring 6.x對比Spring 5.x的變化 61.4.3 Spring 6.x的趨勢 71.5 Spring Framework功能總覽 71.5.1 核心功能 71.5.2 數據層整合 71.5.3 Web層技術 71.5.4 外部系統集成 81.6 Spring Framework模塊組成 81.6.1 模塊架構圖 81.6.2 各模塊的職責 8第2章 Spring IoC 102.1 IoC與DI的概念 102.2 IoC容器與ApplicationContext 102.3 IoC容器的創建與使用 112.3.1 創建IoC容器實例 112.3.2 從IoC容器讀取Bean 132.3.3 案例:hello入門 132.4 Bean管理 142.4.1 BeanDefinition 152.4.2 屬性id和name的區別 162.4.3 創建Bean對象 162.5 案例:HelloSpringIoC 202.5.1 面向接口編程 212.5.2 XML 反射實現IoC 222.5.3 Spring實現IoC 232.6 依賴注入 242.6.1 依賴注入介紹 242.6.2 項目案例:StaffUser系統與DI 242.6.3 構造器注入 282.6.4 Set方法注入 312.6.5 XML依賴配置詳解 332.6.6 Autowire注入 402.6.7 方法注入 442.6.8 依賴注入總結 472.7 Bean對象的范圍 482.7.1 配置Bean的范圍 492.7.2 singleton和prototype 492.7.3 案例:HelloSpringAction 502.7.4 Bean的Web應用 522.7.5 Bean的依賴 532.7.6 Java Bean的屬性范圍 542.8 定制Bean的特性信息 542.8.1 Bean的生命周期回調處理 552.8.2 Aware接口 592.9 IoC容器擴展 602.9.1 BeanPostProcessor接口 602.9.2 FactoryBean接口 622.10 注解配置 642.10.1 JSR相關注解 642.10.2 Spring相關注解 712.11 標準事件與自定義事件 732.11.1 標準事件 732.11.2 案例:郵件黑名單 732.11.3 案例:接收多類型消息 752.12 Bean工廠 762.12.1 BeanFactory接口 762.12.2 HierarchicalBeanFactory接口 762.12.3 ListableBeanFactory接口 772.12.4 實現類DefaultListableBeanFactory 772.12.5 Bean與BeanFactory 782.12.6 IoC容器與BeanFactory 78第3章 面向切面編程 803.1 AOP介紹 803.1.1 AOP中的專業術語 803.1.2 advice的通知類型 813.1.3 AOP動態代理選擇 813.2 @AspectJ支持 823.2.1 @AspectJ介紹 823.2.2 autoproxying配置 823.2.3 聲明Aspect 833.2.4 聲明 Pointcut 833.2.5 Pointcut表達式 833.2.6 聲明advice 853.2.7 案例:StaffUser日志管理 883.2.8 案例:StaffUser數據庫連接管理 893.3 基于XML的AOP配置 893.3.1 聲明Aspect 903.3.2 聲明Pointcut 903.3.3 聲明Advice 913.3.4 使用Advisor 923.3.5 案例:StaffUser日志管理 923.3.6 案例:StaffUser數據庫連接管理 943.4 動態代理機制 943.4.1 靜態代理 953.4.2 JDK動態代理 973.4.3 項目案例:自動管理數據庫連接 993.4.4 項目案例:員工系統的事務管理 1023.4.5 項目案例:員工系統事務AspectJ方案 107第4章 Spring整合JDBC 1114.1 事務分類 1114.2 Spring事務模型 1134.3 Spring事務抽象模型 1144.4 事務與資源管理 1164.5 Spring聲明性事務 1174.5.1 XML方式管理聲明性事務 1174.5.2 項目案例:StaffUser事務的XML方案 1184.5.3 JdbcDaoSupport 1214.5.4 注解管理聲明性事務 1224.5.5 項目案例:StaffUser事務注解方案 1234.6 Spring編程式事務 1244.6.1 編程式事務介紹 1244.6.2 案例:Spring編程式事務新增員工 1254.7 聲明性事務與編程式事務選擇 1264.8 Spring事務傳播 1264.8.1 Propagation.REQUIRED設置 1274.8.2 Propagation.REQUIRES_NEW設置 1314.8.3 Propagation.NESTED設置 132第5章 當當書城Spring整合JDBC 1335.1 當當書城基本功能 1335.1.1 項目開發環境 1335.1.2 表結構設計 1335.1.3 當當書城原型 1345.2 Spring整合JDBC實戰 1375.2.1 導包 1375.2.2 Spring配置文件 1385.2.3 封裝BaseDao 1395.2.4 封裝SpringFactory 1405.2.5 定義Spring Bean和依賴關系 1405.2.6 配置聲明性事務 1405.2.7 控制器調用Bean 1415.2.8 項目部署 141第6章 Spring Web MVC 1426.1 Spring Web MVC介紹 1426.1.1 視圖與控制層技術介紹 1426.1.2 Spring MVC概述 1426.1.3 Spring MVC特性支持 1436.2 案例:HelloMVC 1446.2.1 環境配置 1446.2.2 Model與控制器 1446.2.3 MVC架構 1456.3 案例:HelloSpringmvc入門示例 1466.3.1 導包 1466.3.2 配置前端控制器DispatcherServlet 1466.3.3 核心配置文件 1466.3.4 編寫HelloAction 1476.3.5 編寫視圖 1476.3.6 瀏覽器測試 1476.3.7 配置log4j 1476.4 前端控制器DispatcherServlet 1486.4.1 Spring MVC架構圖 1486.4.2 DispatcherServlet與IoC容器的關系 1496.4.3 DispatcherServlet核心功能 1506.5 DispatcherServlet的工作流程 1516.5.1 查看源代碼 1516.5.2 斷點觀察DispatcherServlet運行流程 1516.5.3 前端控制器的doDispatch方法 1536.5.4 創建IoC容器 1546.6 @Controller 1566.6.1 @Controller的作用域 1566.6.2 @RequestMapping 1576.6.3 控制器異步處理 1806.7 攔截器 1826.7.1 HandlerMapping 1826.7.2 案例:非工作時間拒絕服務 1836.7.3 攔截器運行流程分析 1846.8 視圖解析 1856.8.1 視圖解析的主要接口 1856.8.2 JSP視圖 1866.8.3 ViewResolver解析視圖 1876.8.4 視圖解析器鏈 1876.8.5 重定向到視圖 1886.9 使用Flash屬性 1916.10 使用Locale 1916.10.1 Locale解析器 1926.10.2 Locale攔截器 1936.10.3 案例:國際化應用 1936.11 主題Theme 1966.12 multipart文件上傳 1986.12.1 Spring multipart介紹 1996.12.2 案例:圖片上傳 1996.13 異常處理 2006.13.1 HandlerExceptionResolver 2006.13.2 SimpleMappingExceptionResolver 2006.13.3 @ExceptionHandler 2016.13.4 標準異常解析 2026.14 JSP & JSTL 2046.14.1 JSP與JSTL介紹 2046.14.2 Spring MVC基礎標簽 2046.14.3 form標簽庫 205第7章 當當書城Spring MVC實戰 2077.1 導包 2077.2 配置web.xml 2077.3 配置spring-mvc.xml 2087.4 用戶權限校驗 2097.5 書城主頁實現 2107.6 圖書詳情頁實現 2107.7 用戶管理 2117.7.1 用戶登錄 2117.7.2 用戶退出 2127.8 購物車實現 2127.8.1 購物車設計 2127.8.2 我的購物車 2127.8.3 加入購物車 2137.8.4 移出購物車 2137.9 用戶付款 2137.9.1 結算 2137.9.2 付款 2157.10 圖書上架 2157.11 系統異常設計 217第8章 MyBatis持久層框架 2198.1 案例:MyBatis快速入門 2198.1.1 導包 2198.1.2 創建SqlSessionFactory單例 2198.1.3 從SqlSessionFactory獲得SqlSession 2208.1.4 映射接口和映射文件 2218.1.5 配置映射指向 2218.1.6 Mapper調用 2218.1.7 代碼測試 2218.1.8 Log4j跟蹤MyBatis 2228.2 MyBatis原理分析 2228.2.1 SqlSession與Connection 2228.2.2 SqlSession的getMapper 2238.3 MyBatis配置 2258.3.1 properties屬性配置 2268.3.2 settings配置 2278.3.3 typeAliases配置 2298.3.4 typeHandlers 2308.3.5 objectFactory配置 2338.3.6 plugins攔截器 2358.3.7 環境配置 2368.3.8 databaseIdProvider 2418.3.9 Mappers配置 2428.4 Mapper映射XML文件 2438.4.1 mapper元素 2438.4.2 select元素 2448.4.3 insert、update和delete元素 2458.4.4 項目案例:新增員工 2478.4.5 項目案例:員工打卡 2508.4.6 參數處理 2538.4.7 ResultMap 2558.4.8 項目案例:員工打卡記錄查詢 2598.4.9 緩存 2628.5 動態SQL 2658.5.1 判斷:if 2658.5.2 分支:choose, when 2678.5.3 循環:foreach 268第9章 Spring整合MyBatis 2709.1 整合資料下載 2709.2 導包 2709.3 Spring配置文件 2719.4 配置Bean和依賴注入 2729.5 聲明性事務 2729.5.1 只讀事務 2739.5.2 寫操作事務管理 273第10章 當當書城SSM整合 27510.1 搭建SSM整合環境 27510.1.1 導包 27510.1.2 配置myBatis.xml 27510.1.3 配置beans.xml 27610.1.4 Mapper接口與映射文件 27610.1.5 持久層依賴注入Mapper 27710.2 MyBatis映射實現 27710.2.1 主頁推薦圖書 27710.2.2 圖書詳情 27810.2.3 用戶管理 27810.2.4 購物車 27810.2.5 用戶付款 27910.2.6 圖書上架 281IV
V