Spring-Springmvc-Mybatis整合
- 概念
- SSM框架集由Spring、SpringMVC、MyBatis三個開源框架整合而成,常作爲數據源較簡單的web項目的框架。
- Spring
- Spring是一個開源框架,Spring是於2003 年興起的一個輕量級的Java 開發框架,由Rod Johnson 在其著作Expert One-On-One J2EE Development and Design中闡述的部分理念和原型衍生而來。它是爲了解決企業應用開發的複雜性而創建的。Spring使用基本的JavaBean來完成以前只可能由EJB完成的事情。然而,Spring的用途不僅限於服務器端的開發。從簡單性、可測試性和鬆耦合的角度而言,任何Java應用都可以從Spring中受益。 簡單來說,Spring是一個輕量級的控制反轉(IoC)和麪向切面(AOP)的容器框架。
- SpringMVC
- Spring MVC屬於SpringFrameWork的後續產品,已經融合在Spring Web Flow裏面。Spring MVC 分離了控制器、模型對象、分派器以及處理程序對象的角色,這種分離讓它們更容易進行定製。
- MyBatis
- MyBatis 本是apache的一個開源項目iBatis, 2010年這個項目由apache software foundation 遷移到了google code,並且改名爲MyBatis 。MyBatis是一個基於Java的持久層框架。iBATIS提供的持久層框架包括SQL Maps和Data Access Objects(DAO)MyBatis 消除了幾乎所有的JDBC代碼和參數的手工設置以及結果集的檢索。MyBatis 使用簡單的 XML或註解用於配置和原始映射,將接口和 Java 的POJOs(Plain Old Java Objects,普通的 Java對象)映射成數據庫中的記錄。
- 框架的結構
- 系統架構
- ORM:MyBatis框架
- Spring Core:基於IOC和AOP的處理方式
- 統一管理所有的JavaBean
- Web框架:Spring MVC
- 數據存儲:MySQL
- 前端框架:
- JSP
- VUE、AngularJS
- Jquery
- HTML
- CSS
- 系統架構
- Java的目錄結構
- 數據對象模型(com.company.pojo)
- DAO數據訪問接口(com.company.dao)
- 系統服務接口(com.company.service)
- 前端控制層Controller(com.company.controller)
- 系統工具類(com.company.tools)
- 前端頁面(/WEB-INF/jsp)
- 靜態資源文件(/WebContent/statics)
- 項目流程創建:
- 創建項目
- 添加jar包
- 創建包,分層,創建配置文件夾
- 添加jar包
- 創建實體類
- 創建數據訪問接口
- 創建業務邏輯接口
- 創建Dao的實現:Mapper.xml
- 創建業務邏輯實現方法
- 設置數據源,連接池
- 配置MyBatis的XML
-
- 配置Springmvc的xml
- 配置Springmvc的xml
-
配置Spring整合XML
-
-
- 讀取數據庫配置文件
- 包的掃描
- JNDI獲取數據源(使用dbcp連接池)
- 配置myBatis SqlSessionFactoryBean
- 自動掃描指定包下面的Mapper接口
- 定義事務管理,指定數據源
- 配置通知,加載事務管理器
- 配置AOP切面,指定事務通知
-
-
- 配置web.xml
- 完成Mapper.xml中的具體實現
- 單元測試每一個萬方法的實現
- 創建控制器
- 創建對應的頁面
- 列表頁面
- 添加頁面
- 更新頁面
- 列表頁面
- 增加Spring過濾器配置,支持中文
- 創建項目
-
優化頁面設置
- 項目中裝載BootStrap相關配置
- bootstrarp.css,Jquery,bootstarp.js
- 首頁中增加輪播圖,使用BootStrap實現
- 創建一個公共的頁面,用於提供bootstrap的相關支持
- 創建一各導航的頭部
- 優化列表頁面
- 優化添加頁面
- 優化修改頁面
- 新增詳情頁面
- 增加詳情控制器
- 項目中裝載BootStrap相關配置
- 優化配置文件信息
- 將Spring配置文件信息分層
- 目錄結構:
- spring-dao.xml
- spring-service.xml
-
spring-web.xml
- 目錄結構:
-
單元測試:
- 將Spring配置文件信息分層
- 配置web.xml
- 配置了以上內容,去掉了監聽器。
- 整合完成。