와 잭슨 직렬화에 대한 기본 생성자 나는 이런 ArrayList의 자녀가 : 나는 그것을 (이전 버전과의 호환성)를 사용할 수밖에 없다바이 패스 봄
public class SomeList<T> extends ArrayList<T> {
private Class<T> clazz;
public SomeList(Class<T> clazz) {
this.clazz = clazz;
}
public boolean add(T t) {
return t != null ? super.add(t) : false;
}
public Class getGenericClass() {
return this.clazz;
}
}
을, 나는 그것을 수정할 수 없습니다 나는 역 직렬화 할 필요가 그것은 봄 컨트롤러, 예에 :
@RequestMapping(value = "/somethingHappens", method = {RequestMethod.POST})
@ResponseBody
public ServiceResult somethingHappens(@RequestBody SomeList<SomeObject> someObjects) {
return ResponseUtils.createOkJsonResponse(someService.getSomethingElse(someObjects));
}
난, 난 그냥,이 ArrayList를했다으로이 같은 방법을 SomeList 직렬화하는 clazz에가도 받았습니다도 직렬화 할 필요가 없습니다하지만이에 수 없습니다 왜냐하면 기본 생성자가 없기 때문입니다.
어떻게 든 MixIn을 사용할 수 있습니까? 사용자 정의 디시리얼라이저를 사용하여 "어떻게 ArrayList와 똑같이 할 수 있습니까?"라고 말할 수 있습니까?
가능한 해결책 여기 https://stackoverflow.com/questions/11664894/jackson-deserialize-using-generic-class – Kayaman