一、SpringMVC和Spring的關係:前端
>軟件開發的三層架構: web層【表示層、表現層】---->Service層---->Dao[DataBase Access Object]---->數據庫!web
>SpringMVC其實是Spring的一個子模塊,咱們用SpringMVC來代替這個JavaWEB部分!spring
>MVC:也是一種設計模式:M:Model【模型】-->V[View]--->C[Controller]!數據庫
Model用來封裝數據的,express
View:用來顯示數據, Controller:用於接收前端頁面發送的請求,而後調用Service層處理,拿處處理結果,將該結果返回給前端頁面!
>SpringMVC:至關於MVC架構中的C以及V!設計模式
>JavaEE-->J2EE
二、SpringMVC有什麼優點?服務器
>Spring 爲展示層提供的基於 MVC 設計理念的優秀的Web 框架,是目前最主流的 MVC 框架之一。架構
>Spring3.0 後全面超越 Struts2,成爲最優秀的 MVC 框架。mvc
>Spring MVC 經過一套 MVC 註解,讓 POJO 成爲處理請求的控制器,而無須實現任何接口。app
>支持 REST 風格的 URL 請求。GET POST PUT DELTE
>採用了鬆散耦合可插拔組件結構,比其餘 MVC 框架更具擴展性和靈活性.
>目前主流的開發軟件,說白了,你們都在用!
三、SpingMVC是基於SpingMVC4.x
一、加入JAR包:
–commons-logging-1.1.3.jar
–spring-aop-4.0.0.RELEASE.jar
–spring-beans-4.0.0.RELEASE.jar
–spring-context-4.0.0.RELEASE.jar
–spring-core-4.0.0.RELEASE.jar
–spring-expression-4.0.0.RELEASE.jar
–spring-web-4.0.0.RELEASE.jar
–spring-webmvc-4.0.0.RELEASE.jar
二、配置前端控制器【DispatcherServlet】
1 <!-- The front controller of this Spring Web application, responsible for handling all application requests -->
2 <!--向服務器註冊前端控制器! -->
3 <servlet>
4 <servlet-name>springDispatcherServlet</servlet-name>
5 <!--DispatcherServlet指的是SpringMVC的前端控制器!,給服務器使用,建立servlet對象! -->
6 <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
7 <!-- 初始化參數contextConfigLocation用於指定SpringMVC配置文件的路徑以及名稱 -->
8 <init-param>
9 <param-name>contextConfigLocation</param-name>
10 <param-value>classpath:springmvc.xml</param-value>
11 </init-param>
12 <!-- 數字0或者大於0的數字表示的是:在服務器啓動的時候建立Servlet對象,而不是第一次訪問的時候建立 13 小於0的數字指的是:在第一次訪問的時候建立Servlet對象. 14 在數字大於O的狀況下,數字越小,優先級越高! 15 -->
16 <load-on-startup>1</load-on-startup>
17 </servlet>
18
19 <!-- Map all requests to the DispatcherServlet for handling -->
20 <!-- 用 servlet-mapping指定請求映射的路徑-->
21 <servlet-mapping>
22 <servlet-name>springDispatcherServlet</servlet-name>
23 <!-- 用url-pattern指定攔截 的請求路徑! -->
24 <url-pattern>/</url-pattern>
25 </servlet-mapping>
三、建立SpringMVC的配置文件並添加要掃描的包
注意:1.建立SpringMVC配置文件的名字要和上面在web.xml文件中指定的名字一致!
2.咱們建立SpringMVC配置文件的時候使用的是Spring Bean Configuration File建立的,不是XML!
1 <!-- 配置SpingMVC容器要掃描的包! -->
2 <context:component-scan base-package="com.neuedu.controller"></context:component-scan>
四、在springMVC掃描的包下建立控制器類[Controller/Handler],注意要加入@Controller註解
1 /** 2 * 咱們經過@RequestMapping作請求URL的映射! 3 * @return 4 */ 5 @RequestMapping("/sayHello") 6 public String sayHello(){ 7 return "/WEB-INF/views/success.jsp"; 8 }
注意:在類的方法上咱們使用的是@RequestMapping,而後在括號裏指定請求url的請求路徑!
五、建立頁面!
注意:1.當咱們不用init-param指定springMVC配置文件的路徑好位置的時候,SpringMVC默認會去/WEB-INF/<servlet-name>-servlet.xml
通常手動配置爲類路徑下(src路徑下):classpath:springmvc.xml,
1 <init-param>
2 <param-name>contextConfigLocation</param-name>
3 <param-value>classpath:springmvc.xml</param-value>
4 </init-param>
2.配置視圖解析器
1 <!--InternalResourceViewResolvers 是視圖解析器 ,它會將邏輯視圖轉換成實際的物理視圖,作一個轉發操做! 2 也就是說具體步驟:prefix + 方法的返回值 + suffix-->
3 <!-- /WEB-INF/views/success.jsp -->
4 <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
5 <property name="prefix" value="/WEB-INF/views/"></property>
6 <property name="suffix" value=".jsp"></property>
7 </bean>
3.請求一個SpringMVC的流程!