點關注,不迷路!如果本文對你有幫助的話不要忘記點贊支持哦!
一、Spring MVC概述
1.MVC:Model + View + Controller(資料模型 + 視圖 + 控制器)
2.三層架構:Presentation tier + Application tier + Data tier(展示層 + 應用層 + 資料訪問層)
3.MVC和三層架構的關系,MVC只存在三層架構的展示層,
M實際是資料模型,是包含資料的物件,在Spring MVC里,有一個專門的類叫Model,用來和V之間的資料互動、傳值,
V指的是視圖界面,包含JSP、freeMarker、Velocity、Thymeleaf、Tile等,
C就是控制器(Spring MVC的注解@Controller的類),
三層架構是整個應用的的架構,是由Spring框架負責管理的,一般專案結構中都由Service層、Dao層,這兩個反饋在應用層和資料訪問層,
二、Spring MVC專案快速搭建
三、Spring MVC的常用注解
1.@Controller
@Controller注解在類上,表明這個類是Spring MVC里的Controller,將其宣告為Spring的一個Bean,Dispatcher Servlet會自動掃描注解了此注解的類(原理類似AOP),并將Web請求映射到注解了@RequestMapping的方法上,
2.@RequestMapping
@RequestMapping注解是用來映射Web請求(訪問路徑和引數)、處理類和方法的,
@RequestMapping可以注解在類或方法上,注解在方法上的@RequestMapping路徑會繼承注解在類上的路徑,@RequestMapping支持Servlet的request和response作為引數,也支持對request和response的媒體型別進行配置,
3.@ResponseBody
@ResponseBody支持將回傳值放在response體內,而不是回傳一個頁面,此注解可放置在回傳值前或者方法上,
4.@RequestBody
@RequestBody允許request的引數在request體中,而不是在直接鏈接在地址后面,此注解放置在引數前,
5.@PathVariable
@PathVariable用來接收路徑引數,如/mfq/001,可接收001作為引數,此注解放置在引數前,
6.@RestController
@RestController是一個組合注解,組合了@Controller和ResponseBody,
四、Spring MVC基本配置
1.靜態資源映射、攔截器配置
2.@ControllerAdvice
通過@ControllerAdvice,可以將對于控制器的全域配置放置在同一個位置,注解了@Controller的類的方法可以使用@ExceptionHandler、@InitBinder、@ModelAttribute注解到方法上,對所有注解了@RequestMapping的控制器內的方法有效,
1)@ExceptionHandler:用于全域處理控制器里的例外,
2)@InitBinder:用來設定WebDataBinder,WebDataBinder用來自動系結前臺請求引數到Model中,
3)@ModelAttribute:本來的作用是系結鍵值對到Model里,此處是讓全域的@RequestMapping都能獲得在此處設定的鍵值對,
3.其它配置
1)快捷的ViewController
2)路徑匹配引數配置
3)更多配置
查看WebMvcConfigurerAdapter、WebMvcConfigurer類的API,
所使用的pom.xml
到此這篇關于文章就結束了!
點關注,不迷路!如果本文對你有幫助的話不要忘記點贊支持哦!

上述面試題答案都整理成檔案筆記, 也還整理了一些面試資料&最新2020收集的一些大廠的面試真題(都整理成檔案,小部分截圖),有需要的可以 點擊進入暗號:csdn ,
希望對大家有所幫助,有用的話點贊給我支持!

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/1383.html
標籤:其他
