关于java中交叉引用的思考

之前项目遇到过几次交叉引用的问题,成片的红线,十分壮观...

 比方说有三级  controller (c)  service (s) dao (d)

        A                   B    C

        a      b               c

正常情况:

  A中注入B,B中注入C; 

  a中注入b,中注入c;

出现问题的情况是: 

因为B中需要用到b中已实现的方法,将b注入B;

现b中又要用到B中已实现的方法,需要将B注入b.

此时便出现交叉引用;

查过一些资料,大概意思都是讲软件架构或者设计上避免.编码过程中如何避免呢?

今天刚想到一条解决要点:

  只能将 s 注入 c ,只能将d注入s;   // controller (c)  service (s) dao (d)

这样一来应该就能保证不交叉引用,但相对来讲,有的代码不能直接共用,需要重复实现.

个人拙见.

猜你喜欢

转载自www.cnblogs.com/zaak/p/9246416.html