SpringMVC基礎入門教程+整合SSM,小白必備!!idea+maven測試

我自己是一名從事了多年開發的JAVA老程序員,今年年初我花了一個月整理了一份最適合2019年學習的java學習乾貨,可以送給每一位喜歡java的小夥伴,想要獲取的可以關注我的頭條號並在後臺私信我:【交流】,即可免費獲取。

Spring MVC介紹

Spring MVC 是Spring框架中用於Web應用開發得一個模塊,是Spring提供得一個基於MVC設計模式得優秀得Web開發框架,本質上相當於servlet。在MVC設計模式中,SpringMVC作為控制器(Controller)來建立模型與視圖得數據交互,是結構最清晰得MVC Model2實現,可稱為一個典型得MVC框架。Spring MVC得結構比較複雜,下面我們通過搭建MVC得環境,並實現簡單例子來了解Spring mvc。

SpringMVC基礎入門教程+整合SSM,小白必備!!idea+maven測試

1.Spring MVC搭建環境

1.1Spring MVC搭建環境流程

SpringMVC基礎入門教程+整合SSM,小白必備!!idea+maven測試

以上為我maven pom配置文件導入的架包,記得版本一定要對應,否則容易引發未知錯誤。

Spring MVC配置:

2.1在web.xml中配置Servlet,定義DispatcherServlet:

Spring MVC是基於Servlet得,那DispatcherServlet是整個Sping mvc框架得核心,它負責截獲請求並將其分派給相應得處理器處理。首先就得進行DispatcherServlet配置,我們在web.xml中進行操作:

<web-app>

SpringMVC基礎入門教程+整合SSM,小白必備!!idea+maven測試

在配置得時候,我們通過contextConfigLocation參數來指定Spring MVC配置文件得位置,此處使用Spring資源路徑得方式進行指定(classpath:springmvc-servlet.xml)

2.2創建Spring MVC得配置文件–視圖解析器

在resources目錄下面新建名叫springmvc-servlet.xml得配置文件

SpringMVC基礎入門教程+整合SSM,小白必備!!idea+maven測試

3.創建Controller(處理請求得控制器,等於servlet)

在同級目錄下創建controller包,創建一個名叫IndexController的層

SpringMVC基礎入門教程+整合SSM,小白必備!!idea+maven測試

4.創建view層(我們用JSP作為視圖進行測試)

在第二步我們配置了視圖解析器,根據定義的prefix(前綴)–WEB-INF/jsp/和suffix(後綴).jsp,我們在WEB-INF下創建jsp包,定義index.jsp

SpringMVC基礎入門教程+整合SSM,小白必備!!idea+maven測試

SpringMVC基礎入門教程+整合SSM,小白必備!!idea+maven測試

控制器IndexController返回的邏輯視圖名稱為index,通過視圖解析器,會將視圖邏輯名解析為/WEB-INF/jsp/index.jsp,得到真正的視圖名。

5.部署運行(Tomcat)

前面所有工作完成後,在idea中部署tomcat

SpringMVC基礎入門教程+整合SSM,小白必備!!idea+maven測試

最後進行測試,在控制檯輸入http://localhost:8080/ch09spingmvcshili_war/index1

SpringMVC基礎入門教程+整合SSM,小白必備!!idea+maven測試

2.Spring MVC框架的請求處理流程

下面我們通過一張圖來了解下Springmvc的請求流程

SpringMVC基礎入門教程+整合SSM,小白必備!!idea+maven測試

首先用戶發送到請求到前端控制器(DispatcherServlet),前端控制處理器根據請求信息(URL)來選擇哪個控制器(Controller)來進行處理,並把請求委託給它

頁面控制器接收到請求後,進行業務處理,處理完畢後返回一個ModelAndView

前端控制器收回控制權,然後根據返回的邏輯視圖名,選擇相應的真正視圖,並把模型數據傳入以便將視圖進行渲染。

