java—软件产品中用户退出的设计考虑

xhv8bpkk  于 2021-06-30  发布在  Java
关注(0)|答案(2)|浏览(221)

我们开发产品,这些产品的业务逻辑实现为ejb。其思想是提供一个用户出口(用户可以覆盖默认行为的扩展点)。这应该是产品开发中的一个常见问题,但我没有看到任何设计模式或抽象机制支持重写用java编写的业务逻辑。
用户出口可以是重写的bean类或groovy脚本。在开发产品时,是否有任何设计模式或设计考虑因素可以使用一些java类或脚本覆盖ejb?
使用aspectj动态地决定是应该使用默认实现还是应该使用特定于用户的实现(重写的用户出口代码)中的方法,可以做些什么吗?

ckx4rj1h

ckx4rj1h1#

面向方面编程是一种可行的方法。aop使用Spring3或普通的aspectj使用户能够覆盖现有的特性。
有关更多信息,请参阅操作手册中的aspectj。
希望它对某人有用。

qrjkbowd

qrjkbowd2#

基于您的评论,我推荐策略模式来实现可插入逻辑算法。
然后使用像spring这样的ioc容器将类连接到适当的位置。
如果需要,允许用户/客户机使用自己的配置覆盖此配置。因此任何感兴趣的人都可以简单地实现您的接口并重写配置,以便应用程序使用这些数据。
ejb本身现在有依赖注入,所以您可能也需要研究它。如果这些规定足够的话,你可能根本不需要spring来连接你的应用程序。不幸的是,我不太熟悉他们知道如果定制配置是可能的。

相关问题