首页 > 代码库 > json 得到时分秒为00:00:00,拿不到时分秒 解决办法
json 得到时分秒为00:00:00,拿不到时分秒 解决办法
数据库查询时间没有了时分秒的解决办法
问题出处,公司一个项目中使用动态sql方式查询Oracle数据库,在展示时Date类型字段只展示日期,无时分秒。
分析:
1、众所周知Oralce的日期类型有很多种,Date ,Timestamp等。其中Date类型对用的是java.sql.Date类型,Timestamp对用的是java.sql.Timestamp类型。这两个类型均继承自java.util.Date,其中java.sql.Date是没有时分秒的大家可以查看一下javaApi
2、ResultSet 的getObject(*)方法对用Date类型默认返回的是java.sql.Date
3、网上很多人提供的解决方案是将数据库Date类型改为Timestamp类型,显示当中数据库类型DBA是不会允许你改动的,且Oracle中对于时分秒要求不严格的地方DBA反而是建议用Date而不用Timestamp以节省资源
4、ibatis的ResultMap中对Date类型指定为Timestamp却能够正常显示
经过一番思考后发现对用Date类型的字段使用rs.getTimestamp(*)即可正常显示
方案二、
增加服务器/Java应用的虚拟机参数:-Doracle.jdbc.V8Compatible=“true”
json 得到时分秒为00:00:00,拿不到时分秒 解决办法
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。