Heim  >  Artikel  >  Java  >  So verwenden Sie Filter und Listener in Java

So verwenden Sie Filter und Listener in Java

王林
王林nach vorne
2023-05-20 08:58:111419Durchsuche

    Filter: Filter

    Konzept

    Filter im Leben: Wasserreiniger, Luftreiniger, Banditen, Filter im Web: Beim Zugriff auf Serverressourcen können Filter Anfragen abfangen und einige Sonderfunktionen ausführen. Die Funktion des Filters:

    wird im Allgemeinen zum Abschließen allgemeiner Vorgänge verwendet. Zum Beispiel: Anmeldebestätigung, einheitliche Codierungsverarbeitung, Filterung vertraulicher Zeichen ... # 1. Definieren Sie eine Klasse und implementieren Sie den Schnittstellenfilter

    2 Überschreiben Sie die Methode

    3 Konfigurieren Sie den Abfangpfad

    web.xml

    Notizen

    • code

      # ?? #🎜 🎜#
    • Ausführungsfilter

    Ressourcen nach Ausführungsfreigabe

    Kommen Sie zurück und führen Sie den Code unter dem Filterfreigabecode aus

    Filterlebenszyklusmethode

    #🎜🎜 #

    init: Nach dem Serverstart wird ein Filterobjekt erstellt und anschließend die Init-Methode aufgerufen. Nur einmal ausgeführt. Wird zum Laden von Ressourcen verwendet.
    • doFilter: Wird jedes Mal ausgeführt, wenn eine Anfrage für eine Ressource abgefangen wird. Mehrmals ausgeführt
    • destroy: Nach dem Herunterfahren des Servers wird das Filterobjekt zerstört. Wenn der Server normal heruntergefahren wird, wird die Zerstörungsmethode ausgeführt. Nur einmal ausgeführt. Wird zum Freigeben von Ressourcen verwendet #
    • Spezifischer Ressourcenpfad: /index.jsp Nur beim Zugriff auf die Ressource index.jsp wird der Filter ausgeführt

    Interception-Verzeichnis: /user/* Beim Zugriff auf alle Ressourcen unter /user wird der Filter ausgeführt

    Abfangen des Suffixnamens: *.jsp Beim Zugriff auf alle Ressourcen mit dem Suffixnamen jsp , der Filter wird ausgeführt
    • Alle Ressourcen abfangen: /* Beim Zugriff auf alle Ressourcen wird der Filter ausgeführt
    • # 🎜🎜#Konfiguration der Abfangmethode: die Art und Weise, wie auf Ressourcen zugegriffen wird

    • ANFRAGE: Standardwert. Der Browser fordert die Ressource direkt an die Ressource#🎜🎜 #

    FEHLER: Fehler beim Springen zur Ressource

    ASYNC: Asynchroner Zugriff auf die Ressource
    • #🎜 🎜#

      Web.xml-Konfigurationseinstellungs-Tag

    • Filterkette (mehrere Filter konfigurieren)

    • Ausführung Reihenfolge: Wenn zwei Filter vorhanden sind: Filter 1 und Filter 2 🎜🎜#
    • ResourceExecution
    • Filter 2
    #🎜 🎜## 🎜🎜# Filter 1

    Problem der Filterreihenfolge:

    • Anmerkungskonfiguration: Vergleichen Sie gemäß den Zeichenfolgenvergleichsregeln des Klassenname. Der kleinere Wert wird zuerst ausgeführt.

    Zwischen AFilter und BFilter wird AFilter zuerst ausgeführt. 2. web.xml-Konfiguration: Wer auch immer es oben definiert, führt es zuerst aus Web eins. Mechanismus zum Abhören von Ereignissen
    • Listener: ein Objekt

    • Registrierter Listener: Binden Sie Ereignisse, Ereignisquellen und Listener zusammen. Wenn ein Ereignis in der Ereignisquelle auftritt, führen Sie den Listener-Code aus ServletContext-Objekt wird erstellt. Dieser Methodenschritt wird aufgerufen:

    • Definieren Sie eine Klasse zur Implementierung der ServletContextListener-Schnittstelle

    • #🎜🎜 #Kopiermethode#🎜🎜 #

    • Konfiguration
    web.xml

    #🎜🎜 #

    @WebFilter("/*")//访问所有资源之前,都会执行该过滤器
    public class FilterDemo1 implements Filter {
    	@Override
    	public void init(FilterConfig filterConfig) throws ServletException {
    
    	}
    
    	@Override
    	public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
    		System.out.println("filterDemo1被执行了....");
    
    
    		//放行
    		filterChain.doFilter(servletRequest,servletResponse);
    
    	}
    
    	@Override
    	public void destroy() {
    
    	}
    }

    Initialisierungsparameter angeben

    Hinweis:

    @WebListener

    Das obige ist der detaillierte Inhalt vonSo verwenden Sie Filter und Listener in Java. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

    Stellungnahme:
    Dieser Artikel ist reproduziert unter:yisu.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen