Service的疑惑

08-06-16 mac5211258
         

今天写代码的时候,突然发现有一个service只是在传递action的调用到dao中,然后返回dao的执行结果到action中,其中service并没有其它业务逻辑。觉得这个service是不是冗余了?如果去掉该service,并不影响这个功能的实现,可是如果去掉了,它就破坏了代码的结构,编程action直接依赖dao了。《企业应用结构模式》中对service有这样的描述,系统一般有两种逻辑:领域逻辑和应用逻辑,service使用时机是在能够预见到第二个"客户"或有第二个事务性资源。可是现在这个service主要面对的是view层,也不曾涉及到第二个事务性资源,所以有些疑惑希望大家能帮助解答一下。

         

banq
2008-06-19 20:37

首先Action肯定不能直接调用DAO的,这样界面层和数据层耦合在一起,那不如用Delphi呢。

可以让Action通过Model再实现DAO,Service本来就是Model的控制器,如果你需要SOA架构,那么考虑用Service习惯,谁知道将来有没有拓展呢。

除非象我在下面一个案例中使用的观察者模式:

http://www.jdon.com/article/34173.html