Java BeanUtils - 比较 Bean



描述

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

示例

以下示例展示了如何比较两个不同的 bean。我们将创建两个对象,将第一个对象设置为“BMW”,将另一个对象设置为“AUDI”。然后,我们将通过调用 BeanComparatorcompare() 方法来使用 BeanComparator 比较这些对象。

注意:对于 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 执行代码,并显示如下所示的输出。

Comparing Beans
广告