解决mybatis resultMap根据type找不到对应的包问题

网友投稿 902 2022-12-15

解决mybatis resultMap根据type找不到对应的包问题

解决mybatis resultMap根据type找不到对应的包问题

目录mybatis resultMap根据type找不到对应的包mybatis resultMap根据type找不到对应的包这里需要配置typeAliasesPackage 自动配置别名typeAliasesPackage定义多个时,用逗号分隔加上配置后别名启用成功,程序正常运行resultmap和resulttype的一些使用误区直接来测试代码接下来我们来定义一个然后我们修改一下上面的配置接下来看一下他们之间的不同点

mybatis resultMap根据type找不到对应的包

mybatis resultMap根据type找不到对应的包

当将包名替换为全路径名时,程序又正常运行

这里需要配置typeAliasesPackage 自动配置别名

以下是项目中原有的别名扫描,但是我新建的mapper文件夹不在此路径下,没有别名设置所以报错。

typeAliasesPackage定义多个时,用逗号分隔

加上配置后别名启用成功,程序正常运行

resultmap和resulttype的一些使用误区

mybatis的映射配置文件中的两个返回值类型resultmap和resulttype;

直接来测试代码

select id,username,userpwd from t_users where id=#{id}

这是正确的,resulttype在这里是类的全类名,这样执行没有任何问题;

结果就是我们想要的。

接下来我们来定义一个

然后我们修改一下上面的配置

select id,username,userpwd from t_users where id=#{id}

我们把resulttype改成resultmap然后取了中的id;运行结果也是正常的;跟上面打印的是一样的;

接下来看一下他们之间的不同点

当看到这种错误的时候,就说明用的resulttype指定到中的id上去了;

select id,username,userpwd from t_users where id=#{id}

想让上面的配fivZwam置起作用该怎么改?那就是使用别名:在mybatis-config.xml中加入

这里的alias就是resulttype的值;以上只是我们书写时容易注意不到的部分。

注意:mybatis返回的类型:那一定是map类型了,就是键值对的形式返回数据;但是我们使用resulttype时,会把map中的值取出来赋值给对象的属性。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Spring AOP使用接口方式实现
下一篇:spring 重复注解和aop拦截的实现示例
相关文章

 发表评论

暂时没有评论,来抢沙发吧~