一:常用日期格式 1、 DATE 显示格式:yyyy-MM-dd 时间范围:[‘1000-01-01’到’9999-12-31’] 2、 DATETIME 显示格式:yyyy-MM-dd HH:mm:ss 时间范围:[ ‘1000-01-01 00:00:00’到’9999-12-31 23:59:59’] 3、TIMESTAMP 显示格式:yyyy-MM-dd HH:mm:ss 时间范围:[ ‘1970-01-01 00:00:00’到’2037-12-31 23:59:59’]
二、 MyBatis处理日期有两种的jdbcType 1、jdbcType=DATE 2、jdbcType=TIMESTAMP
三、java.util.Date类: 当我们使用java.util.Date作为实体的日期类型时(JAVA没有DateTime这个类,Date类能够同时表示日期和时间),java.util.Date实际上是能够表示MySQL的三种字段类型: 1、date 2、datetime 3、timestamp
四、MyBatis处理方式 而实际将java.util.Date当做参数传递给Mapper的时候 1、假如我们不指定jdbcType,那么这个日期会自动转化会MySQL的timestamp。 2、指定jdbcType=TIMESTAMP也是转化为MySQL的timestamp。 3、指定jdbcType=DATE,那么MyBatis会将传入参数截取为yyyy-MM-DD(Date)格式。
五、总结 使用java.util.Date作为参数传递给Mapper时,不管MySQL的日期字段类型是date、datetime或者timestamp中的哪一种,MyBatis都能够自动做出类型转换,可以直接使用 =、>、=、<=符号来进行筛选。
六、扩展:
说明:mybatis中日期格式的if判定时,如图,不能加manageTime != ’ ’ 的判断。否则会报错。
|