业务:根据时间对比来取数据
在mysql中字段time的值为:2018-02-03
在java中的时间字符串为:2018-02-04
mysql时间戳与毫秒数:UNIX_TIMESTAMP('2018-02-03') (秒) -> 转换为毫秒数需要添加3个0
java字符串与时间戳:
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); HH:24小时 hh:12小时
//2018-02-04,因为我们的格式带有时分秒,所以需要添加字符串"00:00:00"
//此处得到的为毫秒数
long time = simpleDateFormat.parse("2018-02-04"+" 00:00:00").getTime();
//left(time,10) -> 取出time从左向右前10位,然后进行比较
java中的sql语句:select * from text where UNIX_TIMESTAMP('2018-02-03') <= left(" + time + ",10) ;
-------------------------------------------------------------------------------------------------------------------------------------------------------------------
额外添加UTC时间的转换:
// 取得本地时间:
private Calendar cal = Calendar.getInstance();
// 取得时间偏移量:
private int zoneOffset = cal.get(java.util.Calendar.ZONE_OFFSET);
// 取得夏令时差:
private int dstOffset = cal.get(java.util.Calendar.DST_OFFSET);
cal.add(java.util.Calendar.MILLISECOND, -(zoneOffset + dstOffset));
int mills = ptcTime.getTime();//int类型
本文介绍了如何在Java中处理日期字符串并将其转换为时间戳,以便与MySQL数据库中的时间字段进行有效比较。同时,提供了将Java时间字符串与MySQL时间字段进行精确匹配的方法,并讨论了UTC时间的转换。
1万+

被折叠的 条评论
为什么被折叠?



