In Apache Commons Beanutils, you can compare the JavaBean objects by using the BeanComparator class based on a specified shared property value. This can be done by using the org.apache.commons.beanutils.BeanComparator comparator.
The below example shows how to compare the two different beans. We will be creating two objects and set the first object to "BMW" and the other object to "AUDI". Then, we will compare the objects by using the BeanComparator by calling its compare() method.
Note: For BeanComparator, commons-collection and commons-logging jar files need to be included.
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)); } }
Now we will create one more class with the below code and save it as 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; } }
Save the above first code as BeanComparatorExample.java.
Now execute the code using Run option or Ctrl+f11 and output as below gets displayed.