在做较大项目的时候,业务层之间互相调用,会声明一些全局的业务对象
例在StudentBLL类中声明TeacherBLL teacherBll = new TeacherBLL();
在TeacherBLL类中声明StudentBLL studentBll = new StudentBLL();
会造成死循环,没办法,只能在外面建立一个创建所有对象的类来管理这些对象
感觉还是不太好,大家有没有好的建议???

解决方案 »

  1.   

    BLL是一个类库的概念,不是业务对象。不用过多考虑什么new操作,更不需要动不动就new一个出来。
      

  2.   

    就算是以基于对象方式来编程序(比如你对工厂类的设计方法情有独钟),那么显然是在你的应用程序启动时去创建几个static的实例,也是最清晰和相当简单的设计。软件应该尽量做最简单设计,只有遇到了问题时才应该重构。不要一开始在没有什么需求时就搞“技术化”的设计。
      

  3.   

    你要么可以先定义,然后在调用
    TeacherBLL teacherBll;
    teacherBll= new TeacherBLL();
      

  4.   

    3楼的应该是大师级的了,也经常看到你给别人的回复,技术应该相当不错,我也试过用static去做,但是还会出现另外的问题,同时多开几个页面访问,就会报错了。
      

  5.   

    2楼的朋友,在StudentBLL类中声明TeacherBLL teacherBll = new TeacherBLL();
    在TeacherBLL类中声明StudentBLL studentBll = new StudentBLL();
    把这两个声明放到全局变量,运行一下,就知道会不会死循环,但我记得好像java中不会循环???