当前位置: 首页>>代码示例>>Java>>正文


Java BeanWrapper.setAutoGrowNestedPaths方法代码示例

本文整理汇总了Java中org.springframework.beans.BeanWrapper.setAutoGrowNestedPaths方法的典型用法代码示例。如果您正苦于以下问题:Java BeanWrapper.setAutoGrowNestedPaths方法的具体用法?Java BeanWrapper.setAutoGrowNestedPaths怎么用?Java BeanWrapper.setAutoGrowNestedPaths使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.springframework.beans.BeanWrapper的用法示例。


在下文中一共展示了BeanWrapper.setAutoGrowNestedPaths方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: applyMapOntoInstance

import org.springframework.beans.BeanWrapper; //导入方法依赖的package包/类
/**
 * Injects the properties from the given Map to the given object. Additionally, a bean factory can be passed in for
 * copying property editors inside the injector.
 * 
 * @param instance bean instance to configure
 * @param properties
 * @param beanFactory
 */
public static void applyMapOntoInstance(Object instance, Map<String, ?> properties, AbstractBeanFactory beanFactory) {
	if (properties != null && !properties.isEmpty()) {
		BeanWrapper beanWrapper = PropertyAccessorFactory.forBeanPropertyAccess(instance);
		beanWrapper.setAutoGrowNestedPaths(true);

		// configure bean wrapper (using method from Spring 2.5.6)
		if (beanFactory != null) {
			beanFactory.copyRegisteredEditorsTo(beanWrapper);
		}
		for (Iterator<?> iterator = properties.entrySet().iterator(); iterator.hasNext();) {
			Map.Entry<String, ?> entry = (Map.Entry<String, ?>) iterator.next();
			String propertyName = entry.getKey();
			if (beanWrapper.isWritableProperty(propertyName)) {
				beanWrapper.setPropertyValue(propertyName, entry.getValue());
			}
		}
	}
}
 
开发者ID:eclipse,项目名称:gemini.blueprint,代码行数:27,代码来源:CMUtils.java

示例2: modifyProperties

import org.springframework.beans.BeanWrapper; //导入方法依赖的package包/类
/**
 * Modify the property values so that period separated property paths are valid for
 * map keys. Also creates new maps for properties of map type that are null (assuming
 * all maps are potentially nested). The standard bracket {@code[...]} dereferencing
 * is also accepted.
 * @param propertyValues the property values
 * @param target the target object
 * @return modified property values
 */
private MutablePropertyValues modifyProperties(MutablePropertyValues propertyValues,
		Object target) {
	propertyValues = getPropertyValuesForNamePrefix(propertyValues);
	if (target instanceof MapHolder) {
		propertyValues = addMapPrefix(propertyValues);
	}
	BeanWrapper wrapper = new BeanWrapperImpl(target);
	wrapper.setConversionService(
			new RelaxedConversionService(getConversionService()));
	wrapper.setAutoGrowNestedPaths(true);
	List<PropertyValue> sortedValues = new ArrayList<PropertyValue>();
	Set<String> modifiedNames = new HashSet<String>();
	List<String> sortedNames = getSortedPropertyNames(propertyValues);
	for (String name : sortedNames) {
		PropertyValue propertyValue = propertyValues.getPropertyValue(name);
		PropertyValue modifiedProperty = modifyProperty(wrapper, propertyValue);
		if (modifiedNames.add(modifiedProperty.getName())) {
			sortedValues.add(modifiedProperty);
		}
	}
	return new MutablePropertyValues(sortedValues);
}
 
开发者ID:vikrammane23,项目名称:https-github.com-g0t4-jenkins2-course-spring-boot,代码行数:32,代码来源:RelaxedDataBinder.java


注:本文中的org.springframework.beans.BeanWrapper.setAutoGrowNestedPaths方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。