java examples
Home Java Examples Resources Java Interview Questions
Brainpower SEO

How to set property value of a bean?

The Commons BeanUtils component provides a class called PropertyUtils that supplies method for manipulating a bean such as our Track class below. For this demo we use a Track class that have a property called id, title and duration.

To set the value of a bean we can use the PropertyUtils.setProperty() method. This method ask for the bean instance whos property value to be set, the property name and the value.

package com.javacoderanch.example.commons.beanutils;

import org.apache.commons.beanutils.PropertyUtils;

import java.lang.reflect.InvocationTargetException;

public class PropertySetExample {
    public static void main(String[] args) {
        Track track = new Track();

        try {
            PropertyUtils.setProperty(track, "id", Long.valueOf(10));
            PropertyUtils.setProperty(track, "title", "Hey Jude");
            PropertyUtils.setProperty(track, "duration", Integer.valueOf(180));
        } catch (IllegalAccessException e) {
            e.printStackTrace();
        } catch (InvocationTargetException e) {
            e.printStackTrace();
        } catch (NoSuchMethodException e) {
            e.printStackTrace();
        }

        System.out.println("Track = " + track);
    }
}

Some exceptions could be thrown by this method, so we need to handle the IllegalAccessException, InvocationAccessException and NoSuchMethodException. This could happen if we don't have access to the property, or the bean's accessor throws an exception or if the method we tried to manipulate doesn't exist.