jfinal 中注入服务的duang方法问题

codingjava 发布于 2016/02/16 17:07
阅读 2K+
收藏 1

我想问下,这种方式注入的话,其实跟用spring注入有什么区别

他是不是都是单例的 

感觉duang的方式对创建对象操作频繁,效率不会低吗?

而通过spring的方法就可以通过工厂模式,减少创建对象操作次数

不过问题是现在遇到问题,Controller层时候可以通过spring注入服务,不过在服务和服务层之间却注入不了服务,之可以通过duang方法注入服务对象,是不是jfinal对spring 的限制那?还是什么问题导致服务和服务层之间无法通过spring 注入?

文档中好像对使用 Duang、Enhancer 类可以对任意目标在任何地方增强,所以 JFinal 的 AOP 可以应用于非 web 项目这样描述的,所以不知道怎么更好使用jfinal框架的服务注入功能。

加载中
2
JFinal
JFinal

   Duang与Enhancer 一直就支持单例,例如:

// service1 与 service2 是同一个对象
Service service1 = Duang("key", Service.class);
service1.justDoIt();
Service service2 = Duang("key", Service.class);

   此外,如果Serivce 是无状态的,可以直接在 Serivce 中使用一个全局静态对象来实现:

public class Service {
  public static final Service me = new Service();

  @Before(Tx.class)
  public void justDoIt() {
    ...
  }
}



返回顶部
顶部