mybatis 从数据库中获取信息映射到实体中时,往往会遇到变量名带有下划线的情况,处理不好容易产生“o.a.i.s.AutoMappingUnknownColumnBehavior : Unknown column is detected on '*****' auto-mapping. Mapping parameters are [columnName=***_***,propertyName=***_***,propertyType=null]”,带有下划线的变量无法得到映射。
解决办法如下:
1.在mybatis设置文件中设置<setting name="mapUnderscoreToCamelCase" value="true"/>,启动驼峰规则,这样在map文件中带下划线的column会自动按照驼峰命名规则映射到实体属性变量中。
例如:
map文件中 select user_id, user_name from user_info where user_id=#{id}
resultType对应的bean中对应的变量名要使用userId 和userName 或者按照驼峰规则编写set方法
2.禁用驼峰规则<setting name="mapUnderscoreToCamelCase" value="false"/>,这样map文件中的带有下划线的columnName会一对一的对应到实体类中的同名变量中。
例如:
map文件中 select user_id, user_name from user_info where user_id=#{id}
resultType对应的bean中对应的变量名user_id和user_name
3.如果不想禁用驼峰规则,有不想修改实体类,那就在map文件中使用resultMap,resultMap中的columnName不受驼峰规则的影响,间接起到了禁用驼峰规则的效果。
例如:
<resultMap id="userResultMap" type="cn.**.User">
<result property="user_id" column="user_id"/>
<result property="user_name" column="user_name"/>
</resultMap>
相关推荐
我们在平时的工作中有时候是需要在配置文件中配置全局变量的,我最近工作中就遇到了,所以索性记录下来,下面这篇文章主要跟大家介绍了关于Mybatis中设置全局变量的方法示例,需要的朋友可以参考下。
mybatis相关面试问题.docx
Mybatis排序无效问题解决.doc
任何框架都有自身的能力范围,就拿Hibernate和Mybatis这两个ORM框架来说。 Hibernate封装了很多有用的API给开发者,降低了操作数据库的难度和复杂度,同时也减少了模板代码的数量,但Hibernate留给开发者可操作的...
输入文件和输出文件名分别为为:humpName.txt(注意,格式为:每行一个字符,空格换行),humpTool.txt,默认在E盘根目录,humpTool.jar也默认E盘根目录, 然后在windows命令提示符中输入(快捷键:windows键 + R,...
mybatis入门案例mybatis入门案例mybatis入门案例mybatis入门案例mybatis入门案例mybatis入门案例mybatis入门案例mybatis入门案例mybatis入门案例mybatis入门案例mybatis入门案例mybatis入门案例mybatis入门案例...
在实际开发过程中,我们往往需要编写复杂的SQL语句,拼接稍有不注意就会导致错误,Mybatis给开发者提供了动态SQL,大大降低了拼接SQL导致的错误。 动态标签 if标签 if标签通常用那个胡where语句,update语句,insert...
mybatis源码是mybatis-3.2.6的源码,用户使用mybatis时可以进行参考
mybatis练习3mybatis练习3mybatis练习3mybatis练习3mybatis练习3mybatis练习3mybatis练习3mybatis练习3mybatis练习3mybatis练习3mybatis练习3mybatis练习3mybatis练习3mybatis练习3mybatis练习3mybatis练习3mybatis...
mybatis deom.mybatis 的简单入门实例。基于maven开发的。
mybatis-plus就很好的解决了这个问题。 MyBatisPlus是一个Mybatis的增强工具,在 Mybatis 的基础上只做增强不做改变,为简化开发、提高效率而生。它主要通过启动时自动注入基本CURD,达到简化操作的目的。 关于...
mybatisPlus的queryWrapper查询条件我们一般都是写死带下划线(如:create_time),但是如果用@FieldNameConstants注解的files字段去当条件的话,是驼峰,sql语句报找不到列,所以期望这里会自动帮我们把驼峰转下划线...
开发工具 mybatis-3.4.2开发工具 mybatis-3.4.2开发工具 mybatis-3.4.2开发工具 mybatis-3.4.2开发工具 mybatis-3.4.2开发工具 mybatis-3.4.2开发工具 mybatis-3.4.2开发工具 mybatis-3.4.2开发工具 mybatis-3.4.2...
struts2+mybatis解决longblob字段问题,存读取并下载longblob字段
mybatis、mybatis详细设计、mybatis配置
MyBatis的动态SQL,解决了SQL字符串拼接的痛苦。下文分步骤给大家详细介绍了MyBatis 动态拼接Sql字符串的问题,非常不错,感兴趣的朋友一起看下吧
mybatis_plugin2.9.2
生成已tk.mybatis封装的mybatis代码
解决mybatis头文件报错 下载好压缩包 解压将文件放到本地文件夹 例如 D盘的哪个文件夹 D:\mybatis\ ;然后打开eclipse ->Window->prefenrence->XML->XML Catalog->User Specifiled Entreis->Add->Location(此处是你...
MyBatis学习代码: mybatis实战教程mybatis in action之一开发环境搭建 mybatis实战教程mybatis in action之二以接口的方式编程 mybatis实战教程mybatis in action之三实现数据的增删改查 mybatis实战教程mybatis in...