我正在做一个 GWT + Hibernate 项目。它涉及一个公司实体(因此也涉及一个表)。
UI 有一个列出所有公司的视图。用户可以通过该视图编辑现有公司。
我的问题是 - 如何合并修改后的数据?我应该修改现有的、检索到的公司实体对象,还是应该创建一个包含新数据的新实例?
前者将保存新实例的创建以及未修改数据的可能复制。但是,这意味着公开公司各个领域的二传手。这不利于降低可变性。
后一种选择将创建一个新实例,并且可能涉及复制未修改的数据。但是,它将使我免于暴露 setter,从而鼓励不变性。
推荐哪一个?
此外,延迟绑定/反射或序列化是否需要所有获取器/设置器都存在?在这种情况下,我的问题变得没有实际意义,因为无论如何我都必须提供它们。
编辑 - 我正在使用 GWT-RPC 与服务器通信。