當前位置:首頁 > IT技術 > 編程語言 > 正文

springMVC框架-認識springMVC《一》
2021-12-13 17:49:42


springMVC是什么

SpringMVC 是類似于 Struts2 的一個 MVC 框架,它是屬于Spring基本架構里面的一個組成部分,屬于SpringFrameWork的后續(xù)產(chǎn)品,已經(jīng)融合在Spring Web Flow里面,所以我們在后期和 Spring 進行整合的時候,幾乎不需要別的什么配置。

spring web MVC 等價于springMVC

springMVC框架-認識springMVC《一》_springMVC

spring源碼-包含springmvc

springMVC框架-認識springMVC《一》_mvc_02


springMVC有什么用

?1、清晰的角色劃分:控制器(controller)、驗證器(validator)、命令對象(command obect)、表單對象(form object)、模型對象(model object)、Servlet分發(fā)器(DispatcherServlet)、處理器映射(handler mapping)、試圖解析器(view resoler)等等。每一個角色都可以由一個專門的對象來實現(xiàn)。

2、強大而直接的配置方式:將框架類和應用程序類都能作為JavaBean配置,支持跨多個context的引用,例如,在web控制器中對業(yè)務對象和驗證器validator)的引用。

3、可適配、非侵入:可以根據(jù)不同的應用場景,選擇何事的控制器子類(simple型、command型、from型、wizard型、multi-action型或者自定義),而不是一個單一控制器(比如Action/ActionForm)繼承。

4、可重用的業(yè)務代碼:可以使用現(xiàn)有的業(yè)務對象作為命令或表單對象,而不需要去擴展某個特定框架的基類。

5、可定制的綁定(binding)和驗證(validation):比如將類型不匹配作為應用級的驗證錯誤,這可以保證錯誤的值。再比如本地化的日期和數(shù)字綁定等等。在其他某些框架中,你只能使用字符串表單對象,需要手動解析它并轉換到業(yè)務對象。

6、可定制的handler mapping和view resolution:Spring提供從最簡單的URL映射,到復雜的、專用的定制策略。與某些web MVC框架強制開發(fā)人員使用單一特定技術相比,Spring顯得更加靈活。

7、靈活的model轉換:在Springweb框架中,使用基于Map的鍵/值對來達到輕易的與各種視圖技術集成。

8、Spring Bean的生命周期可以被限制在當前的HTTp Request或者HTTp Session。準確的說,這并非Spring MVC框架本身特性,而應歸屬于Spring MVC使用的WebApplicationContext容器。

???

springMVC框架-認識springMVC《一》_spring_03


Controller-編碼過濾器

如果沒有設置編碼處理,那Controller獲取的中文入?yún)ⅲ蜁霈F(xiàn)亂碼!出現(xiàn)亂碼!出現(xiàn)亂碼!

springMVC框架-認識springMVC《一》_spring_04

解決方案:

第1步、在web.xml設置過濾編碼器。

springMVC框架-認識springMVC《一》_springMVC_05

<filter>
<filter-name>characterEncodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<!--強制覆蓋之前的編碼格式-->
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>characterEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

第2步:

用idea tomcat插件時:設置編碼

<uriEncoding>UTF-8</uriEncoding>

springMVC框架-認識springMVC《一》_表單_06

如果是tomcat 服務器,請到tomcat服務下 confserver.xml設置編碼

<Connector 
port="9002" protocol="org.apache.coyote.http11.Http11Protocol"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8"/>

設置后的效果:

springMVC框架-認識springMVC《一》_表單_07


?今天的springMVC就介紹到這里,再見。


本文摘自 :https://blog.51cto.com/u

開通會員,享受整站包年服務立即開通 >