2.1Spring MVC框架的特點

  1. 清晰的角色劃分。Spring MVC在model,view,controller方面提供了一個非常清晰的角色劃分
  2. 靈活的配置功能。因為Spring的核心時IoC,同樣在實現MVC上,也可以把各種類當作Bean來通過XML進行配置。
  3. 提供了大量的控制器接口和實現類。開發者可以使用Spring提供的控制器實現類,也可以自己實現控制器接口。
  4. 真正做到與view層的實現無關,使用更加靈活
  5. 國際化支持
  6. 面向接口編程
  7. Spring提供了Web應用開發的一整套流程。

2.2MVC的參數傳遞

前面我們搭建了MVC的環境以及實現了controller和view的映射,簡單的實現了頁面導航,下面我們來實現把view層的數據傳遞以及controller把值傳給前臺

SpringMVC基礎入門教程+整合SSM,小白必備!!idea+maven測試

SpringMVC基礎入門教程+整合SSM,小白必備!!idea+maven測試

需要注意的是?後面的username必須對應方法名字,才能獲取到,這裡我們只是測試拼接,運行正確會在頁面上顯示,admin!!

2.2.1view層傳輸數據到controller

使用一個form表單做示範,例如我現在要把form表單上text得值在後臺進行處理,並且把你輸入得值打印到另外一個頁面上進行顯示:

index.jsp:

SpringMVC基礎入門教程+整合SSM,小白必備!!idea+maven測試

SpringMVC基礎入門教程+整合SSM,小白必備!!idea+maven測試

indexs.jsp:

SpringMVC基礎入門教程+整合SSM,小白必備!!idea+maven測試

我們把需要得頁面和後臺準備好之後開始測試,啟動tomcat:

SpringMVC基礎入門教程+整合SSM,小白必備!!idea+maven測試

SpringMVC基礎入門教程+整合SSM,小白必備!!idea+maven測試

SpringMVC基礎入門教程+整合SSM,小白必備!!idea+maven測試

從這裡可以看到,我們測試成功了。

3.整合SSM項目

  1. 導入jar包
SpringMVC基礎入門教程+整合SSM,小白必備!!idea+maven測試

上面為我整個項目得所有架包,文件上傳得架包可以不加!!主要添加得還是spring得核心架包。

2.編寫配置文件

前面我們已經會編寫Springmvc得配置文件了,現在我們只需要配置Spring和mybatis得配置文件了,下面直接貼代碼

mybatis-config.xml:

SpringMVC基礎入門教程+整合SSM,小白必備!!idea+maven測試

和log4j.properties:

SpringMVC基礎入門教程+整合SSM,小白必備!!idea+maven測試

applicationContext.xml:

SpringMVC基礎入門教程+整合SSM,小白必備!!idea+maven測試

編寫完得項目結構如圖:

SpringMVC基礎入門教程+整合SSM,小白必備!!idea+maven測試

最後我們只要有在springmvc-servlet.xml中把spring導入進去

springmvc-servlet.xml:

SpringMVC基礎入門教程+整合SSM,小白必備!!idea+maven測試

這樣我們得配置文件就編寫成功了。

4. 運行測試

我們使用一個簡單得登陸來測試ssm部署是否成功,首先編寫登陸需要得mapper層和biz層,這裡不做示範,下面貼上controller層得代碼:

SpringMVC基礎入門教程+整合SSM,小白必備!!idea+maven測試

login.jsp:

SpringMVC基礎入門教程+整合SSM,小白必備!!idea+maven測試

最後我們進行測試

SpringMVC基礎入門教程+整合SSM,小白必備!!idea+maven測試

這樣我們得smm項目部署成功,如果有什麼疑問,可以私聊把項目發你!!

3.1靜態資源文件得引用

我們會發現如果要引入jss文件或者css,會發現它們無法起效得,因為web.xml中得DispatcherServlet請求映射會攔截所有web容器得請求,現在我們在mvc得配置文件中進行映射:

首先在webapp下面創建靜態資源包

SpringMVC基礎入門教程+整合SSM,小白必備!!idea+maven測試

再springmvc-servlet.xml中添加:

SpringMVC基礎入門教程+整合SSM,小白必備!!idea+maven測試

實際引用:

這裡也必須要加項目得絕對路徑!!這樣就配置成功了


SpringMVC基礎入門教程+整合SSM,小白必備!!idea+maven測試

"


分享到:


相關文章: