マイクロ人事日:springboot統合Webインフラストラクチャのコンポーネント

今、私たちはspringbootでWebコンポーネントのこのシリーズでのconfigureサーブレット、フィルター、リスナーに必要

構成サーブレットの構成要素
であればアクセス/がmyservlet GETリクエストやdoGetメソッドでメソッドを実行します

package org.javaboy.servlet;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

@WebServlet(urlPatterns = "/myservlet")
public class MyServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        System.out.println("MyServlet");
    }


}

2.フィルタアセンブリに配置された
すべてのパスをインターセプトするために本明細書でインターセプタは

package org.javaboy.servlet;

import javax.servlet.*;
import javax.servlet.annotation.WebFilter;
import java.io.IOException;

//表示拦截所有的地址
@WebFilter(urlPatterns = "/*")
public class MyFilter implements Filter {

    @Override
    public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
        System.out.println("MyFilter");
        filterChain.doFilter(servletRequest,servletResponse);
    }
}

コンフィギュレーション・リスナー
メソッドと初期破壊法リスナーメソッドを持ちます

package org.javaboy.servlet;

import javax.servlet.ServletRequestEvent;
import javax.servlet.ServletRequestListener;
import javax.servlet.annotation.WebListener;

@WebListener
public class MyRequestListener implements ServletRequestListener {

    @Override
    public void requestDestroyed(ServletRequestEvent sre) {
        System.out.println("requestDestroyed");
    }

    @Override
    public void requestInitialized(ServletRequestEvent sre) {
        System.out.println("requestInitialized");
    }
}

4.スタートクラス構成
サーブレット、リスナーおよびフィルタを設定した後、か今これら3つの成分でスキャンパッケージをスキャンすることによって得られたクラスを開始

package org.javaboy.servlet;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.servlet.ServletComponentScan;

@SpringBootApplication
@ServletComponentScan(basePackages = "org.javaboy.servlet")
public class ServletApplication {

    public static void main(String[] args) {
        SpringApplication.run(ServletApplication.class, args);
    }

}

印刷コンソールを起動した後:

requestInitialized
MyFilter
MyServlet
requestDestroyed
公開された277元の記事 ウォン称賛23 ビュー20000 +

おすすめ

転載: blog.csdn.net/qq_41998938/article/details/104020239