springMVC(1)入門案例與參數(shù)綁定類型轉(zhuǎn)換

1. 簡(jiǎn)介
? ? 1.1 springMVC 是什么?
? ??1.2?SpringMVC 和 Struts2 的優(yōu)略分析
2. 入門案例
3 參數(shù)綁定與自定義類型轉(zhuǎn)換
????3.1 工作原理
????3.2 參數(shù)綁定??
????3.3 解決中文亂碼過(guò)濾器
? ? 3.4 自定義類型轉(zhuǎn)換器
? ? 3.5 獲取servlet原生api

1. 簡(jiǎn)介

????1.1 springMVC 是什么?

? ? ? ? 基于java的實(shí)現(xiàn)mvc設(shè)計(jì)模型的請(qǐng)求驅(qū)動(dòng)類型的輕量級(jí)web框架。
? ? ? ? springMVC是圍繞著DispatcherServlet來(lái)設(shè)計(jì)的。這個(gè)Servlet會(huì)把請(qǐng)求分發(fā)給各個(gè)處理器,并支持可配置的處理器映射,視圖渲染,本地化,主題渲染,文件上傳等。

? ? 1.2?SpringMVC 和 Struts2 的優(yōu)略分析

????????共同點(diǎn):
????????????它們都是表現(xiàn)層框架,都是基于 MVC 模型編寫的。
????????????它們的底層都離不開原始 ServletAPI。
????????????它們處理請(qǐng)求的機(jī)制都是一個(gè)核心控制器。
????????區(qū)別:
????????????Spring MVC 的入口是 Servlet, 而 Struts2 是 Filter
????????????Spring MVC 是基于方法設(shè)計(jì)的,而 Struts2 是基于類,Struts2 每次執(zhí)行都會(huì)創(chuàng)建一個(gè)動(dòng)作類。所以 Spring MVC 會(huì)稍微比 Struts2 快些。
????????????Spring MVC 使用更加簡(jiǎn)潔,同時(shí)還支持 JSR303, 處理 ajax 的請(qǐng)求更方便(JSR303 是一套 JavaBean 參數(shù)校驗(yàn)的標(biāo)準(zhǔn),它定義了很多常用的校驗(yàn)注解,我們可以直接將這些注解加在我們 JavaBean 的屬性上面,就可以在需要校驗(yàn)的時(shí)候進(jìn)行校驗(yàn)了。)
????????Struts2 的 OGNL 表達(dá)式使頁(yè)面的開發(fā)效率相比 Spring MVC 更高些,但執(zhí)行效率并沒(méi)有比 JSTL 提升,尤其是 struts2 的表單標(biāo)簽,遠(yuǎn)沒(méi)有 html 執(zhí)行效率高

2. 入門案例

? ? ? ? 新建項(xiàng)目,選擇webapp

? ??????archetypeCatalog = internal (使用本地項(xiàng)目,提速)

? ? ? ? 安裝依賴:spring-context,spring-web,spring-webmvc,servlet-api,jsp-api

web.xml

????????<mvc:annotation-driven /> 主要就是為了Spring MVC來(lái)用的,提供Controller請(qǐng)求轉(zhuǎn)發(fā),json自動(dòng)轉(zhuǎn)換等功能。

springmvc.xml

? ? ? ? src/main下新建 java 與 resources文件夾,并右鍵Mark directory as? test sources boot 和?Resources?boot。

? ? ? ? com.liuming.controller.HelloController代碼如下所示
????????@RequestMapping?映射請(qǐng)求

?index.jsp

? ? ? ? idea配置tomcat服務(wù)器

? ? ? ? run springmvc 自動(dòng)打開瀏覽器,成功啟動(dòng)。

3 參數(shù)綁定與自定義類型轉(zhuǎn)換

????3.1 工作原理

????3.2 參數(shù)綁定

????3.3 解決中文亂碼過(guò)濾器

? ? 3.4?自定義類型轉(zhuǎn)換器代碼

? ? 3.5 獲取servlet原生api編寫


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容