Figyelmeztetés: „A WebMvcConfigurerAdapter típus elavult”
1. Bemutatkozás
Ebben a gyors bemutatóban megnézzük az egyik figyelmeztetést, amelyet a Spring 5.x.x verzió használatakor láthatunk, nevezetesen az elavulttá WebMvcConfigurerAdapter osztály.
Meglátjuk, miért történik ez a figyelmeztetés és hogyan kell kezelni.
2. Miért van jelen a figyelmeztetés?
Ez a figyelmeztetés jelenik meg, ha az 5-ös tavaszi verziót (vagy a Spring Boot 2-et) használjuk, akár meglévő alkalmazás frissítésekor, akár új alkalmazás építésénél a régi API-val.
Nézzük át röviden a mögötte álló történelmet.
A Spring korábbi verzióiban, egészen a 4-es verzióig, ha webalkalmazást szeretnénk konfigurálni, használhatjuk a WebMvcConfigurerAdapter osztály:
@Configuration public WebConfig kiterjeszti a WebMvcConfigurerAdapter {// ...}
Ez egy elvont osztály, amely végrehajtja a WebMvcConfigurer felületet tartalmaz, és az összes örökölt módszer üres megvalósítását tartalmazza.
Alosztályozásával felülírhatjuk a módszereit, amelyek horgokat adnak az MVC különböző konfigurációs elemeihez, például nézetfeloldókhoz, elfogókhoz és még sok máshoz.
A Java 8 azonban felvette az alapértelmezett módszerek fogalmát az interfészekben. Természetesen a tavaszi csapat frissítette a keretrendszert, hogy teljes mértékben kihasználja az új Java nyelvi szolgáltatásokat.
3. Megoldás
Mint említettük, a WebMvcConfigurer Az interfész az 5. tavasztól kezdve alapértelmezett megvalósításokat tartalmaz az összes módszeréhez. Ennek eredményeként az absztrakt adapterosztályt elavultként jelölték meg.
Lássuk, hogyan elkezdhetjük az interfész közvetlen használatát és megszabadulhatunk a figyelmeztetéstől:
@Configuration public WebConfig valósítja meg a WebMvcConfigurer {// ...}
És ennyi! A változtatásnak meglehetősen könnyűnek kell lennie.
Ha vannak ilyenek szuper() felülbírált módszerek felhívása, ezeket is el kell távolítanunk. Ellenkező esetben a szokásos módon felülírhatjuk a konfigurációs visszahívásokat.
Bár a figyelmeztetés eltávolítása nem kötelező, ajánlott ezt megtenni, mivel az új API kényelmesebb, és az elavult osztályt a későbbi verziókban eltávolíthatjuk.
4. Következtetés
Ebben a rövid cikkben megtudtuk, hogyan lehet kijavítani a WebMvcConfigurerAdapter osztály.