首页 > 编程语言 > 详细

spring i18n 设置时区

时间:2018-09-26 12:39:25      阅读:435      评论:0      收藏:0      [点我收藏+]

public class TimeZoneChangeInterceptor extends HandlerInterceptorAdapter {

public static final String DEFAULT_PARAM_NAME = "_timeZone";
private static final Logger logger = LoggerFactory.getLogger(TimeZoneChangeInterceptor.class);

@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler)
throws ServletException {

String newTimeZone = request.getParameter(DEFAULT_PARAM_NAME);
if (StringUtils.isEmpty(newTimeZone)) return true;

TimeZone timeZone = TimeZone.getTimeZone(newTimeZone.toUpperCase());
if (timeZone != null) {
logger.debug("CHANGE TIMEZONE:" + LocaleContextHolder.getTimeZone().getID() + " TO " + timeZone.getID());
LocaleResolver localeResolver = RequestContextUtils.getLocaleResolver(request);

if (localeResolver instanceof LocaleContextResolver) {
((LocaleContextResolver) localeResolver).setLocaleContext(request, response, new SimpleTimeZoneAwareLocaleContext(LocaleContextHolder.getLocale(), timeZone));
}
}

return true;
}

}

 

 

 

<mvc:interceptors>
<bean class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor" />
<bean class="xxx.xxx.xxx.support.spring.i18n.TimeZoneChangeInterceptor"/>
</mvc:interceptors>

spring i18n 设置时区

原文:https://www.cnblogs.com/wangtg/p/9706131.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!