【发布时间】:2021-10-24 16:06:34
【问题描述】:
我希望能够创建带有动态方法参数类型的 Jackson TypeReference,下面的示例使用反射 method.getParameterTypes()1。
由于 TypeReference 只接受编译类型参数,但我读到了所以你可以做一些技巧让它也适用于动态类型。
Method method = methodsMap.getOrDefault("createXXX".toLowerCase(), null);
if(method != null && myBean!= null){
Object retval = method.invoke(myBean, mapper.convertValue(product , new TypeReference<method.getParameterTypes()[0]>(){}));
}
其中 method.getParameterTypes()[0] 的类型为 java util generic list(类型擦除问题)
List<MyPojo>
【问题讨论】:
标签: java reflection jackson