SOAP,RPC和项目间依赖项

时间:2011-01-31 17:06:14

标签: java soa rpc software-design project-structure

我对SOA的理解:企业中的各种系统都需要进行安全检查,因此使用相同的流程并因此具有SecurityCheck服务是有意义的。然后可以通过各种方式调用该服务 - soap,rpc,http request。

如果到目前为止这是有意义的,那么我的问题是关于服务和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项目?

1 个答案:

答案 0 :(得分:0)

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