java bean 和map相互转换

引用maven

     
            com.fasterxml.jackson.core
            jackson-databind
            2.13.0
        

代码

import com.fasterxml.jackson.databind.ObjectMapper;

import java.util.HashMap;
import java.util.Map;

public class BeanMapConvert {
    /**
     * 将bean 转换成map
     *
     * @param bean        bean对象
     * @param toValueType 将要转换的目标map的 value字段类型
     * @param          bean类型
     * @param          将要转换的目标map的 value字段类型
     * @return
     */
    public static  Map beanToMap(T bean, Class toValueType) {
        Map map = new HashMap<>();
        try {
            ObjectMapper mapper = new ObjectMapper();

            map = mapper.convertValue(bean, Map.class);

        } catch (Exception e) {
            e.printStackTrace();
        }
        return map;
    }

    /**
     * 将map转换成bean对象
     *
     * @param map         map
     * @param toValueType 将要转换的目标bean对象类型
     * @param          将要转换的目标bean对象类型
     * @param          源map的value字段类型
     * @return
     */
    public static  T mapToBean(Map map, Class toValueType) {
        T t = null;
        try {
            ObjectMapper mapper = new ObjectMapper();

            t = mapper.convertValue(map, toValueType);

        } catch (Exception e) {
            e.printStackTrace();
        }
        return t;
    }
}

使用

 public static void main(String[] args) {

        try {

            MyEntity myEntity = new MyEntity();
            myEntity.setCode("xxx");
            myEntity.setName("yyyy");
            Map map = BeanMapConvert.beanToMap(myEntity,String.class);
            System.out.println(JSON.toJSONString(map));
            MyEntity myEntity2 = BeanMapConvert.mapToBean(map, MyEntity.class);
            System.out.println(JSON.toJSONString(myEntity2));
        } catch (Exception ex) {
            System.out.println(ExceptionUtil.getERROR(ex));
        }
        System.out.println("结束----");
    }

你可能感兴趣的:(java,mybatis,开发语言)