4

我在我的 Java Web 应用程序(JSF1.2,RichFaces)中创建了一些“保存”bean 功能。它使用 JAXB 将其转换为 XML 字符串,然后将其存储在数据库中。如果用户将其加载回来,我想通知用户(bean)内容是否已更改并且应该再次保存。

我的想法是覆盖hashCode()函数 'with' org.apache.commons.lang.builder.HashCodeBuilder,但是我有很多字段和子元素。有没有其他方法来处理这种功能?

编辑

“比较”是在另一种观点上进行的!

任何帮助,将不胜感激!

4

3 回答 3

5

boolean dirty;您可以向 bean添加一个标志,true在您的设置器中将其设置为,并在重新加载和保存后清除它。

于 2010-02-27T08:57:36.900 回答
1

您不能hashCode单独依靠来确定对象是否已更改。也就是说,仅仅因为对象与hashCode以前相同,并不意味着它没有被改变。

于 2010-02-27T12:50:21.783 回答
-1

您可以使用 Java 的 MD5 功能:

MessageDigest digest = java.security.MessageDigest.getInstance("MD5");
digest.update(myObject);
byte[] hash = digest.digest();
于 2013-02-27T15:36:05.467 回答