[Javalist] Generikus típusok

Gábor Lipták gabor.liptak at gmail.com
2014. Már. 18., K, 17:40:17 CET


Asszem ez pont a te bajod:

http://stackoverflow.com/a/6852184/337621

Mariák Kálmán <sirkalmi at kalmiesemese.hu> írta (2014. március 18. 17:19):
> Sziasztok!
>
> Szoktam használni a generikus típusokat, de mikor valami komolyabbra akarom
> fogni, akkor mindig rájövök, hogy valójában nem értek semmit. :-)
>
> Van egy metódusom ami Jackson mappert alkalmaz és generikus típusokkal van
> kezelve:
>
> protected <T> T getObject(String path, Class<T> valueType) {
> T object = null;
> ...
> object = mapper.readValue(entity.getContent(), valueType);
>
> return object;
> }
>
> Szépen működik. Ugyanezt szeretném megvalósítani, de listánál:
>
> protected <T> List<T> getObjects(String path, Class<T> valueType) {
> List<T> list = null;
> ...
> list = mapper.readValue(entity.getContent(), new TypeReference<List<T>>()
> {});
>
> return list;
> }
>
> Nem működik, mert minden esetben LinkedHashMap-et állít elő, nem pedig a
> megadottat.
>
> Ha direkt kézzel beírom a kivánt típust, akkor működik:
>
> protected <T> List<T> getObjects(String path, Class<T> valueType) {
> List<T> list = null;
> ...
> list = mapper.readValue(entity.getContent(), new
> TypeReference<List<Category>>() {});
>
> return list;
> }
>
> Hogy szokás ezt megoldani?
>
> Köszi a válaszokat!
>
> Mariák Kálmán
> _______________________________________________
> Javalist mailing list
> Javalist at lists.javaforum.hu
> http://lists.javaforum.hu/mailman/listinfo/javalist


További információk a(z) Javalist levelezőlistáról