Rumah Java javaTutorial 对HandlerExecutionChain类的实例讲解

对HandlerExecutionChain类的实例讲解

Jul 18, 2017 pm 02:37 PM
menganalisis faham

讲解HandlerExecutionChain之前,先大致了解下SpringMVC的核心开发步骤:

在web.xml中部署DispaterServlet,并配置springmvc.xml等文件;

将映射文件请求到处理器HandlerMapping;

HandlerMapping会把请求映射为HandlerExecutionChain类型的handler对象;

将handler对象作为参数传递给HandlerAdapter的实例化对象,调用其handler方法会生成一个ModelAndView对象;

通过ViewResolver视图解析器,将上一步骤中生成的ModelAndView解析为View;

DispatcherServlet根据获取到View,将视图返回给用户。

HandlerExecutionChain类比较简单,好理解。

========================================================================

  HandlerExecutionChain {
Salin selepas log masuk

========================================================================

下面是类的部分属性。

  List<HandlerInterceptor>
Salin selepas log masuk

 

========================================================================

 applyPreHandle(HttpServletRequest request, HttpServletResponse response) = (! ( i = 0; i < interceptors.length; i++= (!interceptor.preHandle(request, response,  .interceptorIndex =
Salin selepas log masuk

========================================================================

 applyPostHandle(HttpServletRequest request, HttpServletResponse response, ModelAndView mv) = (! ( i = interceptors.length - 1; i >= 0; i--=
Salin selepas log masuk
    /** * 这个方法只会执行preHandle()方法已经成功执行并且返回true的拦截器中的postHandle()方法。     */void triggerAfterCompletion(HttpServletRequest request, HttpServletResponse response, Exception ex)throws Exception {

        HandlerInterceptor[] interceptors = getInterceptors();if (!ObjectUtils.isEmpty(interceptors)) {for (int i = this.interceptorIndex; i >= 0; i--) {
                HandlerInterceptor interceptor = interceptors[i];try {
                    interceptor.afterCompletion(request, response, this.handler, ex);
                }catch (Throwable ex2) {
                    logger.error("HandlerInterceptor.afterCompletion threw exception", ex2);
                }
            }
        }
    }
Salin selepas log masuk

Atas ialah kandungan terperinci 对HandlerExecutionChain类的实例讲解. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Cara melaksanakan statistik dan analisis data dalam uniapp Cara melaksanakan statistik dan analisis data dalam uniapp Oct 24, 2023 pm 12:37 PM

Cara melaksanakan statistik dan analisis data dalam uniapp 1. Pengenalan latar belakang Statistik dan analisis data merupakan bahagian yang sangat penting dalam proses pembangunan aplikasi mudah alih Melalui statistik dan analisis tingkah laku pengguna, pembangun boleh mempunyai pemahaman yang mendalam tentang pilihan dan penggunaan pengguna. tabiat. Dengan itu mengoptimumkan reka bentuk produk dan pengalaman pengguna. Artikel ini akan memperkenalkan cara melaksanakan statistik data dan fungsi analisis dalam uniapp, dan menyediakan beberapa contoh kod khusus. 2. Pilih statistik data dan alat analisis yang sesuai Langkah pertama untuk melaksanakan statistik dan analisis data dalam uniapp ialah memilih statistik data dan alat analisis.

Analisis sebab mengapa direktori sekunder DreamWeaver CMS tidak boleh dibuka Analisis sebab mengapa direktori sekunder DreamWeaver CMS tidak boleh dibuka Mar 13, 2024 pm 06:24 PM

Tajuk: Analisis sebab dan penyelesaian mengapa direktori sekunder DreamWeaver CMS tidak boleh dibuka Dreamweaver CMS (DedeCMS) ialah sistem pengurusan kandungan sumber terbuka yang berkuasa yang digunakan secara meluas dalam pembinaan pelbagai laman web. Walau bagaimanapun, kadangkala semasa proses membina tapak web, anda mungkin menghadapi situasi di mana direktori sekunder tidak boleh dibuka, yang membawa masalah kepada operasi biasa tapak web. Dalam artikel ini, kami akan menganalisis kemungkinan sebab mengapa direktori sekunder tidak boleh dibuka dan memberikan contoh kod khusus untuk menyelesaikan masalah ini. 1. Analisis sebab yang mungkin: Masalah konfigurasi peraturan pseudo-statik: Semasa penggunaan

Analisis kes aplikasi Python dalam sistem pengangkutan pintar Analisis kes aplikasi Python dalam sistem pengangkutan pintar Sep 08, 2023 am 08:13 AM

Ringkasan analisis kes aplikasi Python dalam sistem pengangkutan pintar: Dengan perkembangan pesat sistem pengangkutan pintar, Python, sebagai bahasa pengaturcaraan berbilang fungsi, mudah dipelajari dan digunakan, digunakan secara meluas dalam pembangunan dan aplikasi sistem pengangkutan pintar. Artikel ini menunjukkan kelebihan dan potensi aplikasi Python dalam bidang pengangkutan pintar dengan menganalisis kes aplikasi Python dalam sistem pengangkutan pintar dan memberikan contoh kod yang berkaitan. Pengenalan Sistem pengangkutan pintar merujuk kepada penggunaan komunikasi moden, maklumat, penderiaan dan cara teknikal lain untuk berkomunikasi melalui

Analisis sama ada bahasa pengaturcaraan utama Tencent ialah Go Analisis sama ada bahasa pengaturcaraan utama Tencent ialah Go Mar 27, 2024 pm 04:21 PM

Tajuk: Adakah bahasa pengaturcaraan utama Tencent Go: Analisis mendalam Sebagai syarikat teknologi terkemuka di China, Tencent sentiasa menarik banyak perhatian dalam pilihan bahasa pengaturcaraannya. Dalam beberapa tahun kebelakangan ini, sesetengah orang percaya bahawa Tencent menggunakan Go sebagai bahasa pengaturcaraan utamanya. Artikel ini akan menjalankan analisis mendalam sama ada bahasa pengaturcaraan utama Tencent ialah Go dan memberikan contoh kod khusus untuk menyokong pandangan ini. 1. Aplikasi bahasa Go dalam Tencent Go ialah bahasa pengaturcaraan sumber terbuka yang dibangunkan oleh Google Kecekapan, kesesuaian dan kesederhanaannya disukai oleh banyak pembangun.

Menganalisis kelebihan dan kekurangan teknologi kedudukan statik Menganalisis kelebihan dan kekurangan teknologi kedudukan statik Jan 18, 2024 am 11:16 AM

Analisis kelebihan dan had teknologi penentududukan statik Dengan perkembangan teknologi moden, teknologi penentududukan telah menjadi bahagian yang amat diperlukan dalam kehidupan kita. Sebagai salah satu daripadanya, teknologi kedudukan statik mempunyai kelebihan dan batasannya yang unik. Artikel ini akan menjalankan analisis mendalam tentang teknologi kedudukan statik untuk lebih memahami status aplikasi semasa dan aliran pembangunan masa depannya. Mula-mula, mari kita lihat kelebihan teknologi kedudukan statik. Teknologi kedudukan statik mencapai penentuan maklumat kedudukan dengan memerhati, mengukur dan mengira objek yang akan diletakkan. Berbanding dengan teknologi penentududukan lain,

Analisis prestasi kod ThinkPHP6: mengesan kesesakan prestasi Analisis prestasi kod ThinkPHP6: mengesan kesesakan prestasi Aug 27, 2023 pm 01:36 PM

Analisis prestasi kod ThinkPHP6: mengesan kesesakan prestasi Pengenalan: Dengan perkembangan pesat Internet, analisis prestasi kod yang lebih cekap telah menjadi semakin penting bagi pembangun. Artikel ini akan memperkenalkan cara menggunakan ThinkPHP6 untuk melaksanakan analisis prestasi kod untuk mencari dan menyelesaikan kesesakan prestasi. Pada masa yang sama, kami juga akan menggunakan contoh kod untuk membantu pembaca memahami dengan lebih baik. Kepentingan Analisis Prestasi Analisis prestasi kod adalah bahagian penting dalam proses pembangunan. Dengan menganalisis prestasi kod, kita boleh memahami di mana banyak sumber digunakan

Menganalisis dan menyelesaikan punca kemalangan Tomcat Menganalisis dan menyelesaikan punca kemalangan Tomcat Jan 13, 2024 am 10:36 AM

Analisis dan penyelesaian punca kemalangan Tomcat Pengenalan: Dengan perkembangan pesat Internet, semakin banyak aplikasi dibangunkan dan digunakan pada pelayan untuk menyediakan perkhidmatan. Sebagai pelayan JavaWeb biasa, Tomcat telah digunakan secara meluas dalam pembangunan aplikasi. Walau bagaimanapun, kadangkala kami mungkin menghadapi masalah dengan ranap Tomcat, yang akan menyebabkan aplikasi tidak berjalan dengan betul. Artikel ini akan memperkenalkan analisis punca ranap Tomcat, menyediakan penyelesaian dan memberikan contoh kod khusus.

Bagaimana untuk menggunakan C++ untuk pemprosesan dan analisis imej masa nyata? Bagaimana untuk menggunakan C++ untuk pemprosesan dan analisis imej masa nyata? Aug 26, 2023 am 10:39 AM

Bagaimana untuk menggunakan C++ untuk pemprosesan dan analisis imej masa nyata? Dengan perkembangan penglihatan komputer dan pemprosesan imej, semakin banyak aplikasi memerlukan pemprosesan dan analisis imej masa nyata. Sebagai bahasa pengaturcaraan yang cekap dan berkuasa, C++ digunakan secara meluas dalam bidang pemprosesan imej. Artikel ini akan memperkenalkan cara menggunakan C++ untuk pemprosesan dan analisis imej masa nyata, dan menyediakan beberapa contoh kod. 1. Bacaan dan paparan imej Sebelum pemprosesan imej, data imej perlu dibaca daripada fail atau kamera terlebih dahulu, dan imej yang diproses perlu dipaparkan. pertama

See all articles