`
个人专属
  • 浏览: 66381 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

springMVC配置【转】

阅读更多

转帖原址:http://sifutian.iteye.com/blog/389216
一,配置分发器
DispatcherServlet 是Spring MVC 的入口
所有进入Spring Web 的 Request 都经过 DispatcherServlet
需要在 web.xml 中注册 DispatcherServlet
<servlet>
<servlet-name>dispatherContext</servlet-name>
<servlet-class>
  org.springframework.web.servlet.DispatcherServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>

加载 DispatcherServlet 时 Spring 会尝试读取配置文件
默认的配置文件位于 web.xml 相同的路径下 文件名与注册的 Servlet
名有关 Servlet注册名跟上 -servlet.xml
例如:上面的 Servlet 注册名为 dispatcherContext 那么 默认的
配置文件名位:dispatcherContext-servlet.xml

当然 也可以明确配置文件 需要在注册 servlet 时 设定初始化参数
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>
  <!-- 配置文件名 -->
</param-value>
</init-param>

注册 DispatcherServlet 后 还应指定有 Spring 处理的 url 模板
<servlet-mapping>
<servlet-name>dispatherContextServlet</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>

这样 请求 .do 的处理 就全部交由 Spring 处理了

当程序越来越大 配置文件中的 <bean> 越来越多 而且变得关系错综复杂
难于维护 此时应该考虑 将配置文件拆分成多个
为了让 Spring 能够读到这些配置文件 并察觉到他们的变化
需要注册配置文件读取器
对于 Servlet 2.3 以上标准 且 web 容器支持监听器
可以 在 web.xml 中注册监听
<listener>
<listener-class>
  org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>

对于 Servlet 2.3 以下版本 由于不支持监听器 所以需要注册 Servlet
<servlet>
<servlet-name>contextLoader</servlet-name>
<servlet-class>
  org.springframework.web.context.ContextLoaderServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>

配置文件读取器 注册成功后 需要设定配置文件列表
设置全局参数 contextConfigLocation 
置为 配置文件列表 以逗号分隔 注意路径
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
  /WEB-INF/dispatcherContext-servlet.xml,
  <!-- classpath*: 指定编译后的class目录 在ide中 与src根目录相同 -->
  classpath*:hibernateContext.xml
</param-value>
</context-param>

二,配置映射响应器(HandlerMapping)
当 DispatcherServlet 接到请求后 会向 HandlerMapping 询问
请求所对应的控制器
BeanNameUrlHandlerMapping Spring 默认的映射响应器 根据 <bean> 的 name 属性查找控制器处理请求
<bean id="urlMapping"
class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping" />

SimpleUrlHandlerMapping Spring 中最常用的映射响应器 通过对其 mappings 进行设置 从而获得更为灵活的
控制器查找机制
<bean id="urlMapping"
class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
  <props>
   <prop key="/<!-- url 模板 -->.do"><!-- 控制器 <bean> 的 id --></prop>
  </props>
</property>
</bean>

CommonsPathMapHandlerMapping 应用了 jdk1.5 后的新特性 通过 Controller 中的注释 进行映射
在类的主是中加入 @@org.springframework.web.servlet.handler.commonsattributes.PathMap("/path.do")
<bean id="urlMapping"
class="org.springframework.web.servlet.handler.metadata.CommonsPathMapHandlerMapping" />

三,配置控制器(Controller)
当 DispatcherServlet 接到请求后 通过 HandlerMapping 询问请求所对应的处理控制器后
在 dispatcherContext-servlet.xml 中 查找相对应得 <bean> 处理请求

当选用了 BeanNameUrlHandlerMapping 映射响应器时 各个处理控制器应保证 <bean> 的 name
属性即为请求的 url 模板 例如:
<bean name="/home.do" class="<!-- 包名 -->.HomeController" />

当选用了 SimpleUrlHandlerMapping 映射响应器时 各个处理控制器应保证 <bean> 的 id
属性与 SimpleUrlHandlerMapping 中的 mappings 对应 例如:
<bean id="homeAction" class="<!-- 包名 -->.HomeController" />

<bean id="urlMapping"
class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
  <props>
   <prop key="/hello.do">homeAction</prop>
  </props>
</property>
</bean>

当选用了 CommonsPathMapHandlerMapping 映射响应器时
/**
* @@org.springframework.web.servlet.handler.
     commonsattributes.PathMap("/hello.do")
*/
public class HelloController
    extends AbstractCommandController {
...
}


四,配置试图解析器(ViewResolver)
<bean id="viewResolver" 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>
分享到:
评论

相关推荐

    springMVC配置好的环境

    在“springMVC配置好的环境”中,我们通常包括了运行 Spring MVC 应用所需的所有组件和设置,这些组件可能包括但不限于: 1. **Spring Framework**:Spring 是整个应用的基础,它提供了依赖注入(DI)、面向切面...

    2019-SpringMVC配置

    这是SpringMVC的2019配置,最近需要做一个项目配置的原始环境,可以运行,简单配置的修改,大家应该自己能懂,里面需要的jar包,都存在了,写了一个简单的首页,调用bootstrap,jquery风格,需要的同学,自己下载吧。

    SpringMVC基于代码的配置方式(零配置,无web.xml)

    传统的SpringMVC配置往往依赖于XML文件,如web.xml和spring-servlet.xml等,但随着Spring框架的发展,出现了基于代码的配置方式,实现了零XML配置,提高了开发效率。本文将详细介绍如何在不使用web.xml的情况下,...

    SpringMVC配置多数据源实战

    在SpringMVC框架中配置多数据源是一项常见的需求,尤其在大型企业级应用中,由于业务的复杂性,往往需要连接不同的数据库以满足不同模块的需求。以下将详细讲解如何实现这一功能。 首先,理解数据源(DataSource)...

    SpringMVC-配置文档

    SpringMVC-配置文档以及其中的说明。 包含使用注解、扫描带注解的包 、使用注解方式配置springMVC的映射器和适配器

    SpringMVC中后台转换json格式

    要启用SpringMVC对JSON的支持,我们需要在Spring的配置文件中添加以下配置: ```xml &lt;!-- 添加Jackson的HttpMessageConverter --&gt; ``` 这将注册一个`MappingJackson2HttpMessageConverter`,它会处理...

    SpringMVC所有jar包和配置文件

    SpringMVC所有jar包和配置文件可以快速配置springmvc项目

    SpringMVC配置

    在本文中,我们将深入探讨SpringMVC的配置过程,以及它如何帮助我们构建高效、模块化的Web应用。 首先,让我们了解SpringMVC的基本架构。SpringMVC的核心组件包括DispatcherServlet、Controller、Model、View和...

    SpringMVC配置拦截器实现登录控制的方法

    2. 配置拦截器:在SpringMVC配置文件中需要声明拦截器。使用标签来定义一个或多个拦截器。可以使用标签来指定拦截器,并通过来指定拦截器适用的URL模式。 3. Cookie与Session:在Web开发中,Cookie常用于在用户的...

    SpringMVC纯注解配置

    "SpringMVC纯注解配置"是SpringMVC框架的一种高级用法,旨在减少XML配置文件的使用,提高开发效率和代码可读性。在这个主题中,我们将深入探讨如何利用注解实现SpringMVC的配置以及jQuery如何处理后台返回的JSON对象...

    SpringMVC一些配置文件的demo

    在"SpringMVC一些配置文件的demo"中,我们可以深入理解SpringMVC的核心配置和工作流程。 1. **核心配置文件**:SpringMVC的配置通常在`dispatcher-servlet.xml`中进行,这是SpringMVC的前端控制器DispatcherServlet...

    spring + springmvc + mybatis 整合 及 mybatis-pagehelper分页

    2. **配置SpringMVC**:接着,配置SpringMVC的`web.xml`,设置DispatcherServlet,以及相关的拦截器和视图解析器。还需要在SpringMVC的配置文件(如`spring-mvc.xml`)中配置处理器映射器和适配器。 3. **配置...

    简单明了的SpringMVC配置教程

    本教程将详细介绍如何进行简单明了的SpringMVC配置。 一、环境准备 首先,确保你的开发环境中已经安装了Java Development Kit (JDK) 和Apache Maven,因为SpringMVC项目通常基于Maven构建。同时,你需要一个集成...

    SpringMVC +Mybatis 多个数据源配置 DEMO + maven

    本DEMO演示了如何在SpringMVC和Mybatis框架中配置多个数据源,并结合Maven进行项目管理,提供了一个实际操作的参考。 首先,我们需要了解SpringMVC和Mybatis的基础。SpringMVC是Spring框架的一部分,主要用于处理...

    SpringMVC 配置 最简单的MAVEN hello world

    3. **创建SpringMVC配置文件**:在`WEB-INF`目录下创建`spring-mvc-config.xml`,配置视图解析器、Controller扫描等。例如: ```xml xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context=...

    springmvc基本配置及定时任务配置修改

    3. **创建配置文件**:通常,我们会创建一个 `DispatcherServlet-servlet.xml` 配置文件,其中定义了视图解析器、模型-视图对、控制器 beans 等。 4. **定义 Controller**:使用 `@Controller` 注解标记 Java 类作为...

    SpringMVC4零配置

    **SpringMVC4零配置详解** SpringMVC作为Spring框架的一部分,是用于构建Web应用程序的控制器层。在SpringMVC4版本中,引入了“零配置”概念,旨在简化开发流程,提高开发效率。本文将深入探讨SpringMVC4的零配置...

    springMVC 多视图配置(Jsp Freemarket Json)实例

    在这个"springMVC 多视图配置(Jsp Freemarket Json)实例"中,我们将探讨如何在 SpringMVC 中设置多种视图解析器来支持 Jsp、FreeMarker 和 Json 格式的响应。 **1. 视图解析器 (View Resolver)** 在 SpringMVC ...

    SpringMVC配置.docx

    **SpringMVC 知识点详解** ...通过以上步骤,你已经成功配置了一个基本的 SpringMVC 应用。当然,SpringMVC 提供了许多高级特性,如拦截器、AOP、数据绑定、表单验证等,可以根据需求进行更复杂的配置和定制。

Global site tag (gtag.js) - Google Analytics