关于映射语句集合不包含com.itheima.ssm.IMemberDao.findById的值的异常

异常中文翻译如下:

查询数据库时出错。原因:. lang。映射语句集合不包含com.itheima.ssm.IMemberDao.findById的值

这个错误可能存在于com/itheima/ssm/dao/ITravellerDao中。java(猜测)

这个错误可能涉及com.itheima.ssm.dao.ITravellerDao.findByOrdersId

在处理结果时发生错误

### SQL: select * from Traveller where id in(从order_traveller中选择travellerId where orderId=?)

# # #原因:. lang。IllegalArgumentException:映射语句集合不包含com.itheima.ssm.IMemberDao的值。带有根本原因的findById]

. lang。映射语句集合不包含com.itheima.ssm.IMemberDao.findById的值

org.apache.ibatis.session.Configuration StrictMap.get美元(Configuration.java:888)

org.apache.ibatis.session.Configuration.getMappedStatement(Configuration.java:721)

org.apache.ibatis.session.Configuration.getMappedStatement(Configuration.java:714)


代码如下:

@Select("select * from orders where id=#{id}")@Results({        @Result(id=true,column = "id",property = "id"),        @Result(property = "orderNum",column = "orderNum"),        @Result(property = "orderTime",column = "orderTime"),        @Result(column = "orderStatus",property = "orderStatus"),        @Result(column = "peopleCount",property = "peopleCount"),        @Result(column = "payType",property = "payType"),        @Result(column = "orderDesc",property = "orderDesc"),        @Result(column = "productId",property ="product",javaType = Product.class,                 one = @One(select =  "com.itheima.ssm.dao.IProductDao.findById")),        @Result(column = "id",property = "travellers",javaType = java.util.List.class,                many = @Many(select = "com.itheima.ssm.dao.ITravellerDao.findByOrdersId")),        @Result(column ="memberId",property = "member",javaType = Member.class,                [email protected](select="com.itheima.ssm.IMemberDao.findById"))

})          Orders findById(String id);

}

这个异常是我用映射做表查询的时候遇到的,表与表关系是多对多关系,上面英文说的大概就是映射语句不包含某个方法的值,其实这个异常很简单,,出错的原因就是上面倒数第二行代码中select指定的方法少写了一个包名称,导致Mybatis映射不到

IMemberDao接口中我要执行的方法,所以才会报这个错误,很低级的一个错误,但是对于我这个新手来说在这么多代码中找这个异常还是花了不少时间.发出来帮助比我还马虎的网友...


原文地址:https://www.cnblogs.com/zhangxiaozhen/p/9819939.html

时间: 2024-10-03 06:41:44

关于映射语句集合不包含com.itheima.ssm.IMemberDao.findById的值的异常的相关文章

【Oracle】常用语句集合

1 oracle常用经典SQL查询 2 常用SQL查询: 3 4 1.查看表空间的名称及大小 5 6 select t.tablespace_name, round(sum(bytes/(1024*1024)),0) ts_size 7 from dba_tablespaces t, dba_data_files d 8 where t.tablespace_name = d.tablespace_name 9 group by t.tablespace_name; 10 11 2.查看表空间物

《Python核心编程》 第七章 映射和集合类型 - 习题

课后习题 7–1. 字典方法.哪个字典方法可以用来把两个字典合并到一起? 答: dict1 = {'1' :' python' } dict2 = {'2' :"hello" } dict1.update(dict2) dictAll = dict1 print dictAll Result: {'1': ' python', '2': 'hello'} 7–2. 字典的键.我们知道字典的值可以是任意的 Python 对象,那字典的键又如何呢?请试 着将除数字和字符串以外的其他不同类型

Python基础语法—字符串&语句&集合

Python字符串 Python中不支持char单字符类型,单字符在Python中也是一个字符串 Python字符串更新 更新Python字符串方法 1234 var1 = 'Hello World!'print "Updated String :- ", var1[:6] + 'Python' 实际执行效果为 Updated String :- Hello Python Python转义字符 Python字符串运算符 Python字符串格式化 Python三引号(triple quo

Python核心编程读笔 5: 映射和集合类型

第七章 映射和集合能力 一 字典(python中唯一的映射类型) 1 基本 创建和赋值: 正常创建:>>>dict = {'name':'earth', 'port':80} 用工厂函数dict()创建: >>> fdict = dict((['x', 1], ['y', 2])) >>> fdict {'y': 2, 'x': 1} 使用fromkeys()创建一个默认字典: >>> ddict = {}.fromkeys(('x'

SQL常用语句集合(不断更新)

1.多条件 查询 上下级 所有数据 select * from OrgUnit where (ParentId = '3' or OrgId='3' or ParentId in (select OrgId from OrgUnit where ParentId='3')) 2.相同列数的 多个查询结果 组合(union all) select a,b,c from table1 union all select ca,cb,cc from table2 3.左外连接 与 右外连接 (left

hibernate 映射关系—集合映射

1.集合映射简介 当持久化类中有一个值类型的集合,那么就需要一张额外的数据库表来保存这个值类型集合的数据,这张表被称为集合表.比如有一张学生表,学生可能有很多爱好,就需要一种学生爱好集合表来存储学生的爱好信息. Hibernate支持大部分重要的JDK集合接口映射,主要有以下几种. 1. set 可以映射类型为java.util.Set接口的属性,它的元素存放没有顺序且不允许重复:也可映射类型为java.util.SortSet接口的属性.它的元素可以按自然顺序排列. 2. list 可以映射类

hibernate5(15)注解映射[7]集合关联

集合注解映射 集合关系映射可以看成是一对多关系映射的一种简化,在一个电商系统里,出售的产品可能会有多张展示图片,如果我们使用一对多来建立关联映射时,需要创建一个实体类Images,里面可能有属性:图片在服务器的访问路径url和图片所属产品productId.但如果我们使用集合关系映射,则无需新建一个实体类,只需在Product中定义一个集合成员属性即可. Set集合 在产品中,我们的图片路径一般是不会相同的,我们可以使用Set集合来建立映射 我们下面来看这一需求的配置示例: @Entity @T

映射语句之INSERT语句

1.一个 INSERT SQL 语句可以在<insert>元素在映射器 XML 配置文件中配置 例子: <insert id="insertStudentWithId" parameterType="Student">         INSERT INTO Student(id,name,sex,birthday,height,weight,score,address,email,hobby) values         (#{id},#

Drools规则引擎-如果判断某个对象中的集合是否包含指定的值

规则引擎集合相关处理 在实际生产过程中,有很多关于集合的处理场景,比如一个Fact对象中包含有一个集合,而需要判断该集合是否包含某个值.而Drools规则引擎也提供了多种处理方式,比如通过from.contains.exists等进行操作,比较. 当然也可以通过function函数来做相应的比较,在个在其他章节讲到过,就不在此赘述.下面重点以几个实例才进行讲解,在具体实践中根据具体情况来进行运用. 实例 省略掉基本的配置,直接看调用代码和规则代码. 测试调用代码: public class Co