这是将api分发给不同用户的最佳方式?

时间:2011-09-17 09:19:19

标签: jar domain-driven-design distribution

我有一个像这样的典型课程:

public class A {
   void run();    //for all users
   void delete(); //for privileged users
}

我想将这些类作为单个jar分发给不同的用户,普通用户只能看到允许的方法而且看不到这些高权限(如delete()),我该如何实现呢? 顺便说一句,我是DDD的忠实粉丝,这意味着我不希望这些方法崩溃。

2 个答案:

答案 0 :(得分:2)

我最终得到了这个解决方案: 使用私有或包访问修饰符限制高权限方法访问,因此普通用户无法看到它们,特权用户通过反射访问这些方法。

public class A {
   public void run();    //for all users
   void delete(); //for privileged users
}

特权用户:     Reflections.invokeMethod(INS, “运行”);

答案 1 :(得分:0)

没有访问修饰符(public / protected / private ...),它将不可见