我想以与Hibernate Envers类似的方式坚持对我的bean所做的更改(但我无法使用Envers,因为我没有连接到JDBC后端)。所以,我想知道,在给定的bean类的两个实例之间,哪些属性具有不同的值。有没有办法知道两个bean之间哪些属性不同?
为了更加清楚,当给出bean A和B时,我想要一个方法...说... diff(A, B)
,它会输出一个链接属性到它们的旧/新值的列表(或映射) 。
喜欢的东西
<BeanClass> Collection<Field, Entry<Object, Object> diff(BeanClass a, BeanClass b)
是否有一个库做的是,在Java世界?
我认为这可以通过反射轻松完成。 – elias
你见过这个线程吗? http://stackoverflow.com/questions/578209/common-algorithm-for-generating-a-diff-of-the-fields-in-two-beans –