bean 和 Map 的相互转换(Mybatis 拦截器分页--将Object的参数对象封装到Pager 的params 中)

1 apache 的beanUtils 工具类,只能将Bean 转换成 Map<String,String>类型,不能转换成 Map<String,Object>

2 借助工具类DozerBeanMapper
  需要引入的jar 有dozer.jar 
  此外还包含:slf4j.jar,commons-lang.jar,commons-beanutil.jar, commons-loggin.jar

3 写自定义工具类

import org.dozer.DozerBeanMapper;

/**
* 类描述: bean map 转换类
* @version 1.0 CreateDate: 2015-2-10
*
* @history:
* @updateDate @updatePerson @declare
*
*/
public class BeanMapper {

private static DozerBeanMapper dozer = new DozerBeanMapper();

/**
* 方法描述:map 转 bean
* @param <T>
* @param map
* @param destinationClass
* @return
*/
public static <T> T mapToBean(Map<String,?> map, Class<T> destinationClass) {
  return dozer.map(map, destinationClass);
}

/**
* 方法描述:bean 转map
* @param source
* @return
*/
public static Map<String,Object> beanToMap(Object source) {
  HashMap<String,Object> map = new HashMap<String,Object>();
  dozer.map(source, map);
  return map;
}

}

原文地址:https://www.cnblogs.com/leonkobe/p/4283664.html