1

在我的脑海中,我正在考虑将我的服务器端任务编写为一项大服务,并在该服务中注入所有 dao 对象 - 如下所示:

public class MyServiceImpl extends RemoteServiceServlet implements MyService {
@Inject 
MyDAO1 myDAO1;
@Inject 
MyDAO2 myDAO2;
@Inject 
MyDAO3 myDAO3;

...
//20  methods
//
}

一项大服务是要走的路,还是有其他更好的模式?

4

1 回答 1

0

您应该为每个任务“域”构建服务。例如,用于用户管理的服务,其方法允许注册新用户、发送恢复密码电子邮件、暂时禁用用户、获取当前启用的用户列表等。

我建议您查看 Martin Fowler Patterns of Enterprise Application Architecture( http://martinfowler.com/books/eaa.html ) 中描述的 ServiceLayer 模式。

服务层从连接客户端层的角度定义了应用程序的边界 [Cockburn PloP] 及其可用操作集。它封装了应用程序的业务逻辑,控制事务并在其操作的实现中协调响应(http://martinfowler.com/eaaCatalog/serviceLayer.html

于 2013-11-27T20:35:02.667 回答