
Spring
文章平均质量分 84
TimerBin
这个作者很懒,什么都没留下…
展开
-
基于Spring IOC容器实现工具类静态方法调用的三种方式
背景说明在spring MVC的项目中定义配置读取工具类时,发现需要使用Spring IOC容器进行注入,原始方法就是直接使用@Autowired 将依赖类注入到工具类中,想要用工具类时也得需要借助@Autowired进行注入,操作起来太复杂,完全丧失了工具类的灵活性。下面整理了将Spring IOS容器中的对象注入到工具类静态方法中的三种实现方式,详细方式如下所示:1、基于@PostCo...原创 2020-01-18 11:54:41 · 1820 阅读 · 1 评论 -
Spring Orika Bean Copy 属性丢失问题说明
一、背景说明考虑到bean复制性能问题,在SSM框架中使用引入了orkia 实现bean复制。上线一段时间后,发现部分线上机器出现bean复制后属性丢失问题,重启后正常二、问题详细说明在线上机器使用orika 进行bean复制时,在bean属性类型、名称相同情况下无法赋值的情况,属性值全为null,其中最特别的仅出现在部分bean上,大部分bean复制完全正常,并且出现问题的bean不固定...原创 2019-09-27 10:20:14 · 1446 阅读 · 1 评论 -
Cannot expose request attribute 'userName' because of an existing model object of the same name
一、背景说明 在预发布环境中进行功能验证时,点击“我的反馈”菜单时出现Cannot expose request attribute 'userName' because of an existing model object of the same name 错误,在测试环境正常显示。二、认识异常11-Jun-2019 16:43:57.429 SEVERE org....原创 2019-06-24 17:27:58 · 4312 阅读 · 1 评论 -
getOutputStream() has already been called for this response 从了解到解决
一、背景说明 在tomcat的localhost.log日志中时长见到 getOutputStream() has already been called for this response 异常的身影,一直不知由于哪里原因导致异常的产生,此异常并不会影响前端客户正常使用。二、认识异常 异常详情如下所示(部分代码):org.apache.catalina....原创 2019-05-17 21:40:03 · 95957 阅读 · 16 评论 -
借助ThreadLocal实现数据库读写分离,诡异的问题
一、背景说明 准备将项目中读取数据库操作切换到从数据库上,调研方案后最终决定借助ThreadLocal实现,在测试过程中遇到间歇性异常情况,经排查是由于相同的insert、update语句会间歇性的命中到从库数据库,最终导致异常。二、读写分离配置 原理 : 在spring-jdbc.jar包中提供了可动态切换数据源的实现类(AbstractRoutingDat...原创 2019-03-10 20:18:04 · 874 阅读 · 2 评论 -
spring MVC 请求中文乱码问题排查详解
一、背景介绍 java后端使用Spring MVC框架,在需求测试过程中遇到,服务端接收到Android请求时出现中文乱码问题,但接收到IOS请求时中文正常显示。二、问题排查步骤一 由于在web.xml中配置了编码转换器,代码如下所示:<filter> <filter-name>encodingFilter</filter...原创 2019-01-09 21:52:46 · 362 阅读 · 0 评论 -
HandlerMapping(1) handler 查找
文章环境说明: spring mvc 版本3.2.4.RELEASE,项目中注解方式注册Controller。 众所周知Spring Mvc 中的DispatcherServlet中会使用HandlerMapping 将请求Url解析成为handler处理器。关于HandlerMapping 实际只有两个突出的功能注册和查找。由于注册是在spring容器...原创 2014-11-19 16:34:39 · 213 阅读 · 0 评论 -
Druid connection holder is null autoReconnect=true
问题说明:在开发spring整合druid链接池(1.0.2版本)的项目时,出现tomcat容器每天早上必须重启一次,否在链接池无法正常使用,其中错误日志如下所示: ### Cause: java.sql.SQLException: connection holder is null; uncategorized SQLException for SQL []; SQL sta...原创 2016-11-04 11:34:48 · 2239 阅读 · 0 评论 -
@value 注解设置默认值
在使用spring3.0后,看到了它新增的实用@value注解,一下整理下@value注解设置默认值的方法。 首先需要在spring容器中引入properties文件,例子如下所示: <bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlacehol...原创 2016-09-24 10:32:39 · 7590 阅读 · 0 评论 -
获取spring ApplicationContext常用方法
背景说明:在开发过程中难免会用到ApplicationContext,在这里记录下笔记。 第一种方式:根据配置文件获取长用在工具测试类 ApplicationContext applicationContext = new FileSystemXmlApplicationContext("spring.xml");applicationContext.getBean(T...原创 2015-10-29 10:30:14 · 393 阅读 · 0 评论 -
Spring MVC Zookeeper 统一配置管理
资料摘自:http://www.big-mouth.cn/blog/65.html 背景说明:在基于Spring MVC框架的开发的项目中,由于存在大量的数据库配置、第三方配置信息、环境路径配置信息,一直使用Maven的profile方式来对各种配置信息进行管理(该方式不多做介绍),在维护方面成本较高。针对以上情况,准备借助zookeeper来对不同配置信息进行统一管理(当然其他缓存工...原创 2015-10-27 10:23:09 · 536 阅读 · 0 评论 -
spring mvc redirect 重定向 跳转并传递参数
在项目中做form表单功能提交时,防止用户客户端后退或者刷新时重复提交问题,需要在服务端进行重定向跳转,具体跳转方式有以下几种方式:公用代码:@RequestMapping(value="/index",method = { RequestMethod.POST, RequestMethod.GET })public ModelAndView index(HttpServletR...原创 2016-08-05 15:05:36 · 1223 阅读 · 0 评论 -
MultipartFile upload
今天在使用Spring MVC 进行文件上传时提示出如下错误: java.lang.IllegalStateException: File has been moved - cannot be read againat org.springframework.web.multipart.commons.CommonsMultipartFile.getBytes(CommonsMult...原创 2015-04-07 12:48:53 · 313 阅读 · 0 评论 -
Spring MVC Validator 验证
在使用Spring MVC时,使用了它服务端的验证Validator 验证。遇到了一个问题,在这里记录下。 问题:由于在一个Controller中存在多个可供WEB端使用的方法,根据方法的不同调用不同的验证Validator 进行对参数的验证,例子如下所示: 方法一简单案例: public String amethod(@ModelAttribute("ma...原创 2014-03-28 10:35:03 · 215 阅读 · 0 评论 -
SpringMVC 重写、扩展HttpServletRequest请求参数
一、背景说明 由于在项目进行前后端分离改造时,请求由多种传参方式统一定义为JSON格式传输,在改造过程中需要前后版本兼容。如果能在Controller接收参数之前将JSON格式参数进行解析成原有参数,对Request请求参数进行重写,这样能可以大大减少开发成本。二、调研 抱着对Request请求参数目标出发,对@InitBinder和HttpServletRequestW...原创 2018-10-16 11:34:52 · 3442 阅读 · 0 评论