Supponiamo di avere tre classi.Spring @ReponseBody @RequestBody con classe astratta
public abstract class Animal {}
public class Cat extends Animal {}
public class Dog extends Animal {}
Posso fare qualcosa di simile?
ingresso: un JSON, che è cane o gatto
uscita: un cane/gatto dipende dal tipo di oggetto d'ingresso
Non capisco perché il seguente codice di lavoro pretende molto. O dovrei usare due metodi separati per gestire nuovi cani e gatti?
@RequestMapping(value = "/animal", method = RequestMethod.POST, produces = "application/json; charset=utf-8")
private @ResponseBody <T extends Animal>T insertAnimal(@RequestBody T animal) {
return animal;
}
Aggiornamento: SRY ho dimenticato di includere il messaggio di errore
stato HTTP 500 - Richiesta di trasformazione non è riuscita; l'eccezione annidata è java.lang.IllegalArgumentException: Tipo variabile 'T' non può essere risolto
Cosa intendi con "il codice non funziona". Errore di runtime? Errore del compilatore? Dov'è il registro degli errori? Devi aiutarci a capire il problema. Grazie. –