我有一个关于监听器和性能的问题。 例如: 我有5节课: + 添加附件监听器 + 优先级字段变化监听器 + 添加评论监听器 + 更改问题监听器的状态 + 更改受让人监听器 全类同学都会听
@EventListener
public void onIssueEvent(IssueEvent issueEvent) {
// Do some thing
}
我有两种方法来解决这个问题 选项1: 我注册了 5 个类,如下所示:
eventPublisher.register(AddAttachmentListener.class);
eventPublisher.register(PriorityFieldChangeListener.class);
eventPublisher.register(AddCommentListener.class);
eventPublisher.register(ChangeStatusOfIssueListener.class);
eventPublisher.register(ChangeAssigneeListener.class);
并在每个类函数中使用 onIssueEvent()
选项 2: 我只注册一门类(class):
eventPublisher.register(IssueEventListener.class);
在 onIssueEvent() 函数中,我将切换到每个事件。
但是,如果我注册 5 个类,它将使代码更干净且易于阅读。
那么,我可以选择哪个选项? 如果我使用选项1,会影响性能吗?
谢谢
最佳答案
好问题。同意5个单独的类会让更干净。但您只能根据您 future 的需求做出此决定。如果需要为事件添加更多事件的业务逻辑,则选择选项 1;如果有机会添加有限的事件或业务逻辑,则选择选项 2。
通过在选项 2 中添加干净且正确的注释,您还可以管理干净的编码。
对于大型应用程序选择选项 1,对于小型应用程序选择选项 2。某种微服务使应用程序变得干净且松散耦合。
关于java - 听众与表演,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56932895/