java - 创建发布-订阅模式以集成到 DAO 模式

标签 java design-patterns oop publish-subscribe

基于问题(How to create a client notification service for a webapp or should I use an Observer Pattern?)我想知道。

我有一个完全实现的 DAO,其中实体 bean 仅包含 getter 和 setters 方法。每个实体都映射到一个 EntityManager。

目前无法通知用户对持久存储(例如数据库)添加/删除/更新的任何更改。

我想知道,如何实现发布-订阅模式(也称为观察者模式),这样我就不必扩展当前的 DAO 架构。我不希望我的实体继承发布者,因为并非所有实体都可更新。

如果有任何工具/框架/库适合我的情况,请告诉我。另外,我根本没有使用任何持久化框架(Hibernate之类的框架),DAO管理器和Factory完全是我从头开始编写的。

问候,

最佳答案

我正在构建一个类似的概念...我不关心所有事件,在项目中我们想要关心不同的事件。因此,我们正在构建一种模式,其中所有 DAO 操作都提交到 DROOLS Fusion,并基于规则和一些时间推理,它通过通知架构通知监听器。根据您的需求,该架构可以是简单的监听器、JMS 或电子邮件……等等。如果您没有条件,只需关心 DAO 事件的回调,然后让您的 DAO 插入、更新、删除操作将对象提交给监听器或某种类型的 JMS 队列。

希望这是清楚的......

保罗

关于java - 创建发布-订阅模式以集成到 DAO 模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2087074/

相关文章:

java - 创建类的新实例的不同方法?

actionscript-3 - 私有(private)函数被继承

java - 如何对 apache-poi 中的sheet.getMergedRegions()的结果进行排序

java - elki 中具有稀疏 vector 的 kmeans

design-patterns - ServiceLocator 是反模式吗?

design-patterns - 设置 parent 的状态栏文本?

java - 缺少用于从 Java 启动 Selenium 服务器的 JAR

java - 我如何在 java 中以 UTF-8 编码字符串值?

spring-mvc - 请求 MVC 和组件 MVC 之间的区别

python - 用python写一个数据库类