Rumah > Java > javaTutorial > Mengapa Penapis Spring saya Dikenakan Dua Kali Apabila Didaftarkan sebagai Kacang?

Mengapa Penapis Spring saya Dikenakan Dua Kali Apabila Didaftarkan sebagai Kacang?

DDD
Lepaskan: 2024-12-09 15:55:12
asal
715 orang telah melayarinya

Why is my Spring Filter Invoked Twice When Registered as a Bean?

Penapis Dikenakan Dua Kali selepas Pendaftaran sebagai Spring Bean

Masalah:

Percubaan untuk menggunakan @Autowire dengan hasil Penapis dalam seruan berganda yang tidak dijangka daripada penapis. Selepas pemeriksaan lebih dekat, didapati bekas Spring mencetuskan seruan tambahan ini apabila penapis didaftarkan sebagai kacang.

Penyelesaian:

Untuk menyelesaikan isu ini, pertimbangkan untuk melaksanakan salah satu pendekatan berikut:

  1. Lumpuhkan Penapis Automatik Pendaftaran:

    Elakkan daripada mendedahkan penapis sebagai kacang dan daftarkannya secara manual dengan Spring Security. Ini menghalang Spring Boot daripada mendaftarkan penapis secara automatik dua kali.

  2. Gunakan FilterRegistrationBean:

    Jika suntikan pergantungan ke dalam penapis diperlukan, ia mesti didaftarkan sebagai kacang. Walau bagaimanapun, untuk mengelakkan pendaftaran automatik, FilterRegistrationBean boleh digunakan dengan sifat "didayakan" ditetapkan kepada false. Contoh pelaksanaan:

@Bean
public FilterRegistrationBean registration(MyFilter filter) {
    FilterRegistrationBean<MyFilter> registration = new FilterRegistrationBean<>(filter);
    registration.setEnabled(false);
    return registration;
}
Salin selepas log masuk

Atas ialah kandungan terperinci Mengapa Penapis Spring saya Dikenakan Dua Kali Apabila Didaftarkan sebagai Kacang?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan