0

我对 SOA 的理解:业务中的各种系统都需要做安全检查,所以使用相同的流程并因此拥有 SecurityCheck 服务是有意义的。然后可以通过多种方式调用该服务——soap、rpc、http 请求。

如果到目前为止这是有道理的,那么我的问题是关于服务和 rpc 客户端之间的依赖关系:

public interface SecurityCheckService {
    public SecurityCheckResults check(String name);
}

public class SecurityCheckResults {
    private Date instant;
    private int score;
    //getter & setters
}

public class RpcClient {
    private SecurityCheckService remoteService;

    public boolean check(int personId) {
        String name = "Person" + personId;
        int score = remoteService.check(name).getScore();
        return score > 10;
    }
}

应该有3个单独的项目,SecurityCheckService项目和RpcClient项目依赖于SecurityCheckResults项目吗?

4

1 回答 1

0

在我看来,您应该创建 2 个项目:一个SecurityCheckServiceRpcClient. SecurityCheckResults是唯一用于返回结果的类(与 int、double 或 smth else 相同)。SecurityCheckResults在您的代码中不是很大的类,因此您可以将它与SecurityCheckService服务存根一起提供给客户。

于 2011-01-31T18:59:06.343 回答