问题:
2020-03-17 11:32:16.0,从数据库中读出的时间后面多一个 .0
问题分析:
由于数据库中设置的数据类型为timestamp,如果设置的是date就不会出现该问题;
解决方法:
使用SimpleDateFormat类进行转换,具体方法如下代码所示:
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = format.parse(product.getCreateTime);
String string = format.format(date);
至此,已经能够解决上面所遇到的问题,如果考虑到多种数据的format时,可以将以上的主要代码封装成一个工具类方法:
public class DateUtils {
public static final String FORMATTER_MINUTE = "yyyy-MM-dd HH:mm";
public static final String FORMATTER_SECOND = "yyyy-MM-dd HH:mm:ss";
public static final String FORMATTER_MILLISECOND = "yyyy-MM-dd HH:mm:ss.SSS";
private static Pattern PATTERN_REGEX_MINUTE = Pattern.compile("^

当从MySQL数据库中使用Java读取datetime类型数据时,发现时间后面多了一个'.0'。这通常是由于timestamp类型引起的。解决方法是利用SimpleDateFormat进行转换。可以将转换代码封装成工具类方法,以适应不同格式的数据处理需求。
订阅专栏 解锁全文

1185

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



