如何更改已部署应用程序中的依赖关系。因此,当应用程序启动时,它会通过电子邮件发送通知,但在某些时候,我们应该可以通过短信更改通知。更改运行弹簧应用程序中的依赖关系
如何在Spring Boot中做到这一点?
如何更改已部署应用程序中的依赖关系。因此,当应用程序启动时,它会通过电子邮件发送通知,但在某些时候,我们应该可以通过短信更改通知。更改运行弹簧应用程序中的依赖关系
如何在Spring Boot中做到这一点?
这就是一个策略模式工作,它没有任何与弹簧本身
你应该有2个战略之一的电子邮件和一个短信,在每个战略,你会自动连接所需的豆。
检查此链接战略实施
https://www.tutorialspoint.com/design_pattern/strategy_pattern.htm
您认为在运行时选择所需策略的最佳方法*?除了将两个策略注入容器并以声明方式选择所需的一个(通过简单的if/switch语句),是否有更好的选择? –
无论何时我们需要在运行时更改行为时都会使用策略,而此行为不能以分层方式呈现,您需要一个策略界面,并且使用策略的分配应该简单地使用条件 –
我不喜欢关于这一点,在大多数情况下,你只能使用两种策略而不使用策略。我想解决这个问题的一个选择就是明确地获取所需的bean。 –
你可以在一个单例的bean定义的属性?我们称它为notificationMethod并默认分配EMAIL。 (该属性可以是枚举或字符串或int无论)。 您需要一个控制器方法来更改属性。
@Autowired
private MyNotificationMethodHolderService service;
@RequestMapping(value = "/changeNotificationMethod")
@ResponseBody
public String change(@RequestParam("methodName") String methodName) {
service.setNotificationMethod (methodName);
}
您的通知服务检查属性并根据值发送通知(策略模式根据注释)。
如果您需要更改方法调用
<HOST>:<PORT>/context/changeNotificationMethod?methodName=SMS
这就是一个策略模式 –
@AmerQarabsa一个工作,你可以请给举例一些链接该怎么做?谢谢 – Romper