天青色等烟雨*^_^* 2023-06-24 22:31 采纳率: 40%
浏览 34

使用mybatis-plus遇到循环依赖,与不能插入id为null问题

Q1:在用mybatis-plus发现问题,我两个service这里就用A,B代替,这两个都继承IService,然后都有各自实现类,最后在同一个Controller中引用,会出现循环依赖吗?
关系如图

img

Q2:还有为什么在实体类中指定了id为雪花算法,然后在手写xml中写sql时却说id不能插入为null,这是因为雪花算法只能提供给其自带方法使用吗?要在手写xml中使用,如何使用呢

  • 写回答

2条回答 默认 最新

  • 竹山全栈 2023-06-25 00:43
    关注

    如果A和B都继承自IService,并且它们各自有不同的实现类,那么在同一个Controller中引用A和B不会出现循环依赖问题。
    循环依赖问题通常发生在两个或多个组件相互依赖的情况下。如果服务A依赖B,而服务B又依赖A,那么就会产生循环依赖问题,编译都通不过的
    如果你的情况是A和B分别有自己独立的实现类,那么它们之间是不存在直接依赖关系的,因此不会出现循环依赖问题。不过,如果A的实现类依赖了B的实现类,或者B的实现类依赖了A的实现类,那么就有可能出现循环依赖问题,需要注意。

    评论

报告相同问题?

问题事件

  • 创建了问题 6月24日