Error evaluating expression ''''.  Return value () was not iterable 出现原因:xml文件中遍历List 时,该参数的实际值为非List数据.…
异常如下:org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.builder.BuilderException: Error evaluating expression 'requestMap.maintenancename != null and requestMap.maintenancename != '''. Cause: org.apache.ibatis.ognl.OgnlE…
<select id="getUserIn" parameterType="QueryVo" resultMap="userMap"> SELECT <!-- 引用sql片段 --> <include refid="user_sql" /> FROM USER <where> <!-- 遍历pojo传入的集合 collection="in"  要遍历po…
本例是在[Mybatis]MyBatis之配置多数据源(十)的基础上进行拓展,查看本例请先学习第十章 实现原理 1.扩展Spring的AbstractRoutingDataSource抽象类(该类充当了DataSource的路由中介, 能有在运行时, 根据某种key值来动态切换到真正的DataSource上.)  从AbstractRoutingDataSource的源码中,有一个数据源查找属性(dataSourceLookup),和一个 查询数据源方法 (resolveSpecifiedDat…
在做项目的过程中,有时候一个数据源是不够,那么就需要配置多个数据源.本例介绍mybatis多数据源配置 前言 一般项目单数据源,使用流程如下: 单个数据源绑定给sessionFactory,再在Dao层操作,若多个数据源的话,那不是就成了下图 可见,sessionFactory都写死在了Dao层,若我再添加个数据源的话,则又得添加一个sessionFactory.所以比较好的做法应该是下图 实现原理  1.扩展Spring的AbstractRoutingDataSource抽象类(该类充当了Da…
上一章[Mybatis]MyBatis对表执行CRUD操作(三),已经讲了基本操作,本章介绍Sql配置文件中常用功能 1.插入返回主键 2.参数值的获取方式 3.resultMap使用 插入返回主键 在实际项目中,插入一条数据,id是数据库自动生成的,但是我们插入完数据,往往需要返回数据的id进行使用. 1.在EmployeeMapper.xml映射文件中加入2条sql 1 <!-- parameterType 可写可不写 --> 2 <insert id="insertEmp…
[MyBatis]ResultMap 转载:https://www.cnblogs.com/yangchongxing/p/10486854.html 支持的 JDBC 类型为了未来的参考,MyBatis 通过包含的 jdbcType 枚举型,支持下面的 JDBC 类型. 注意:在指定jdbcType时类型是列出的这些,并且必须是大写 BIT FLOAT CHAR TIMESTAMP OTHER UNDEFINED TINYINT REAL VARCHAR BINARY BLOB NVARCHA…
目录 情景分析 题目 要求 相关代码 Mapper.java Impl.java mapper.xml test.java 思路分析 1.最开始,参数没有使用List,引起的问题 2.Mybatis的foreach 3. npc != '' 4.其他 任务驱动才能明确方向.我举一个例子. 情景分析 题目 现在我们要执行查询操作,例如我要查询商品的供应商信息.供应商的信息包括公司名称,负责人名字,联系电话,公司地址等. 我也许会输入电话号码的前几位查询,也许会输入公司名称的某个字查询,也许会输出负…
MyBatis 的强大特性之一便是它的动态 SQL,本章介绍动态 SQL 查看本章,请先阅读[Mybatis]MyBatis对表执行CRUD操作(三). 本例表结构 CREATE TABLE `employee` ( `id` ) NOT NULL AUTO_INCREMENT, `last_name` ) DEFAULT NULL, `gender` ) DEFAULT NULL, `email` ) DEFAULT NULL PRIMARY KEY (`id`) ) ENGINE=InnoD…