public static Map extractToMap(final Collection collection, final String keyPropertyName, final String valuePropertyName) {
		Map map = new HashMap(collection.size());

		try {
			for (Object obj : collection) {
				map.put(PropertyUtils.getProperty(obj, keyPropertyName), PropertyUtils.getProperty(obj, valuePropertyName));
			}
		} catch (ReflectiveOperationException e) {
			throw new ReflectionRuntimeException(e);
		}

		return map;
	}
public static Map extractToMap ( final Collection collection , final String keyPropertyName , final String valuePropertyName ) { Map map = new HashMap ( collection . size ( ) ) ; try { for ( Object obj : collection ) { map . put ( PropertyUtils . getProperty ( obj , keyPropertyName ) , PropertyUtils . getProperty ( obj , valuePropertyName ) ) ; } } catch ( ReflectiveOperationException e ) { throw new ReflectionRuntimeException ( e ) ; } return map ; }
提取集合中的对象的两个属性（通过 Getter 方法），组合成 Map。

@param collection
来源集合
@param keyPropertyName
要提取为 Map 中的 Key 值的属性名
@param valuePropertyName
要提取为 Map 中的 Value 值的属性名
@return 属性集合