• 已删除用户
童话的爱
童话的爱
发布于 2023-12-11 / 46 阅读 / 0 评论 / 0 点赞

Java开发五大/十大常见问题的避免及解决

Java开发五大/十大常见问题的建议

1.不要在实体类使用IDEA或其他方式手写get/set方法,而应使用Lombok 的@Data 注解来自动在每次编译时自动生成相关代码

这主要是为了防止你在使用mybatis 等ORM框架时出现实体类字段的get/set 方法无法与mybatis 框架所"自然调用"的不同名导致当mybatis 想将查询出的结果设置到实体类时无法找到相应get/set 方法从而无法设置值的问题。(即:实体类字段部分或全部未自动被设置值的问题)

比如以下就是因为Java映射的实体类中的属性不是全小写的(我这边库里Oracle 的表字段为全大写,个别自段带'_'下划线)导致mybatis 在自动将数据库字段名转换后仍找不到对应字段:

public class UserClass {
   private String iduser;  // 该属性可被mybatis 自动对应到数据表中的IDUSER或ID_USER字段上

   private String idName;   // 该属性不能被自动对应到字段IDNAME或ID_NAME上,你必须在SQL查询中指定别名,因为该属性名的N是大写的,mybatis 不会自动做转换。解决方法要不改此处的属性名idName为idname,要不在select 语句中使用别名:as idName
}


评论