【发布时间】:2012-10-24 14:26:29
【问题描述】:
最近我使用 Spring3.1 在事件驱动架构中升级了我的应用程序工作
我想知道你是怎么想的:
在每个需要在数据库中插入/更新/等记录的类中都有一个 DAO 实例。(常规方式)
-
我是否应该向 DAO 发送消息(通过 jms/channels/whatever),消息的内容将是我应该做什么的说明(在 DB 中插入/更新/等记录)
李>
第 2 种方式在松散耦合方式中的表现如何?
也许是矫枉过正?
欢迎提出此或任何其他建议或意见。
谢谢。 射线。
【问题讨论】:
-
2 仅在确实需要拆分为单独的组件并且您有多个使用 DAO 模块的模块或出于性能原因(而不是不太可能的情况)。
-
当您说“您有多个使用 DAO 模块的模块”时。到模块您指的是我项目中的特定类或组件?因为我确实有几个类使用相同的 DAO。
-
模块是指一个单独的应用程序。您正在从 A 向 B 发送消息。如果 A 和 B 不是单独的应用程序,为什么要发送消息而不是方法调用?对于单个应用程序 DI 容器(Spring、Guice、CDI)中的松散耦合通常就足够了。您应该有一个非常具体的需求或用例来为问题中列出的任务使用消息。
标签: java spring events architecture jms