解决mybatis无法给带有下划线属性赋值问题

 更新时间:2022年01月20日 11:21:07   作者:Cadence_D  
这篇文章主要介绍了解决mybatis无法给带有下划线属性赋值问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

mybatis无法给带有下划线属性赋值问

1、配置问题

<!-- 是否开启自动驼峰命名规则(camel case)映射, -->
<setting name="mapUnderscoreToCamelCase" value="true"/>

或者

//开启驼峰映射
        bean.getObject().getConfiguration().setMapUnderscoreToCamelCase(true);

mybatis配置文件设置了这项后,查询出来的字段如果带下划线,那么就会去掉下划线,然后采用java驼峰规则。比如数据库字段Parent_id,那么查询出来后,会转为parentid,然后去实体类匹配对应的字段。 因为你实体类里有下划线,所以匹配不上。要么采用resultMap 要么禁用掉驼峰规则(不建议禁用)。如果不想改实体类的话,建议采用resultMap。

2、增加set方法转换值的方式

原实体类

    public class demo {  
      private String user_name;  
      private Striing pass_word;       
      public String getPass_word(){  
           return pass_word;  
      }  
      public void setPass_word(String pass_word){  
           this.pass_word=pass_word;  
      }       
    }  

原sql

select user_name,pass_word from demo;

这句sql在数据库可以查到数据,但是使用mybatis的实体类查询就查不到了。

解决方法

在实体类中增加以下两个set方法并把sql改为

select user_name as username,pass_word as password from demo;

使用实体类查询数据库实际上就是一个set的过程只需要把每个属性增加一个set方法就好了

    public void setUsernaem(String user_name){  
          this.user_name=user_name;  
     }  
     public void setPassword(String pass_word){  
          this.pass_word=pass_word;  
     }  

仅适用于不方便改实体类的情况

实体类中有下滑线字段无法赋值问题

实体类中有下滑线字段,mybatis无法赋值

  • 直接将实体类中的下划线去掉
  • 返回值使用resultMap进行字段映射赋值

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 详解SpringBoot之添加单元测试

    详解SpringBoot之添加单元测试

    本篇文章主要介绍了详解SpringBoot之添加单元测试,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-07-07
  • java实现将结果集封装到List中的方法

    java实现将结果集封装到List中的方法

    这篇文章主要介绍了java实现将结果集封装到List中的方法,涉及java数据库查询及结果集转换的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2016-07-07
  • springboot+mybatis plus实现树形结构查询

    springboot+mybatis plus实现树形结构查询

    实际开发过程中经常需要查询节点树,根据指定节点获取子节点列表,本文主要介绍了springboot+mybatis plus实现树形结构查询,感兴趣的可以了解一下
    2021-07-07
  • mybatisplus 多表关联条件分页查询的实现

    mybatisplus 多表关联条件分页查询的实现

    本文主要介绍了mybatisplus 多表关联条件分页查询的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2025-01-01
  • 通过FeignClient调用微服务提供的分页对象IPage报错的解决

    通过FeignClient调用微服务提供的分页对象IPage报错的解决

    这篇文章主要介绍了通过FeignClient调用微服务提供的分页对象IPage报错的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-03-03
  • Java输入处理的常见错误小结

    Java输入处理的常见错误小结

    在 Java 编程中,输入处理是一个基础但又复杂的任务,尤其是在涉及到与用户交互时,本文将对 Java 输入处理的基本机制进行详细解析,需要的可以了解下
    2024-11-11
  • Java 线程池详解及创建简单实例

    Java 线程池详解及创建简单实例

    这篇文章主要介绍了Java 线程池详解及创建简单实例的相关资料,需要的朋友可以参考下
    2017-02-02
  • springboot中server.ssl.key-store配置路径的问题小结

    springboot中server.ssl.key-store配置路径的问题小结

    这篇文章主要介绍了springboot中server.ssl.key-store配置路径的问题,文中还记录了Spring Boot SSL(https)实例,介绍在web程序中使用自签名的SSL(HTTPS)证书及创建SSL认证,感兴趣的朋友跟随小编一起看看吧
    2024-02-02
  • Spring Security基于HttpRequest配置权限示例详解

    Spring Security基于HttpRequest配置权限示例详解

    这篇文章主要介绍了Spring Security基于HttpRequest配置权限示例详解,我们在配置中配置的url被封装成RequestMatcher,而hasRole被封装成AuthorityAuthorizationManager,本文结合示例代码讲解的非常详细,需要的朋友可以参考下
    2024-03-03
  • SpringBoot+Redis Bitmap实现活跃用户统计

    SpringBoot+Redis Bitmap实现活跃用户统计

    Redis的Bitmap数据结构是一种紧凑的位图,它可以用于实现各种场景,其中统计活跃用户是一种经典的业务场景,下面我们就来学习一下SpringBoot如何利用Redis中的Bitmap实现活跃用户统计吧
    2023-11-11

最新评论