Rumah  >  Artikel  >  Java  >  Cara menggunakan pemintas pemintas dalam SpringBoot

Cara menggunakan pemintas pemintas dalam SpringBoot

王林
王林ke hadapan
2023-05-11 09:13:051334semak imbas

Menggunakan pemintas dalam springboot juga agak mudah. ​​Laksanakan antara muka HandlerInterceptor atau AsyncHandlerInterceptor, dan kemudian tambahkan pemintas daripada konfigurasi; >

Cara menggunakan pemintas pemintas dalam SpringBoot

Kaedah dalam antara muka:

Cara menggunakan pemintas pemintas dalam SpringBoot

praHandle: dilaksanakan sebelum Pengawal, parameter boleh ditentukan, yang dilaksanakan kaedah pengawal, dsb., nilai pulangan adalah boolean, kembalikan benar dan teruskan berjalan (pemintas dan pengawal di bawah), jika tidak, mulakan operasi pulangan (laksanakan pemintas pemintas sebelumnya dan operasi lain);

postHandle: dilaksanakan selepas Pengawal dan sebelum paparan kembali ModelAndView boleh diproses sebelum dikembalikan; 🎜 >
    afterConcurrentHandlingStarted: Kaedah ini akan dipanggil dan dijalankan dalam thread baharu hanya apabila nilai pulangan pengawal ialah java.util.concurrent.Cllable; pesanan:
  • preHandle -> afterConcurrentHandlingStarted -> Utas boleh panggil melaksanakan kaedah panggilan() -> >Konfigurasikan pemintas:
  • Laksanakan kaedah addInterceptors dalam antara muka WebMvcConfigurer, dan gunakan parameter InterceptorRegistry objek untuk menambah pemintas anda sendiri Anda boleh menambah laluan pemintas tertentu atau mengalih keluar laluan penapisan tertentu daripada pemintas, daripada kecil kepada besar. Lalai 0;

  • Perintah pelaksanaan berbilang pemintas:
  • Kaedah praHandle adalah mengikut urutan daripada kecil ke besar terbalik, serupa dengan penapis

    Peranti pemintasan konfigurasi:
  • /**
     * 2023年3月16日下午4:56:23
     */
    package testspringboot.test9interceptor;
     
    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.SpringBootApplication;
     
    /**
     * @author XWF
     *
     */
    @SpringBootApplication
    public class Test9Main {
     
        /**
         * @param args
         */
        public static void main(String[] args) {
            SpringApplication.run(Test9Main.class, args);
        }
     
    }
  • Hantar permintaan ujian pos: http://192.168.1.30:8080/interceptor/a?s=hello, susunan pemintas 2 lalai kepada 0, susunan pemintas pemintas 1 ialah 1, praHandle 2 dilaksanakan terlebih dahulu Selepas pengawal dilaksanakan, Pemegang selebihnya dilaksanakan dahulu dan kemudian 2

Hantar permintaan untuk praHandle untuk mengembalikan palsu. : http://192.168 .1.30:8080/interceptor/a?s=hello123456789, selepas praHandle pemintas 1 mengembalikan palsu, terus laksanakan selepasPenyelesaian 2; Hantar permintaan untuk ujian boleh panggil: http ://192.168.1.30:8080/interceptor/b?s=hello, konfigurasi laluan pemintasan melangkau pemintas 1 dan hanya melaksanakan pemintas 2. Anda boleh melihat melalui threadid bahawa dua utas digunakan sebelum dan selepas;

Atas ialah kandungan terperinci Cara menggunakan pemintas pemintas dalam SpringBoot. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:yisu.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam