数据库中的字段名是loginName,实体中应当这样写
@Column(name = “loginname”)
private String loginName;
1
2
如果按照数据库中字段loginName,一样注解在实体类@Column(name = “loginName”)
执行sql语句时,会把驼峰字符转化为”_”+ 小写驼峰字符,查询时会变成login_name,所以会报异常:
Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column ‘login_name’ in ‘field list’
所以在@Column(name = “loginname”)中如果没有下划线,那么所有字符都小写,有大写会变为 “_” + 小写 形式,而javabean中要保持大小写格式,否则不能映射成功!!!
*
*重现问题,坑
映射转换排序字段的时候,把前端排序字段名转换成另一个系统后端可以支持的排序字段名,结果大写的C自动转换成了下划线,导致sql语句报错,谨记规范命名,避免不必要的bug
**