你将如何为Java应用程序实现插件系统?
是否有一个易于使用的(对于开发人员而言)系统可以实现以下目的:
首先,你需要一个所有插件都需要实现的接口,例如
public interface Plugin {
public void load(PluginConfiguration pluginConfiguration);
public void run();
public void unload();
public JComponent getConfigurationPage();
}
然后,插件作者应将其插件捆绑到JAR文件中。你的应用程序将打开JAR文件,然后可以使用JAR清单中的属性或JAR文件中所有文件的列表来查找实现你的Plugin接口的类。实例化该类,插件即可使用。
当然,你可能还希望实现某种沙箱操作,以使该插件在它可以做什么和不能做什么方面受到限制。我创建了一个小型测试应用程序(并向其发布了博客),该应用程序由两个插件组成,其中一个被拒绝访问本地资源。
问题内容: 我是NHibernate(和ORMS)的新手,并试图掌握它提供的各种选择。作为参考,我将Fluent NHibernate与单独的业务对象配合使用,而后者又将DTO纯粹用于数据访问。我的应用程序体系结构必须同时支持Windows和Web“前端”。 我的选择是一般方法之一,因为似乎有很多选择。我的DTO看起来像下面的示例。每个DTO都有对ISession的引用,该引用从BO传递给它们。他
问题内容: 我们的代码使用了许多系统属性,例如’java.io.tmpdir’,’user.home’,’user.name’等。我们在任何地方都没有为这些常量定义任何常量(我认为Java也没有)或处理它们的任何其他聪明的事情,因此它们在整个代码中都是乱七八糟的。 每个人如何使用系统属性? 问题答案: 我将把它当作您遍历整个代码的任何其他String常量,并为其定义一个常量变量。当然,在这种情况下
我更喜欢第一种方式,因为我认为在构建器中重复它们是多余的。第一种方法是否存在一些缺点? 提前谢谢,抱歉我的英语不好。
但它没有找到9461号的所有匹配项。有没有人可以建议一个更好的UNIX/Linux命令来实现这一点。 它获取的文件类型为:、、、等文件,但它无法获取文件
我是一个iOS开发人员,有一定的经验,这个问题对我来说真的很有趣。我看到了关于这个话题的很多不同的资源和材料,但尽管如此,我还是感到困惑。iOS联网应用的最佳架构是什么?我指的是基本的抽象框架,模式,它将适合每一个网络应用程序,无论是一个只有几个服务器请求的小应用程序,还是一个复杂的REST客户机。苹果建议将 作为所有iOS应用程序的基本架构方法,但无论是 还是更现代的 模式都没有说明将网络逻辑代
https://marketplace.visualstudio.com/#VSCode Node.js插件支持 https://github.com/SamVerschueren/vscode-ava