项目用到mybatis
1、查询一个列表,返回map,查出3条数据,奇怪的发现A字段在最后一条数据中没有,
2、网上搜索说:mybatis自动把无值的字段过滤掉了,也就是说这条数据的这个字段没值,mybatis就给过滤了,连key在map中都没有。
3、于是网络搜索解决办法,有人提供很笨的办法,显然不可取,绝望时看到有人在网上说用<setting name="callSettersOnNulls" value="true"/>,如果你连这个不知道,就别用mybatis了,好好去学学再用吧。
4、我加上后,报一个拼写错误的异常,callSettersOnNulls 我没写错啊,都是拷贝的,怎么会错,于是网上搜索,网络是个好东西,但是很绝望,资料很少且不全。
5、在坚持不懈努力的努力下,几乎要放弃的情况下,找到个网站,全是英文,幸好我认识几个单词,最终知道是版本问题,fuck!一下午就这样过去了。
6、我们项目是用的mybatis3.1.1,callSettersOnNulls需要至少3.2版本的支持,于是换了jar包
7、启动又报错,一看就是缺cglib的jar包,搜索下有人说和spring整合需要cglib-nodep-2.2.jar,于是maven的pom添加这个。
8、启动成功。
在此特别鸣谢:https://github.com/mybatis/mybatis-3/commit/608209c6a136ebbbd9fce833dc652af803d0ec95
分享到:
相关推荐
`callSettersOnNulls` 是 MyBatis 中的一个重要配置项,它涉及到对象属性赋值的策略,尤其是在处理查询结果集时。 在默认情况下,当从数据库查询结果中映射对象时,MyBatis 只会调用那些查询结果中有值的字段对应的...
MybatisX-idea插件是专为IntelliJ IDEA(简称IDEA)设计的一款扩展工具,旨在提升开发人员在使用Mybatis和Mybatis-Plus框架时的效率。它集成了许多实用功能,使得在DAO层代码与对应的XML映射文件之间的导航变得更加...
MyBatis是一个优秀的Java持久层框架,它支持定制化SQL、存储过程以及高级映射。在深入探讨MyBatis 3.2.6版本的源码之前,...总之,掌握源码对于深入理解MyBatis的工作机制、提升开发效率和解决实际问题具有重要意义。
"mybatis连接MySQL8出现的问题解决方法" MyBatis是当前最流行的持久层框架之一,它提供了一个简单的方式来访问数据库。然而,在使用MyBatis连接MySQL8时,可能会出现一些问题。本文将介绍MyBatis连接MySQL8出现的...
MyBatis是一款优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。MyBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集。MyBatis可以使用简单的XML或注解进行配置和原始映射,将接口和Java的POJOs...
**MyBatis 知识点概述** MyBatis 是一个优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解进行...
这个压缩包文件“mybatisx.zip”包含了多个版本的MybatisX插件,包括MybatisX-1.4.16.zip、MybatisX-1.4.8.zip、MybatisX-1.4.6.zip以及MybatisX-1.1.2.zip。这些版本的差异可能体现在功能增强、性能优化或者修复...
MyBatis是一款优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。MyBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集。MyBatis可以对配置和原生Map使用简单的XML或注解,将接口和Java的POJOs...
MybatisGenerate是一个强大的工具,主要用于自动化生成Mybatis相关的代码,以提高开发效率并减少手动编写重复性工作的负担。这个工具是基于tk.mybatis框架的,它整合了Mybatis的优秀特性,使得开发者能够更加便捷地...
在了解MyBatis之前,我们需要明白持久层框架的作用主要是用于解决Java应用程序与数据库之间的交互问题。 首先,MyBatis的入门安装很简单,对于使用Maven构建项目的用户来说,只需在pom.xml文件中加入指定版本的...
mybatis-plus就很好的解决了这个问题。 MyBatisPlus是一个Mybatis的增强工具,在 Mybatis 的基础上只做增强不做改变,为简化开发、提高效率而生。它主要通过启动时自动注入基本CURD,达到简化操作的目的。 关于...
MyBatis 是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 ...
MyBatis入门 MyBatis是一个优秀的持久层框架,使用XML将SQL与程序解耦,便于维护。MyBatis学习简单,执行高效,是JDBC的延伸。MyBatis提供了数据库增删改查的便捷操作,极大提高了开发效率、统一的编码规则、利于...
- 了解MyBatis的缓存机制,避免出现数据一致性问题。 通过这份“MyBatis入门到精通”的学习资料,新手可以系统地学习MyBatis的基础知识,理解其核心概念,并逐步掌握实际项目中的应用技巧,从而成为熟练的MyBatis...
MyBatis是一个优秀的Java持久层框架,它支持定制化SQL、存储过程以及高级映射。MyBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集。MyBatis可以使用简单的XML或注解进行配置和原始映射,将接口和Java的...
"mybatis_plugin 2.92" 提供的可能是对 MyBatis 插件框架的一个特定版本的实现或增强,版本号 2.9.2 暗示这是一个相对成熟的发布,可能修复了之前版本的若干问题并引入了一些新特性。 在 MyBatis 中,插件主要通过...
此外,还可能包含了一些高级主题,如插件开发、Mybatis Plus扩展等,帮助开发者提升技能水平,解决实际问题。 总之,Mybatis是一个强大而灵活的持久层框架,它的广泛应用证明了其在简化数据库操作、提高开发效率...
这个版本可能包含了对性能的优化,bug修复,以及对之前版本中反馈问题的解决。MyBatis的每个新版本都致力于提供更好的用户体验和更稳定的性能。 描述中的"mybatis-3.2.6(最新mybatis jar).zip"提示我们这是一个ZIP...
对于MyBatis插件,readme.txt可能包含了如何在IDEA 15中安装、配置和使用该插件的详细步骤,以及任何需要注意的兼容性问题、更新日志和开发者信息。 2. **mybatis_plus** - 这可能是插件的主文件或者包含所有相关...
通过集成日志输出,开发者可以直接在IDEA中查看Mybatis的执行日志,追踪SQL执行情况,定位问题所在。这比在终端或日志文件中查找更加快捷高效。 此外,MybatisX还支持自定义模板,这意味着你可以根据团队的编码规范...