首页
App
&
Coffee
文档
项目
分享
反馈
俱乐部
登录
注册
死循环
jfinal初识
2020-07-22 18:14
private MapClassService ms = Aop.get(MapClassService.class);
这样使用,会造成死循环吗???现在项目启动不起来了,求解
项目:
JFinal
评论区
JFinal
2020-07-22 20:17
如果 MapClassService 内部本身有死循环就会死循环,例如你的 MapClassService 像下面这样来写就会有死循环:
public class MapClassService {
MapClassService me = new MapClassService();
...
}
上面的例子是极端情况,另一种情况是 A 里头 new B , B 里头 new A , 造成死循环
这种事情肯定是与 jfinal 无关的,jfinal 的 Aop.get(...) 支持循环注入,也就是 A 里头可以注入 B , B 里头可以注入 A, A 里头注入自己也是可以的,例如:
public class MapClassService {
@Inject
MapClassService me;
......
}
注意,这里说的是注入支持循环依赖,而最前面那个例子是 new 出对象,不支持循环依赖,这个是 java 语言决定的,jfinal 不管这事
回复
发送
我要反馈
热门反馈
扫码入社
public class MapClassService {
MapClassService me = new MapClassService();
...
}
上面的例子是极端情况,另一种情况是 A 里头 new B , B 里头 new A , 造成死循环
这种事情肯定是与 jfinal 无关的,jfinal 的 Aop.get(...) 支持循环注入,也就是 A 里头可以注入 B , B 里头可以注入 A, A 里头注入自己也是可以的,例如:
public class MapClassService {
@Inject
MapClassService me;
......
}
注意,这里说的是注入支持循环依赖,而最前面那个例子是 new 出对象,不支持循环依赖,这个是 java 语言决定的,jfinal 不管这事