
Spring MVC
文章平均质量分 61
totally123
这个作者很懒,什么都没留下…
展开
-
Spring MVC的RequestParam注解
在处理方法入参处使用RequestParam可以把请求参数传递给请求方法,具体有3个属性需要设置:value:参数名;required:是否必须。默认为true,表示请求参数中必须包含对应的参数,若不存在,则抛出异常;defaultValue:参数默认值。例如: @RequestMapping(value = "/testRequestParam") public String test转载 2016-05-12 09:02:25 · 344 阅读 · 0 评论 -
引用外部Spring配置文件
背景Spring的配置文件有两种,分别是Spring和Spring MVC的配置文件,一般放在classpath下或者WEB-INF下,加载的方式一般在web.xml中声明,如下:<?xml version="1.0" encoding="UTF-8&am原创 2018-08-09 18:57:51 · 810 阅读 · 0 评论 -
Spring MVC 集成 Logback
引用slf4j和logback的依赖,尤其是logback-ext-spring,是Logback对于Spring的扩展:<!-- Logging begin --><dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifa...原创 2018-06-26 20:17:58 · 939 阅读 · 0 评论 -
Spring MVC 解决CORS跨域问题
从4.2之后,Spring Framework可以解决跨域问题,开箱即用,下面是从官方文档总结的3种解决办法。利用@CrossOrigin注解,作用在Controller的类或方法上,可以指定origins、allowedHeaders、exposedHeaders、allowCredentials、maxAge属性。优点是可以指定某个或者某些接口跨域访问,缺点则是若需要全局支持跨域访问,则...原创 2018-05-14 11:28:43 · 1911 阅读 · 0 评论 -
Spring引入外部properties文件
1、背景:Spring配置文件需要通过context:property-placeholder标签或者PropertyPlaceholderConfigurer类来引入classpath路径下的properties文件,示例如下:<context:property-placeholder location="classpath:jdbc.properties" />&l...原创 2018-03-26 18:08:29 · 3939 阅读 · 0 评论 -
Spring激活profile的几种方式
1、配置web.xml:通过配置context-param指定ContextLoaderListener初始化用到的参数;如下,可激活test的profile。<?xml version="1.0" encoding="UTF-8"?><web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" ...原创 2018-03-13 17:30:33 · 3721 阅读 · 0 评论 -
Spring MVC HandlerMethodArgumentResolver 自定义参数解析器
Spring MVC Controller默认支持的参数类型有@RequestParam、@PathVariable、@ModelAttribute、@RequestAttribute、@SessionAttribute、@RequestBody、@CookieValue、HttpSession、Principal、Locale、TimeZone、InputStream、Reader、HttpMe...原创 2018-03-02 10:43:54 · 592 阅读 · 0 评论 -
Spring MVC国际化
国际化文件一般存放在classpath目录下,如图: 默认情况下,SpringMVC会根据请求头的Accept-Language参数判断客户端的本地化类型。当接受到请求时,SpringMVC会在上下文中查找一个本地化解析器(LocalResolver),找到后使用它获取请求所对应的本地化类型信息。SpringMVC还允许装配一个动态更改本地化类型的拦截器(LocaleChangeIntercep转载 2017-03-09 11:05:43 · 314 阅读 · 0 评论 -
Spring MVC请求处理具体流程
//前端控制器分派方法protected void doDispatch(HttpServletRequest request, HttpServletResponse response) throws Exception { HttpServletRequest processedRequest = request; HandlerExecutionChain m转载 2016-08-08 14:18:58 · 2802 阅读 · 0 评论 -
Spring MVC数据绑定
1、数组:有两种方式,多个同名参数或一个参数用”,”连接,示例如下:controller @RequestMapping("/array") public String array(Integer[] ids) { for (Integer id : ids) { System.out.println(id); }原创 2017-12-27 16:04:58 · 218 阅读 · 0 评论 -
Spring @Cacheable注解类内部调用失效问题
如果你只是想使用一个轻量级的缓存方案,那么可以尝试使用Spring cache方案。但是,在使用Spring @Cacheable注解的时候,要注意,如果类A的方法f()被标注了@Cacheable注解,那么当类A的其他方法,例如:f2(),去直接调用f()的时候,@Cacheable是不起作用的,原因是@Cacheable是基于Spring AOP代理类,f2()属于内部方法,直接调用f()时,是转载 2017-02-21 15:31:54 · 8820 阅读 · 0 评论 -
Spring MVC 4.0 + Velocity Tools 2.0遇到的问题
1、Spring MVC 4.0及更高版本不建议使用Velocity模板引擎,为了继承Velocity并使用Velocity Tools,需要重写viewClass,如下:import org.apache.velocity.context.Context;import org.apache.velocity.tools.Scope;import org.apache.velocity.tool原创 2017-02-17 16:35:01 · 1658 阅读 · 0 评论 -
Spring MVC在方法参数中使用@ModelAttribute中遇到的一个bug
@ResponseBody @RequestMapping(value = "/delete/{id}", method = {RequestMethod.GET}) public String delete(@ModelAttribute("sysUser") SysUser sysUser, @PathVariable Integer id, Model model) {原创 2017-01-17 16:55:49 · 2046 阅读 · 1 评论 -
基于Slf4j MDC和Spring MVC的日志链路跟踪
背景1.在日常查日志时,各种日志交错在一起,无法快速定位问题,如果有每个请求都拥有一个唯一标识,那grep起来就方便多了;2.分布式系统中需要定位整个链路,是上游系统出问题了,或者下游系统有没有收到请求;方案Slf4j是我们常用的日志门面,它服务于Logback和log4j等日志框架,其中有一个重要特性是MDC(Mapped Diagnostic Contexts );顾名思义,...原创 2019-05-17 17:54:43 · 1074 阅读 · 0 评论