java中Date和String之间的转换
/** *程序1 *将date转换成String *得到像 2018-11-26 这种格式的日期字符串 */ public static String gainDate(Date date){ SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd"); String dateStr=sdf.format(date); return dateStr; } /** *程序2 *将date转换成String *得到像 2018-11-26 11:04:34 这种格式的时间字符串 */ public static String gainTime(Date date){ SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String dateStr=sdf.format(date); return dateStr; } /** *程序3 *获取系统当前日期,返回Date类型 *返回格式是这样的:Mon Nov 26 00:00:00 CST 2018 */ public static Date getSystemDate(){ SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd"); Date date=new Date(); return simpleDateFormat.parse(simpleDateFormat.format(date)); } /** *程序4 *获取系统当前时间,返回Date类型 *返回格式是这样的:Mon Nov 26 11:14:26 CST 2018 */ public static Date getSystemTime(){ SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date date=new Date(); return simpleDateFormat.parse(simpleDateFormat.format(date)); }
mysql中date、datetime、timestamp类型的说明
- date:在mysql中,该类型是java.sql.Date类型的,用java操作数据库时可以用java.util.Date类型的字段插入。比如说我要插入“2018-11-26”这种格式的日期到mysql中,就可以用上述程序3的方法获取该格式的date进行插入。注意,mysql中date类型只能存“2018-11-26”这种格式的,像“2018-11-26 11:29:33”这种格式的日期是不能存的,mysql会把后面的时间舍掉,只保留日期。从数据库获取日期时用程序1将date类型转换为String类型即可得到该格式的日期字符串。
- datetime:该类型的字段可以存“2018-11-26 11:32:34”这种格式的日期,用上述程序4得到的date类型插入数据库即可。获取时用程序2将date类型的日期转换为String类型即可。注:如果不将date转换为String的话,得到的是一窜时间戳序列,如:1162614180
- timestamp:时间戳,关于datetime和timestamp的区别,放一个链接:MYSQL-datatime和timestamp的区别,该用法和上面的datetime用法一致。