MyBatis如何处理MySQL字段类型date与datetime

 更新时间:2024年01月30日 09:38:33   作者:zendwang  
这篇文章主要介绍了MyBatis如何处理MySQL字段类型date与datetime问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

1. MySQL Data Type

1)DATETIME

  • 显示格式:yyyy-MM-dd HH:mm:ss
  • 时间范围:[ '1000-01-01 00:00:00'到'9999-12-31 23:59:59']

2)DATE

  • 显示格式:yyyy-MM-dd
  • 时间范围:['1000-01-01'到'9999-12-31']

3)TIMESTAMP

  • 显示格式:yyyy-MM-dd HH:mm:ss
  • 时间范围:[ '1970-01-01 00:00:00'到'2037-12-31 23:59:59']

2. MyBatis处理日期有两种的jdbcType

  • 2.1 jdbcType=DATE
  • 2.2 jdbcType=TIMESTAMP

3. 当我们使用java.util.Date作为实体的日期类型时

(JAVA没有DateTime这个类,Date类能够同时表示日期和时间)

java.util.Date实际上是能够表示MySQL的三种字段类型:

  • 3.1 date
  • 3.2 datetime
  • 3.3 timestamp

4. MyBatis处理方式

而实际将java.util.Date当做参数传递给Mapper的时候

  • 4.1 当不指定jdbcType时,日期会自动转化会MySQL的timestamp
  • 4.2 指定jdbcType=TIMESTAMP,日期会自动转化会MySQL的timestamp
  • 4.3 指定jdbcType=DATE,那么MyBatis会将传入参数截取为2018-07-24(Date)

当指定jdbcType=DATE的时候

MyBatis会自动截取掉时间

如果MySQL的日期字段类型是datetime或者timestamp一定不要这么写

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 散列表的原理与Java实现方法详解

    散列表的原理与Java实现方法详解

    这篇文章主要介绍了散列表的原理与Java实现方法,详细分析了散列表的原理,并结合实例形式分析了java实现散列表相关操作技巧,需要的朋友可以参考下
    2019-09-09
  • java动态获取实体类字段的8种方法实现

    java动态获取实体类字段的8种方法实现

    本文介绍了Java中动态获取实体类字段的多种方法,包括反射API、注解处理器、字节码操作库、ORM框架等,具有一定的参考价值,感兴趣的可以了解一下
    2025-07-07
  • java的io操作(将字符串写入到txt文件中)

    java的io操作(将字符串写入到txt文件中)

    这篇文章主要介绍了java的io操作示例,将字符串写入到txt文件中,需要的朋友可以参考下
    2014-04-04
  • 关于@RequestParam注解的使用(简单易懂)

    关于@RequestParam注解的使用(简单易懂)

    这篇文章主要介绍了关于@RequestParam注解的使用,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-01-01
  • SpringBoot中实现JSON转Word格式的示例详解

    SpringBoot中实现JSON转Word格式的示例详解

    这篇文章主要为大家详细介绍了如何使用SpringBoot实现JSON转Word格式,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2025-05-05
  • 如何利用Spring MVC实现RESTful风格

    如何利用Spring MVC实现RESTful风格

    这篇文章主要介绍了如何利用Spring MVC实现RESTful风格,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-02-02
  • Java通过JsApi方式实现微信支付

    Java通过JsApi方式实现微信支付

    本文讲解了Java如何实现JsApi方式的微信支付,代码内容详细,文章思路清晰,需要的朋友可以参考下
    2015-07-07
  • Spring事务执行流程及如何创建事务

    Spring事务执行流程及如何创建事务

    这篇文章主要介绍了Spring事务执行流程及如何创建事务,帮助大家更好的理解和学习使用spring框架,感兴趣的朋友可以了解下
    2021-03-03
  • Java Springboot 后端使用Mockito库进行单元测试流程分析

    Java Springboot 后端使用Mockito库进行单元测试流程分析

    使用Mock进行单元测试可以避免启动整个Spring框架,节省时间并降低外部依赖影响,Mock允许模拟外部方法和类,专注于测试方法的功能逻辑,本文给大家介绍Java Springboot 后端使用Mockito库进行单元测试流程分析,感兴趣的朋友跟随小编一起看看吧
    2024-10-10
  • Java高效处理超大文本文件的技巧分享

    Java高效处理超大文本文件的技巧分享

    这篇文章主要介绍了Java处理超大文本文件的几种方式,包括BufferedReader逐行读取、Files.lines()流式处理、内存映射文件、分块读取等,并提供了每种方法的优缺点和适用场景,最终推荐使用BufferedReader方案处理超大文本文件,需要的朋友可以参考下
    2025-11-11

最新评论