1

最近我使用 Spring3.1 在事件驱动架构中升级了我的应用程序工作

我想知道你怎么看:

  1. 在每个需要在数据库中插入/更新/等记录的类中都有一个 DAO 实例。(常规方式)

  2. 我应该向 DAO 发送消息(通过 jms/channels/whatever),消息的内容将是我应该做什么的说明(在数据库中插入/更新/等记录)

2 号在松散耦合方式中的表现如何?

也许是矫枉过正?

欢迎此或任何其他建议或意见。

谢谢。射线。

4

1 回答 1

3

松散耦合并不意味着向您的应用程序“添加”更多具体层(消息队列等)。如果“服务”实现类通过接口与 DAO 层交互(想到 Spring DAO bean 注入是一个完美的用例),那么您几乎是在抽象级别进行操作。

如果您随后将具体的 DAO 类注入替换为将消息发布到另一个服务的消息传递客户端,那么您的代码将继续像以前一样运行,而无需进行重大更改。当然,阻塞/非阻塞方法之间总是存在脱节,但没有什么是好的抽象无法解决的。我的建议是研究像 Guice 这样的框架/库来创建应用程序的初始草案/重构,而不是添加新层。如果那时您觉得非阻塞 DB 调用是可行的方法,您可以轻松实现它们。把这个逻辑放在前面只会增加技术债务。

于 2012-10-24T14:37:20.287 回答