1、问题描述
使用mybatis新增插入一条数据到MySQL数据库时,
其中实体类对象的一个属性”hiredate“的类型是日期类型Date,
此属性在数据库中对应的字段“hiredate”类型也是日期Date类型,
但是在数据库中要求“hiredate”字段的字段值为“yyyy-MM-dd”格式,
那这样的问题该如何处理?
-
实体类中的属性
-
数据库中hiredate字段的字段值
2、SimpleDateFormate类处理Date日期
SimpleDateFormate类是完成日期Date和文本之间的转换,
特点是在Date对象和String对象之间转换,它有两个方法
- 方法一:format
格式化:按照指定的格式,将Date转换为String对象
@Test
public void test2() throws ParseException {
//格式化:将Date类型的日期格式化成执行形式的字符串
//1、创建SimpleDateFormat对象并制定格式
SimpleDateFormat sdf1 =
new SimpleDateFormat("yyyy-MM-dd");
//2、创建日期对象:此对象是指当前时间且精确到秒
Date date1 = new Date();
System.out.println(date1);//Fri Jun 16 09:39:46 CST 2023
//3、格式化:将Date类型的日期转换成字符串格式
String format1 = sdf1.format(date1);
System.out.println(format1);//2023-06-16
}
- 方法二:parse
解析:按照指定格式,将String对象转换为Date对象
@Test
public void test3() throws ParseException {
//解析:将字符串形式的日期解析成Date类型的日期
//1、创建SimpleDateFormat对象并指定格式
SimpleDateFormat sdf =
new SimpleDateFormat("yyyy-MM-dd");
//2、解析:将字符串解析成Date类型的真实日期
Date date = sdf.parse("2022-2-22");
System.out.println(date);
//Tue Feb 22 00:00:00 CST 2022
}
3、具体处理步骤
- 代码片段
- 数据库插入结果