Mybatis-Plus数据库字段名与实体属性名一致但是映射出错
6条回答 默认 最新
关注 让阿豪来帮你解答,本回答参考chatgpt3.5编写提供,如果还有疑问可以评论或留言
问题描述: 使用Mybatis-Plus进行数据库操作时,发现数据库字段名与实体属性名一致,但是映射出错。 解决方案: 1.检查实体类属性名与数据库字段名是否一致,如果不一致需要手动添加@TableField注解,指定对应数据库字段名。 案例: 实体类:@Data @NoArgsConstructor @AllArgsConstructor @TableName("user") // 指定对应数据库表名 public class User implements Serializable { private static final long serialVersionUID = 1L; @TableId(value = "user_id", type = IdType.AUTO) // 指定对应数据库主键名和自增类型 private Long userId; @TableField(value = "username") // 指定对应数据库字段名 private String username; private String password; }
2.检查Mybatis-Plus配置文件是否正确配置了驼峰命名转换。 案例: 在mybatis-plus.properties文件中添加以下配置:
# 驼峰命名转换 mybatis-plus.configuration.map-underscore-to-camel-case=true
3.如果以上两种情况均不存在问题,可以手动编写XML文件指定对应的SQL语句。 案例: 在UserMapper.xml文件中添加以下代码:
<!-- 查询所有用户 --> <select id="findAllUsers" resultType="com.example.demo.entity.User"> select user_id as userId, username, password from user </select>
4.如果实在无法解决以上问题,则可能是Mybatis-Plus版本过低,可以尝试升级Mybatis-Plus版本或使用其他ORM框架。 参考资料: 1.Mybatis-Plus官方文档:https://baomidou.com/guide/ 2.Mybatis-Plus GitHub仓库:https://github.com/baomidou/mybatis-plus
解决 无用评论 打赏 举报
悬赏问题
- ¥15 找一个QT页面+目标识别(行人检测)的开源项目
- ¥15 有没有整苹果智能分拣线上图像数据
- ¥20 有没有人会这个东西的
- ¥15 cfx考虑调整“enforce system memory limit”参数的设置
- ¥30 航迹分离,航迹增强,误差分析
- ¥15 Chrome Manifest扩展引用Ajax-hook库拦截请求失败
- ¥15 用Ros中的Topic通讯方式控制小乌龟的速度,走矩形;编写订阅器代码
- ¥15 LLM accuracy检测
- ¥15 pycharm添加远程解释器报错
- ¥15 如何让子窗口鼠标滚动独立,不要传递消息给主窗口