
The implementation of BasicDynaBean and BasicDynaClass specifies the capacity of dynamic property to provide the set of properties dynamically. You can start with DynaClass to establish the set of properties. A newInstance() method will create a new DynaBean instances to DynaClass and occupy its initial values as shown in the below example.
The below example shows usage of basic DynaBean implementation:
package com.javadb.apachecommons;
import org.apache.commons.beanutils.BasicDynaClass;
import org.apache.commons.beanutils.DynaBean;
import org.apache.commons.beanutils.DynaClass;
import org.apache.commons.beanutils.DynaProperty;
public class DynaBeanExample {
private final String NR_OF_WHEELS = "numberOfWheels";
private void runExample() {
DynaClass dynaClass = new BasicDynaClass("Car", null,
new DynaProperty[] {
new DynaProperty(NR_OF_WHEELS, Integer.TYPE)
});
try {
DynaBean car = dynaClass.newInstance();
car.set(NR_OF_WHEELS, 4);
System.out.println("Number of wheels: " + car.get(NR_OF_WHEELS));
System.out.println("DynaBean is instance of DynaClass: " + car.getDynaClass().getName());
} catch (IllegalAccessException | InstantiationException ex) {
System.err.println(ex.getMessage());
}
}
public static void main(String[] args) {
DynaBeanExample ac = new DynaBeanExample();
ac.runExample();
}
}
Let's carry out the following steps to see how above code works:
Save the above first code as DynaBeanExample.java.
Now execute the code using Run option or Ctrl+f11 and output as below gets displayed.