美文网首页
2020-03-18记一次框架整合早不到dao的问题

2020-03-18记一次框架整合早不到dao的问题

作者: 夜色001 | 来源:发表于2020-03-18 14:57 被阅读0次

有一个新项目,在搭建框架的时候,因为以前有过项目模板,主体采用以前的项目模板,由于新项目需要做控制到按钮层的权限控制,于是想使用人人框架,但是又不能照搬。只需要把其中的shiro部分(包含了用户、角色、权限、登录控制)包含进来。我的思路是找到对应的配置代码、service、dao、entitiy、common包等,并引入合适的依赖,自然就包含进来了,很简单的一件事情。但是当我把这些引入进来之后,项目一直启动不来。并报如下错误:

Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [....sys.dao.SysMenuDao]: Specified class is an interface

开始分析以为是新引入的dao在新的目录,可能系统没扫描到,但配置文件也加入了对应包的扫描。
单独启动原框架和renren-fast有没有问题,也考虑了是否有依赖缺失,把所有依赖引入后依然有问题。陷入僵局。时间一点点流逝,有些慌。
后来一点一点的引入文件,从一个dao,两个dao,再到一个service,两个service,一路下去,最后发现加入SysMenuDao后不行了,经检查它和其他的dao没什么两样,世上没有这么奇怪的事情。
于是查找SysMenuDao文件,发现原来系统里已经存在一个SysMenuDao,在另外一个路径。

问题原因找到:存在多个bean,名称一样,造成初始化失败。再检查了一下,系统其它文件,发现还有类似的sysuser等等,因这类名字很容易起重复,特别是两个不同的框架里。所以在整合的时候,一定要注意这易重名bean。

相关文章

网友评论

      本文标题:2020-03-18记一次框架整合早不到dao的问题

      本文链接:https://www.haomeiwen.com/subject/ehaqyhtx.html