将JSONObject转化为Javabean对象

可以定义一个方法
/**
     * 将map转换成Javabean
     *
     * @param javabean javaBean
     * @param data     map数据
     */
    public static AccountUser toJavaBean(AccountUser javabean, JSONObject data) {
        Method[] methods = javabean.getClass().getDeclaredMethods();
        for (Method method : methods) {
            try {
                if (method.getName().startsWith("set")) {
                    String field = method.getName(); //set()
                    field = field.substring(field.indexOf("set") + 3);//
                    field = field.toLowerCase().charAt(0) + field.substring(1);//
                    method.invoke(javabean, new Object[]
                            {
                                    data.get(field)
                            });
                }
            } catch (Exception e) {
                e.printStackTrace();
            }
        }

        return javabean;
    }

利用反射实现。

但是在为服务中,建议使用@FeignClient来直接获取指定对象,不通过强转或多一步转换操作。

猜你喜欢

转载自blog.csdn.net/qq_34638435/article/details/80590801