我有一个广泛使用编辑器框架的应用程序。现在我要添加一个新功能:如果用户编辑实体,我想记录所做的更改并将它们存储在单独的数据存储实体中。这需要知道字段是否已更改、字段名称以及更改为的值。
这就是我想要实现的:
- 应用调用edit(bean);
- 用户进行更改,调用 flush() 并将数据发送回服务器。
- 在服务器处理程序中,来自 bean 的更改被发送到
processChanges(List<String> paths)
该 bean,然后创建并存储“field foo”更改为“bar”的记录,依此类推。 - 实体被保存,覆盖现有实体。
我使用 GWTP,目前使用 RPC 命令模式。我已经阅读了一些关于 RequestFactory 的内容,据我所知,它的主要好处之一是它只将称为“deltas”的更改字段发送回服务器以最小化有效负载,所以我想知道使用 RequestFactory 是否会更适合我的应用程序?
道歉 - 我一直在阅读 GWT 文档和 Javadocs 以了解 Editor Framework 和 RequestFactory,但我仍然很困惑。RequestFactoryEditorDriver.getPaths()似乎它可能是我需要的,但非常感谢任何建议或指针。
我可能可以观察客户端的变化,但这似乎是个坏主意。