报错信息:
原因:MySql和Java变量大小写产生的冲突。
经过查阅各个博客等,得出浅显结论(不一定对):MySql大小写不敏感,Java大小写敏感,当Javabean转为MySql数据库表时,Javabean中会将存在大小写的变量用下划线加转为小写替代,类似于Javabean是驼峰命名法,转为MySql表则转为下划线命名法。这样就导致Javabean变量于MySql表内变量一致,但是经转换为下划线命名法后与MySql表变量不一致。
以
userID
变量为例。
解决方法
-
在Java中全部用小写
如:
userid
。可读性较差
-
在Java中加上
_
,将类驼峰命名转下划线命名如:
user_i_d
。可读性较差
-
在数据库中加
_
,Java中用驼峰命名法如:
MySql:
user_ID
Java:
userId
可读性高,符合规范,强烈建议。