1

如何获取方法返回值像List、Map中的泛型类型?

    Type type = method.getGenericReturnType();//返回参数带泛型
    if (type instanceof ParameterizedType) { //判断是不是参数化类型
        ParameterizedType pType = (ParameterizedType) type;
        Type[] types = pType.getActualTypeArguments();
    }

java 通过反射填充属性

    public static  <T> T attributeFill(Class<T> tClass, Map<String, String> attribute) throws Exception {

        T targetObj = tClass.newInstance();
        for (Map.Entry<String, String> entry : attribute.entrySet()) {
            String filedName = entry.getKey();
            String filedValue = entry.getValue();
            filedValue = entry.getKey();
            //filedName 字段名必须要和tClass中的字段名一致
            PropertyDescriptor pd = new PropertyDescriptor(filedName, tClass);
            Method writeMethod = pd.getWriteMethod();
            writeMethod.invoke(targetObj, filedValue);
        }
        return targetObj;
    }

SanPiBrother
24 声望3 粉丝

菜鸡的救赎之路