package com.alibaba.tamper; import java.util.Map; import com.alibaba.tamper.core.BeanMappingException; /** * Bean mapping处理的一些常用方法 * * @author jianghang 2011-5-27 下午12:27:12 */ public class BeanMappingUtil { /** * 根据定义的bean-mapping配置进行对象属性的mapping拷贝 * * @param src * @param target */ public static void mapping(Object src, Object target) throws BeanMappingException { BeanMapping mapping = BeanMapping.create(src.getClass(), target.getClass()); mapping.mapping(src, target); } /** * 对象属性的拷贝,与BeanUtils , BeanCopier功能类似 * * @param src * @param target */ public static void copy(Object src, Object target) throws BeanMappingException { BeanCopy copy = BeanCopy.create(src.getClass(), target.getClass()); copy.copy(src, target); } /** *将bean的属性转化为Map对象 * * @param src * @return * @throws BeanMappingException */ public static Map describe(Object src) throws BeanMappingException { BeanMap map = BeanMap.create(src.getClass()); return map.describe(src); } /** * 将map的属性映射到bean对象 * * @param target * @param properties * @throws BeanMappingException */ public static void populate(Object target, Map properties) throws BeanMappingException { BeanMap map = BeanMap.create(target.getClass()); map.populate(target, properties); } }