Peringatan: “Jenis WebMvcConfigurerAdapter tidak digunakan lagi”

1. Perkenalan

Dalam tutorial singkat ini, kita akan melihat salah satu peringatan yang mungkin kita lihat saat bekerja dengan versi Spring 5.xx, yaitu yang merujuk ke kelas WebMvcConfigurerAdapter yang sudah tidak digunakan lagi .

Kami akan melihat mengapa peringatan ini terjadi dan bagaimana menanganinya.

2. Mengapa Peringatan Ada

Peringatan ini akan muncul jika kita menggunakan Spring versi 5 (atau Spring Boot 2) , baik saat mengupgrade aplikasi yang sudah ada atau membuat aplikasi baru dengan API lama.

Mari kita lihat secara singkat sejarah di baliknya.

Di versi Spring sebelumnya, hingga dan termasuk versi 4, jika kami ingin mengonfigurasi aplikasi web, kami dapat menggunakan kelas WebMvcConfigurerAdapter :

@Configuration public WebConfig extends WebMvcConfigurerAdapter { // ... }

Ini adalah kelas abstrak yang mengimplementasikan antarmuka WebMvcConfigurer dan berisi implementasi kosong untuk semua metode yang diwarisi.

Dengan mensubclassinya, kita dapat mengganti metodenya, yang menyediakan hook ke berbagai elemen konfigurasi MVC seperti view resolver, interseptor, dan lainnya.

Namun, Java 8 menambahkan konsep metode default di antarmuka. Secara alami, tim Spring memperbarui kerangka kerja untuk memanfaatkan sepenuhnya fitur bahasa Java yang baru.

3. Solusi

Seperti yang disebutkan, antarmuka WebMvcConfigurer , dimulai dengan Spring 5, berisi implementasi default untuk semua metodenya. Akibatnya, kelas adaptor abstrak ditandai sebagai tidak digunakan lagi.

Mari kita lihat bagaimana kita bisa mulai menggunakan antarmuka secara langsung dan menghilangkan peringatan :

@Configuration public WebConfig implements WebMvcConfigurer { // ... }

Dan itu saja! Perubahan tersebut seharusnya cukup mudah dilakukan.

Jika ada panggilan super () ke metode yang diganti, kita harus menghapusnya juga. Jika tidak, kita bisa mengganti callback konfigurasi seperti biasa.

Meskipun menghapus peringatan tidak wajib, disarankan untuk melakukannya, karena API baru lebih nyaman, dan kelas yang tidak digunakan lagi dapat dihapus di versi mendatang.

4. Kesimpulan

Dalam artikel singkat ini, kami melihat cara memperbaiki peringatan yang merujuk pada penghentian kelas WebMvcConfigurerAdapter .