MVC的五大核心组件

DispatcherServlet       请求入口
HandlerMapping          请求的转发 让请求和控制器建立一一对应的关系
Controller              真正处理请求的组件
ModelAndView            封装数据信息和视图信息的对象
ViewResolver            视图处理器

Spring MVC编写步骤

  1. 建立项目 导入jar包(ico mvc) 斌拷贝配置文件到src下 在WEB-INF下建立一个jsp页面
  2. 在WEB-INF下 的web.xml中 配置DispatcherServlet 并使用初始化参数 关联Spring 的配置文件contextConfigLocation
  3. 在Spring配置文件中 配置HandlerMapping的实现类SimpleUrlHandlerMapping 并且配置请求和控制器的对应关系
  4. 编写一个控制器的实现类 实现Controller接口 在接口方法中 返回ModelAndView 同时在容器中创建控制器对象
  5. 在Spring 配置文件中 配置 ViewResolver 的实现类 InternalResourceViewResolver 需要配置前缀和后缀

使用Spring MVC 访问WEB-INF 下的jsp

基于标注的Spring MVC

  1. 建立一个项目 导入jar包 (ioc aop mvc) 拷贝配置文件到src下 并在WEB-INF下建立jsp文件
  2. 在web.xml中配置 DispatcherServlet 并通过初始化参数 contextConfigLocation 关联Spring 配置文件
  3. 开启组件扫描 和 标注形式的mvc
    <context:component-san base-package=”” />
    <mvc:annotation-driven />
    底层创建了一个 RequestMappingHandlerMapping 的组件
  4. 写一个java类 不用实现Controller接口
    @RequestMapping(“/请求路径”);
    控制器方法的返回值可以是 String 也可以是 ModelAndView 方法名随意 参数随意
    在类上加上对于的标注 @Controller 可以把普通类 变成Controller对象
  5. 配置视图处理器

applicationContext 配置如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<?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.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd">

<!-- 配置HandlerMapping的实现类-->
<bean id="handerMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<!-- 让请求和控制器建立一一对应关系 -->
<property name="mappings">
<props>
<prop key="toHello.do" >testController</prop>
</props>
</property>
</bean>

<!-- 开启组件扫描-->
<context:component-scan base-package="com.xdl"></context:component-scan>
<!-- 开启标注形式的mvc-->
<mvc:annotation-driven />

<!--配置视图处理器-->
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/"></property>
<property name="suffix" value=".jsp"></property>
</bean>
</beans>


11月      Java

本博客所有文章除特别声明外,均采用 CC BY-SA 3.0协议 。转载请注明出处!