java.util.TimeZone 新加方法 getTimeZone(ZoneId zoneId) 导致的问题


最近接受的项目中用spring配置了一个TimeZone对象:

<bean id ="timeZone4Job" class="java.util.TimeZone" factory-method="getTimeZone">
          <constructor-arg value="GMT+8:00"/>
</bean>

以前是运行在 1.7 中,没什么问题。今天换了1.8的sdk,spring开始报错,发现原来在1.8里面新加入了方法 getTimeZone(ZoneId zoneId),spring会尝试转换GMT+8:00为ZoneId,而坑爹的是ZoneId.of(String zoneId) 支持的格式少,直接报错。

修改Spring配置如下,问题解决。

<bean id ="timeZone4Job" class="java.util.TimeZone" factory-method="getTimeZone">
          <constructor-arg value="GMT+8:00" type="String"/>
</bean>

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM