假设 Web 应用程序是一个中央支付处理引擎,其中每个用户可能有不同的信用卡提供商来处理信用卡。
有一个所有实现都遵循的接口。
我想知道是否存在一种模式,您可以允许将新实现简单地放入部署文件夹(.jar 文件)中,而无需重新编译应用程序。最多您必须进入管理部分并输入有关新信用卡实施的一些详细信息。
示例:假设应用程序当前支持 Authorize.net。所以所有用户都在使用authorize.net。现在我编写了一个新实现并删除了 .jar 文件,进入管理员并注册新的信用卡提供商。
现在用户可以登录系统,并选择使用新的实现。
这可能不需要重新编译吗?spring 的 DI 会为此派上用场吗?