-
什么是springMVC?
springmvc是spring框架的一个模块,springmvc和spring无需通过中间整合层进行整合。(struts2与Spring整合的时候需要借助单独的jar包)
springmvc是一个基于mvc的web框架
-
MVC在b/s系统 下的应用
mvc是一个设计模式,mvc在b/s系统下的应用:
-
SpringMVC框架原理
-
springMVC入门程序
- 环境搭建
new => project => maven 选择maven-archetype-webapp并 勾中create from archtype
如果不勾上,则需要手动建webapp的目录,在src/main下新建文件夹webapp
-
配置文件
pom.xml文件:
1 //添加依赖 2 <dependency> 3 <groupId>org.springframework</groupId> 4 <artifactId>spring-webmvc</artifactId> 5 <version>5.1.0.RELEASE</version> 6 </dependency>
- 配置前端控制器
在web.xml配置前端控制器,让Spring MVC拦截并处理所有的请求。DispatcherServlet是前端控制器,所有来自客户端的请求,都会交由它去处理。
web.xml文件:
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0"> <servlet> <!--名称 --> <servlet-name>springmvc</servlet-name> <!-- Servlet类 --> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <load-on-startup>1</load-on-startup> <init-param> <!--SpringMVC配置参数文件的位置 --> <param-name>contextConfigLocation</param-name> <!--默认名称为ServletName-servlet.xml --> <param-value>classpath*:spring/spring-mvc.xml</param-value> </init-param> </servlet> <!--所有请求都会被springmvc拦截 --> <servlet-mapping> <servlet-name>springmvc</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> </web-app>
- Spring MVC 在启动的时候会初始化容器,所以需要通过 xml 配置其容器的初始化。
配置Handler 将编写Handler在spring容器加载
Spring-Mvc.xml:
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xmlns:mvc="http://www.springframework.org/schema/mvc" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.3.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.3.xsd"> <!-- 自动扫描包,实现支持注解的IOC --> <context:component-scan base-package="com.lhy.flower" /> <!-- Spring MVC不处理静态资源 --> <mvc:default-servlet-handler /> <!-- 支持mvc注解驱动 --> <mvc:annotation-driven /> <!-- 视图解析器 -->
<!--启用注解扫描-->
<context:component-scan base-package="com.nf147.post.controller" />
<!--启用 mvc 的常用注解-->
<mvc:annotation-driven enable-matrix-variables="true" />
<!--将所有的静态资源交还 Servlet 处理-->
<mvc:default-servlet-handler />
<!--配置返回页面-->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass" value="org.springframework.web.servlet.view.JstlView" />
<property name="prefix" value="/WEB-INF/jsp/" /><!-- 前缀 -->
<property name="suffix" value=".jsp" /><!-- 后缀 -->
</bean>
</beans>