从上面异常的解释来看是因为反射不能将Orders设置到orderdetails属性上,仔细检查了MyBatis的配置文件,发现:
1 <collection property="orderdetails" javaType="com.luchao.mybatis.first.po.Orderdetail"> 2 <result column="id" property="id"/> 3 <result column="items_id" property="itemsId"/> 4 <result column="items_num" property="itemsNum"/> 5 <result column="orders_id" property="ordersId"/> 6 </collection>
上面的javaType属性的问题,因为这个是一对多,通过反射应该映射为List,但是使用javaType会让MyBatis认为orderdetails属性为Orderdetail,所以出错,将javaType改为ofType,只是指定泛型的类型为Orderdetail。