Java认证:JAVA中UTC的使用
由于使用Date类型在数据库搜索大量数据时效率很低,公司采取使用Long型timecode进行搜索: Calendar calendar=Calendar.getInstance(); Long timecode=calendar.getTimeInMillis(); 但是由于不同机器不同系统的时区设置不同,所以同一时间产生的timecode的值也不同,导致搜索不到准确时间的数据的问题,所以采取如下方式进行解决: //将本地当前时间转换成UTC国际标准时间的毫秒形式 Date time=new Date(); Long timecode=time.UTC(time.getYear(), time.getMonth(), time.getDate(), time.getHours(), time.getMinutes(), time.getSeconds()); //将UTC国际标准时间的毫秒形式转换成本地的时间 Calendar calendar=Calendar.getInstance(); int offset=calendar.get(Calendar.ZONE_OFFSET); int dst=calendar.get(Calendar.DST_OFFSET); calendar.setTimeInMillis(timecode); calendar.add(Calendar.MILLISECOND, -(offset+dst)); Date resultDate=calendar.getTime(); 以上工作心得,如有不对请大家指正。
编辑推荐:
温馨提示:因考试政策、内容不断变化与调整,长理培训网站提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准! (责任编辑:长理培训)
点击加载更多评论>>