在Mybatis执行插入数据时,如何将Date类型字段设置为“yyyy-MM-dd”的格式

1、问题描述

使用mybatis新增插入一条数据到MySQL数据库时,
其中实体类对象的一个属性”hiredate“的类型是日期类型Date,
此属性在数据库中对应的字段“hiredate”类型也是日期Date类型,
但是在数据库中要求“hiredate”字段的字段值为“yyyy-MM-dd”格式,
那这样的问题该如何处理?

  • 实体类中的属性
    在这里插入图片描述

  • 数据库中hiredate字段的字段值
    在Mybatis执行插入数据时,如何将Date类型字段设置为“yyyy-MM-dd”的格式_第1张图片

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、具体处理步骤

  • 代码片段
    在Mybatis执行插入数据时,如何将Date类型字段设置为“yyyy-MM-dd”的格式_第2张图片 - 数据库插入结果在这里插入图片描述

你可能感兴趣的:(我开发中的遇到的问题点,mybatis,DateFormate)