首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

SpringMVC配置文件

SpringMVC配置文件

Web.xml

核心拦截器以及配置文件的路径

加载spring容器

编码过滤器

url-pattern配置讲解

在 servlet 和 filter 中我们都需要配置 url-pattern,但这个配置的解析规则有哪几种我们接下来就详细的说一下。

1、精确匹配:如 /xxx.html 就只会匹配 xxx.html。

2、路径匹配:如 /xxx/ 会匹配以 xxx 为前缀的 url。

3、后缀匹配:如 .html 会匹配所有以 html 为后缀的 url。

但是对于 url-pattern 的匹配来说可能会存在冲突的情况,这种情况下就需要排个优先级了,以上三者的优先级为 精确匹配 > 路径匹配 > 后缀匹配 。

Spring-MVC.xml

MVC的注解驱动

Bean模式

标签模式

视图解析器

最简单的配置

原理解析:

概述

装配:无论请求处理方法的返回值类型是String、View或ModelMap,SpringMVC均会将其装配为ModelAndView对象,其包含逻辑视图的名称和模型对象信息。

解析:SpringMVC借助视图解析器(ViewResolver)获取最终的物理制图对象,其可以是JSP页面、Excel或JFreeChart等各种表现形式的视图。

视图

其中,常用的视图实现类主要有:

视图解析器

视图解析器的主要作用是将逻辑视图解析为具体的物理视图对象,可以在Spring WEB上下文中配置一种或多种解析策略,并指定其先后顺序;所有的视图解析器都必须实现ViewResolver接口。

其中,常用的视图解析器实现类主要有:

说明:每个视图解析器均实现了Ordered接口,可通过其order属性指定解析器的优先顺序,order越小优先级越高;SpringMVC会按视图解析器的顺序对逻辑视图进行解析,直到解析成功并返回视图对象,否则将抛出ServletException异常。

InternalResourceViewResolver

JSP是最常见的视图技术,可以使用InternalResourceViewResolver作为视图解析器,SpringMVC会将逻辑视图解析为InternalResourceView对象。

JstlView

若在WEB-INF/lib目录下添加jstl.jar,则SpringMVC会自动将视图由InternalResourceView转为JstlView。其中,使用JSTL的fmt标签则需要在SpringMVC的配置文件中配置国际化资源文件:

mvc_view-controller标签

若希望直接响应通过SpringMVC渲染的页面,而不经过目标方法,可以在Spring的Bean配置文件中使用mvc_view-controller标签来实现。

自定义视图

第一步:创建自定义视图类,继承于View,并将其配置到IoC容器中;

第二步:在SpringMVC的配置文件中,配置BeanNameViewResolver视图解析器,并配置其优先级;

第三步:在处理器中编写目标方法,其返回值对应自定义类的BeanName;

第四步:在index.jsp页面正常使用,即请求springmvc/testView即可。 \

Excel视图

希望使用Excel展示数据列表,仅需要扩展SpringMVC提供的AbstractExcelView或AbstractJExcelView,实现其buildExcelDocument()方法,并在方法中使用模型数据对象构建Excel 文档即可。其中,AbstractExcelView是基于POI API的,而AbstractJExcelView是基于JExcel API的。   视图对象需要配置为IOC 容器中Bean,即需要使用BeanNameViewResolver作为视图解析器。若希望在浏览器中直接下载Excel文档,则可以设置其响应头Content-Disposition的值为attachment;filename=xxx.xls。

重定向

一般情况下,控制器目标方法返回字符串类型的值会被当成逻 辑视图名来处理;但如果返回的字符串中带“forward:”或“redirect:”前缀时,SpringMVC 会对其进行特殊处理,即将“forward:”或“redirect:”当成指示符,其后的字符串作为URL来处理。

注意:SpringMVC的实现流程具体可参考UrlBasedViewResolver类的createView(String, Locale)方 h

类型转换

转换器自主要用来定义一些 数据之间的转换,比如日期与字符串格式的日期之间的转换

自定义Converter

1,创建爱你Converter

2,配置Converter(第一种)

2,配置Converter(第二种,补偿用)

校验器Validation

配置

代码

拦截器nterceptors

配置

代码

视图解析器View Resolvers

MVC 命名空间提供专用元素。例如与 FreeMarker:

静态资源Static Resources

默认的Servlet。静态资源处理

一般Web应用服务器默认的Servlet名称是"default",因此DefaultServletHttpRequestHandler可以找到它。如果你所有的Web应用服务器的默认Servlet名称不是"default",则需要通过default-servlet-name属性显示指定:

混合视图Path maching

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180525G1NEVM00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券