今天做mybatis练习时碰到mysql里面有datetime类型,java不知道该怎么对应。。搜了搜后发现存取还是蛮简单的。
首先先看各种日期以及对应的时间:
日期类型 存储空间 日期格式 日期范围
datetime 8bytes YYYY-MM-DD HH:MM:SS 1000-01-01 00:00:00~9999-12-31 23:59:59
timestamp 4bytes YYYY-MM-DD HH:MM:SS 1970-01-01 00:00:01~2037-12-31 23:59:59
date 3bytes YYYY-MM-DD 1000-01-01~9999-12-31
输出:
如果要从MySQL中获取yyyy-MM-dd HH:mm:ss 日期格式,首先必须使用 rs.getTimestamp(“insert_dt”)方法,其中"insert_dt" 是数据库时间字段,类型为datetime;然后通过SimpleDateFormat 时间格式化类,将取出来的时间转为String类型。
System.out.println(rs.getTimestamp("insert_dt"));
通过getTimestamp获取的日期格式最后还有一位数(2018-03-19 22:03:21.0),需要将rs.getTimestamp(“insert_dt”) 转为String类型.
String timeStamp = new SimpleDateFormat("yyyy-MM-dd
HH:mm:ss").format(rs.getTimestamp("insert_dt"));
System.out.println(timeStamp);
输入:
比较简单,就是调用DateFormat 改一下datetime格式即可
Date date = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date parse = sdf.parse("2012-12-11 11:22:33");
//或者:
//String dateStr = sdf.format(date);