Web.xml filtermappning i JSP Servlet med exempel

Vad är JSP-filter?

  • Filter används för filtrering av Java-webbapplikationen.
  • De avlyssnar förfrågningarna från klienten innan de försöker komma åt resursen
  • De manipulerar svaren från servern och skickas till klienten.

Typer av filter i JSP

  • Autentiseringsfilter
  • Datakomprimeringsfilter
  • Krypteringsfilter
  • MIME-kedjefilter
  • Loggningsfilter
  • Tokeniserande filter

Filter definieras i web.xml och de är en karta till servlet eller JSP. När JSP-behållaren startar med webbapplikationen skapas den instans av varje filter som har deklarerats i distributionsbeskrivaren.

Följande är filtermetoderna:

  • Public void doFilter (ServletRequest, ServletResponse, FilterChain)

    Detta kallas varje gång när en begäran / svar skickas från varje klient när det begärs från en resurs.

  • Offentlig ogiltig init (FilterConfig)

    Detta för att indikera att filtret tas i bruk

  • Offentligt tomrum förstör ()

    Detta för att indikera att filtret har tagits ur service.

Exempel:

I det här exemplet har vi skapat filter och kartlagts i web.xml

Gurufilter.java

paket demotest;importera java.io.IOException;importera java.util.Date;importera javax.servlet.Filter;importera javax.servlet.FilterChain;importera javax.servlet.FilterConfig;importera javax.servlet.ServletException;importera javax.servlet.ServletRequest;importera javax.servlet.ServletResponse;importera Javax.servlet.http.HttpServletRequest;offentlig klass GuruFilter implementerar filter {public void doFilter (ServletRequest-begäran, ServletResponse-svar, Filterchain-kedja) kastar IOException, ServletException {// TODO Auto-genererad metodstubHttpServletRequest req = (HttpServletRequest) begäran;Sträng ipAddress = req.getRemoteAddr ();System.out.println ("IP-adress" + ipAddress + ", tiden är"+ nytt datum (). toString ());// skicka begäran längs filterkedjanchain.doFilter (begäran, svar);}/ *** @se Filter # init (FilterConfig)* /public void init (FilterConfig fConfig) kastar ServletException {Strängguruparam = fConfig.getInitParameter ("guru-param");// Skriv ut init-parameternSystem.out.println ("Testparameter: + guruparam);}}

Web.xml

test GuruFilter  GuruFilter  demotest.GuruFilter 
 guru-param 
 Detta är guru paramter  GuruFilter  / GuruFilter 

Förklaring av koden:

Gurufilter.java

Kodrad 17-32 : Här använder vi metoden "doFilter" där vi får förfrågningsobjekt (i vårt exempel är förfrågningsobjektet req (HttpServletRequest-objekt)) och får klientens fjärradress och skriver ut på konsolen och skriver också ut datum och tid på konsolen.

Kodrad 33-37 : Här använder vi init-metoden där vi tar init-parametern och skriver ut init-parametern i konsolen.

Web.xml

Kodrad 10-11 - Kartläggning av GuruFilter med klassnamnet GuruFilter.java där vi har filternamn som GuruFilter och filterklass som är katalogvägen för GuruFilter-klassen

Kodrad 13-15 - Kartläggning av init-parametern med namnet guru-param och få värdet av den som placeras under filtertaggen så att denna init-param har definierats för gurufilter

Produktion:

När du kör koden ovan får du följande utdata:

  • Utgången är Test Param från init-parametern
  • Och hämtar IP-adress, datum och tid för den.

Intressanta artiklar...