ssm之路(15)整合ssm+逆向工程开发注意事项(Result Maps collection already contains value for cn.itcast.ssm.mapper.It)

这里有个结合逆向工程来使用的坑

上一章中整合遇到问题,有个关于逆向工程的坑,这里需要说明一下:

因为我是通过mapper代理方式来整合的,所以当我再mapper里新建我要自定义的文件时,会造成无意不遵循规范的错误

我是通过mapper代理开发的方式来弄的,通过MapperScannerConfiguer来扫描mapper包下的映射文件,因此它必须遵循同包同名 的条件,但当我新建文件如下:itemsMapper,itemsMapper.xml是通过逆向工程引入的,itemsMapperCustom,itemsMapperCustom.xml是我自己建的,这样你就在无意中破坏了同包同名的规范,程序可能会判定ItemMapper和ItemMapperCustom.xml的名称不一样,而报错说:Result Maps collection already contains value for cn.itcast.ssm.mapper.ItemsMapper.BaseResultMap

//原因是在使用mybatis逆向工程生成代码的时候多次重复生成,导致配置配件多次重复积累,解决办法是把逆向工程里面的代码删除掉,然后再点击运行一次,刷新看到代码即可,然后再拷到新工程里面,这样在运行web项目就ok了

解决的办法是将目录换成mapper--items-(items.java,itemsMapper.xml),,,,,,itemsCustom--(itemsCustom.java,,itemsCustomMapper.xml)

最好的方式还是让二者分离:

在applicationContext-dao.xml中的sqlsessionFactory中加入resource资源目录下的扫描:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值