Java BeanUtils - 比较 Bean


描述

在 Apache Commons Beanutils 中,您可以使用基于指定共享属性值的BeanComparator类来比较 JavaBean 对象。这可以通过使用org.apache.commons.beanutils.BeanComparator比较器来完成。

例子

下面的示例显示了如何比较两种不同的 Bean。我们将创建两个对象,并将第一个对象设置为“BMW”,另一个对象设置为“AUDI”。然后,我们将通过调用BeanComparator的Compare()方法来比较对象。

注意:对于 BeanComparator,需要包含commons-collectioncommons-logging jar 文件。

package com.javadb.apachecommons.beanutils;
import org.apache.commons.beanutils.BeanComparator;

public class BeanComparatorExample {
    public static void main(String[] args) {
        Car car1 = new Car();
        car1.setBrand("BMW");
        
        Car car2 = new Car();
        car2.setBrand("AUDI");
        
        BeanComparator comparator = new BeanComparator("brand");
        
        System.out.println("The value after comparing two beans is: " + comparator.compare(car1, car2));
    }
}

现在我们将使用以下代码创建另一个类并将其保存为Car.java

package com.javadb.apachecommons.beanutils;

public class Car {
    private String brand;
	
    public String getBrand() {
        return brand;
    }
    
    public void setBrand(String brand) {
        this.brand = brand;
    }
}

输出

  • 将上面的第一段代码保存为 BeanComparatorExample.java。

  • 现在使用“运行”选项或 Ctrl+f11 执行代码,并显示如下输出。

比较 Bean