Model-View-Control,MVC是一種架構模式,用於將數據-視圖-邏輯分離html
DispatcherServlet 就是一種特殊的Servlet,servlet實際上就是用來處理網站資源與請求的.使用HandlerAdapter調用controllerweb
HandlerAdapter 掌握controller的關係,實際上調用controller
HandlerMapping url和controller之間的對應關係spring
Controller 實際業務類,關心邏輯實現架構
HandlerInterceptor 攔截器,能夠在controller運行以前攔截參數,進行相關的操做mvc
ModelAndView Model具體表現
ViewResolver 資源與視圖的對應關係app
HandlerExecutionChain 調用過程
一次SpringMVC訪問過程
request --> Dispatcher... --> HandlerMapping --> Controller -->Handler -->ModelAndView --> ViewResolver -- >View -->response框架
配置Meaven環境,略過不說Hpost
1:配置DispatcherServlet網站
<servlet> <servlet-name>mvc-dispatcher</servlet-name> <!-- springmvc要用到的dispatcherservlet的配置--> <servlet-class> org.springframework.web.servlet.DispatcherServlet</servlet-class> <!-- DispatcherServlet對應的上下文配置, 默認爲/WEB-INF/$servlet-name$-servlet.xml --> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath*:mvc-dispatcher-servlet.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet>
2:配置servlet-mapping,肯定哪些連接將被該servlet處理ui
<servlet-mapping> <servlet-name>mvc-dispatcher</servlet-name> <!-- mvc-dispatcher攔截全部的請求--> <url-pattern>/</url-pattern> </servlet-mapping>
3:配置dispatcherservlet須要的配置(在上面contextConfigLocation中配置的文件)
<context:annotation-config/>
用來支持註解bean管理,好比@Required,@Autowired<context:component-scan base-package>
<mvc:annotion-driven>
支持MVC相關注解解析,例如@RequetMapping,@Controller等4:建立相應的Controller,在controler的類上加上@Controlloer註解和RequestMapping,在相應的方法上加上requestMapping指定對應的htmlurl映射,能夠對路徑參數用@PathVariable註解綁定參數.
5:建立view,並使controller的返回結果可以經過viewResolver訪問到對應的view.
以上是關於一個Spring MVC的基本框架
1:數據綁定.
經過post方式,在requestmapping中,指定method爲post
直接指定方法的參數,SpringMVC會建立對象經過參數傳進來.
2:SpringMVC的文件上傳:Spring提供了方便的文件上傳的組件.
3:使用JSON