mysql中的int类型对应于java中的Long类型详解
作者:zero_xk_
这篇文章主要介绍了mysql中的int类型对应于java中的Long类型,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
mysql中int类型对应于java中的Long类型
bug日记
在写项目的时候碰到了就顺便记录一下,事情的经过是这样的↓
在数据库查询完后映射到po类的时候报了错
娃子还小不懂事,屁颠屁颠跑回去看po类、数据字段、mapper.xml,大眼瞪小眼看了半天没看出来啥问题。
没啥问题啊,于是我一顿debug找错,发现了自己mybatis框架里面这么一段代码
这一段是将数据库中表一行记录中的列映射成一个java对象,debug发现他是long类型的,我就觉得奇怪int对应的不应该是Integer类型的嘛??!!
What?
但是仔细想想其实也好像确实是这么回事
这里我勾选了无符号数,所以这里int的容量应该是0~2^32
但是总所周知,java中的int/Integer容量只有
-2147483648~2147483647
所以我猜想基于这种情况,用Long来映射数据库中的int是合情合理的
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。