2013-07-02 3 views
3

Спринг BeanUtils.copyProperties() предоставляет возможность игнорировать определенные свойства при копировании бобов:BeanUtils copyProperties API игнорировать утратившие конкретные СВОЙСТВА

public static void copyProperties(Object source, 
       Object target, 
       String[] ignoreProperties) throws BeansException 

Предусматривает ли Apache Commons BeanUtils подобной функцию?

Также возможно игнорировать нулевые значения при использовании в Spring BeanUtils.copyProperties(), я вижу эту функцию с Commons BeanUtils:

Date defaultValue = null; 
DateConverter converter = new DateConverter(defaultValue); 
ConvertUtils.register(converter, Date.class); 

Могу ли я достичь того же с BeanUtils Спринга?

ответ

4

Если вы хотите игнорировать null -value вы должны сделать это с помощью следующей строки коды перед копированием свойств:

BeanUtilsBean.getInstance().getConvertUtils().register(false, false, 0); 
+0

Что делает этот сниппет? – kryger

+0

Кажется, что ConverterUtils не поддерживает такой метод регистрации (по крайней мере, версия 1.7.0) – HieuHT

+0

Нет ... это не работает, и этот ответ не содержит объяснений. –

1

В случае, если вы используете org.springframework.beans.BeanUtils вы можете игнорировать определенную с помощью Недвижимости Болгарии Недвижимости метода copyProperties(Object source, Object target, String... ignoreProperties) , Пример:

BeanUtils.copyProperties(sourceObj, targetObj, "aProperty", "another");