[实战经验]Mybatis的mapper.xml参数#{para}与#{para, jdbcType=BIGINT}有什么区别?

在MyBatis框架中,传入参数使用#{para}和#{para, jdbcType=BIGINT}的有什么区别呢?

  • #{para}:这种写法表示使用MyBatis自动推断参数类型,并根据参数的Java类型自动匹配数据库对应的类型。例如,如果参数para的Java类型是Long,MyBatis会将其映射为数据库的BIGINT类型。
  • #{para, jdbcType=BIGINT}:这种写法明确指定了参数的JDBC类型为BIGINT,不依赖于MyBatis的自动推断。这样可以确保参数类型与数据库类型的匹配性,避免类型转换问题。

总体来说,推荐使用#{para},因为MyBatis有很好的类型推断能力,可以根据Java类型自动匹配数据库类型,简化了SQL语句的编写。但在某些特殊情况下,比如需要明确指定参数类型或者遇到类型转换问题时,可以使用#{para, jdbcType=...}进行类型的显式指定。

好的,以上就是这次关于mapper.xml参数写法的分享,如果你觉得对你有帮助,同学能动动小手指,帮我点个赞。

相关推荐
christine-rr3 小时前
数据库基础概念体系梳理
数据库·oracle
SpiderPex5 小时前
论MyBatis和JPA权威性
java·mybatis
瑞士卷@11 小时前
MyBatis入门到精通(Mybatis学习笔记)
java·数据库·后端·mybatis
optimistic_chen12 小时前
【Java EE进阶 --- SpringBoot】Mybatis - plus 操作数据库
数据库·spring boot·笔记·java-ee·mybatis·mybatis-plus
詩句☾⋆᭄南笙12 小时前
Mybatis一对一、一对多
java·mybatis·resulttype·resultmap·一对多·一对一
Web3&Basketball13 小时前
达梦数据库性能调优总结
数据库·oracle
Brianna Home14 小时前
博客安全攻防演练:从攻击者视角构筑铜墙铁壁
网络·数据库·安全·oracle
-雷阵雨-1 天前
MySQL——桥梁JDBC
数据库·mysql·oracle
亿坊电商1 天前
在PHP框架里如何进行数据库连接?
数据库·oracle·php
ss2731 天前
手写Spring第4弹: Spring框架进化论:15年技术变迁:从XML配置到响应式编程的演进之路
xml·java·开发语言·后端·spring