Kev siv cov ntxaij lim dej rau hauv ib daim ntawv thov JSP

JSP Filter

JSP Filters – Yuav ua li cas rau nws?

Txheej txheem cej luam:

JSP muaj ib tshwj xeeb feature uas ua tswvcuab lub tswvyim ntawm filters. Cov ua hauj lwm ntawm cov lim yog los cuam tshuam kev thov kom lawv rov mus rau JSP los yog tus Java pab. Nws yuav tau hloov hloov cov lus teb ntawm cov kev pab ua ntej nws xeeb tus neeg. Yog li, Ib lim tiam yog ib feem tseem ceeb ntawm ib daim ntawv thov raws li nws yog ib yam ua ntej thiab tom qab thov. Tej zaum yuav siv tau rau ib lub lim tiam, nyiam phab ntsa txoj kev ruaj ntseg thiab cov lus qhia, Rau kev siv ib logging loggic los yog rau compressing cov ntaub ntawv xa mus rau tus neeg siv. Cov filters no muaj cov functions txawv, nyiam encryption, auditing, logging thiab authentication ntawm tus neeg tau txais kev pab thiab cov ntaub ntawv.







Nyob rau cov tshooj no, Peb yuav paub ntxiv txog cov filters no. Peb yuav tau siv ib daim ntawv uas siv JSP ntawv.

Dab tsi yog lub neej mus los ntawm ib lub limtiam JSP lim?

Xav kom to taub li cas JSP ua haujlwm li cas, Koj yuav tau paub txog nws lub neej xub cycle ua ntej. Nws yog yooj yim heev. Ua tau, Lub neej los ntawm ib tug JSP filter txhais tau tias txoj kev txheej txheem, pib ntawm nws cov creation thiab xaus nrog nws cov kev puas tsuaj. Lub neej no lub neej yog zoo ib yam li ib lub neej cycle ntawm ib qho servlet. Muaj plaub theem loj theem hauv lub JSP lub neej mus los, uas muaj kev sib txuas lus, kev txheeb xyuas, tiav thiab tu tu. Txhua qhov yog piav hauv qab no.



Theem compilation

Thaum twg thov yog thawj tug browser, Cov checks cav no yog hais tias nws yuav tsum tau mus ua raws li cov nplooj ntawv Java muab nplooj ntawv los yog tsis. Yog hais tias thov nplooj ntawv tsis tau tau compiled lawm los yog tau hloov, ces cav compiles cov nplooj ntawv. Nws muaj peb tug txheej txheem loj, i.e. nplooj ntawv, Xa nws mus rau hauv lub servlet thiab ces compiling nws.

Theem pib

Thaum lub thawv loads compiled JSPs, tej teeb meem hu ua jspinit () thov ua ntej qhov kev thov kom muaj kev thov. Tus txheej txheem initialisation yog ua ib zaug nrog txoj kev no. Qhov no yog siv rau cov chaw muab kev pab xws li cov ntxhuav, database sib txuas thiab ntaub ntawv.

Tiav

Qhov no yuav tsis nyob ntev xws li txhua hom kev sib tshuam nrog cov JSP mus txog rau thaum nws txiav txim. Thaum lub JSP muaj tau loaded hauv lub browser thiab initialised ib yam nkaus thiab, cov cav ua liaj ua teb _jspService () txujci. Txoj kev no yuav muab xa tuaj rau ib lub sij hawm ib tug neeg thiab pab nyob rau hauv cov tiam ntawm cov lus teb.

tsis nyob ntev

Lub xeem nyob ntev ntawm lub JSP lub neej yog lub neej puas ntsoog los yog lub ntxuav tu nyob ntev. Qhov no yog cov theem thaum lub JSP puas lawm tom qab nws siv. Qhov no, nug jspDestroy () siv. Txoj kev no yuav siv tau rau kev ntxuav tu ua ntej rhuav tseg cov nplooj ntawv.








Cov filters sib txawv li cas?

Muaj ntau hom kev siv filters hauv JSP, Ob lub ntsiab siv tau kev cuam tshuam cov kev thov los ntawm tus neeg tau txais kev pab thiab hloov cov lus teb los ntawm cov lus teb los ntawm qhov kev pab. Yog li, Muaj ntau hom filters.

Tej hom filters muaj xws li cov ntaub ntawv compression filters, triggering filters, encryption filters, duab converting filters, ua liaj ua teb, MIME-TYPE filters, lim dej thiab cov lim dej filters.

Cov kev interfaces/methods?

Methods yog ib feem tseem ceeb ntawm filters hauv JSP. Tus filters yog hoob kawm nyob rau hauv Java uas siv cov interface javax.servlet.Filter. Cov interfaces no muaj peb txoj kev tseem ceeb. Peb txoj kev no yog piav nyob rau hauv ncauj lus nyob rau hauv seem no.

  • pej xeem tsis txhob doFilter (ServletResponse, ServletRequest thiab FilterChain)

Cov pej xeem yuav tsum tsis txhob siv cov tshuaj doFilter yog siv los ntawm lub thawv JSP thaum twg thov los yog teb cov lus no, i.e. Txoj kev no yuav xa tawm thaum twg ib khub thov thiab teb cov lus no yog kis los ntawm lub lim tiam saw hlau. Khub no yog generated los ntawm ib tus neeg thov kev thov uas tuaj txog ntawm tus neeg tau txais kev pab xaus rau saw hlau.

  • pej xeem zam (FilterConfig filterConfig)

Cov pej xeem yuav zam tau txoj kev los ntawm JSP lub web muaj thaum nws xav kos npe rau qhov uas tus JSP muaj ntse teg thiab npaj rau kev siv.

  • pej xeem qeeb()

Cov pej xeem pov tseg txov txoj kev rhuav tshem yog siv los ntawm lub web site uas muaj cov lim dej tsis tas yuav tsum tau thiab muab tawm ntawm qhov kev pab cuam. Qhov no txhais tau tias tag nrho cov database sib txuas lus yog deleted thiab lub lim tiam yog npaj yuav raug puas lawm.

Teeb ib puag ncig

Rau qhov chaw setup koj yuav tau ua raws li cov kauj ruam nram qab no

1) Download nruab nrab. Muab daim PATH thiab JAVA_HOME li qhia hauv qab no.

Teev Txheej Txheej KEV RUAJ NTSE:\ jdk1.6.0_45;%KEV POOB QAB LAWM

teev JAVA_HOME C=C:\ jdk1.6.0_45

2) Download nag tshauv web phaj web. Ntawm no koj yuav download cov kev pab cuam installer yooj yim.

3) Teeb hoob kawm txoj kev pab rau cov chav kawm ntawv qib siab. Qhov no tsuas yog rau J2SE version.

CATALINA=C:\apache-tomcat-7.00.70

Txheej CLASSPATH=CATALINA%.common.common.jsp-api.jar;%CLASSPATH%

Tam sim no lub setup yog tag nrho. Cia mus kuaj ib qho piv txwv nyob rau sab nraud tom ntej.








Qauv ua ntawv thov – JSP Filter

Nyob rau hauv tshooj no peb yuav sau ib daim ntawv uas siv cov nplooj ntawv JSP thiab cov hoob kawm. Ua ntej yuav mus rau qhov coding peb yuav tsum khaws cov ntsiab lus hauv qab no.

  • JSP lim dej yog ib tug yooj yim Java hoob kawm uas siv javax.servlet.filter interface.
  • Lim dej yog txhais lub web site.xml ua ntaub ntawv rau ib qho kev txiav txim. Thiab cov filters no hu ua raws li qhov kev txiav txim no. Txhua cov lim teev muaj ib daim ntawv URL los yog JSP ntaub ntawv.
  • Thaum lub web sawv ntxov starts-up, piv txwv ntawm txhua lub lim dej yog tsim rau tiav.

Cia peb xyuas cov components ib los ntawm ib tug.

Qhov no yog lub lim tiam siv ua daim ntawv thov Java hoob kawm uas hu ua rau kev thov kev pab rau cov neeg tau thov. Nws yuav siv sij hawm tus txheej txheem parameter ntawm lub webb.xml teev thiab prints tus neeg tau txais kev pab URI thiab lub sij hawm stamp.

Qhia 1: Qhov no yog cov lim dej teev (DemoJspFilter.java)

Pob.com.techalpine.filter

ntshuam java.io.*;

import javax.servlet.*;

import javax.servlet.http.*;

ntshuam java.util.*;

Pej xeem hoob kawm DemoJspFilter siv lim dej {

// Qhov no yog ib txoj kev txheeb ze uas teev cia

pej xeem zam(FilterConfig confg)

pov tseg ServletException{

//Mus tshawb xyuas parameters

Hlua initparam = confg.getinparameter(“ntsawj”);

//Ntsuam xyuas parameter initialization

System.out.println(“Initialization Parameters: ” + piv txwv);

}

//Qhov no yog txoj kev tiav

pej xeem tsis txhob doFilter(ServletRequest req,

ServletResponse res,

FilterChain fltrchain)

throws java.iOException, ServletException {

// Tau txais kev pab URI.

String clientURI = req.getrequestURI();

// Sau tus neeg tau URI thiab lub sij hawm stamp

System.out.println(“Neeg tau URI: “+ neeg muaj mob muaj npe + “, Lub sij hawm Stamp: “

+ Hnub tshiab().toString());

// Dhau cov ntaub ntawv rau lub limtiam saw hlau

fltrchain.doFilter(nqaij nyu,res);

}

// Qhov no yog lub neej dhau lub neej cycle

pej xeem qeeb( ){

// Qhov no yog txoj kev ntxuav tu lub neej cycle

}

}

Qhov no yog cov ntaub ntawv configuration uas tag nrho cov lim defined hauv ib qho kev txiav txim thiab ces URL mapping yog ntxiv. Ntawm no peb muaj configured ib lim dej thiab nws cov corresponding URL mapping. Ntau cov lim dej yuav muab ntxiv thiab muab tso rau hauv ib qho kom zoo.



Qhia 2: Qhov no yog qhov configuration ntaub ntawv (web si.xml)

<lim>

<tis npe>DemoJspFilter</tis npe>

<hoob kawm>DemoJspFilter</hoob kawm>

<ntsawj>

<param-lub npe>ntsawj</param-lub npe>

<tus nqi>Demo init filter parameters</tus nqi>

</ntsawj>

</lim>

<lim-mapping>

<tis npe>DemoJspFilter</tis npe>

<tus qauv>/*</tus qauv>

</lim-mapping>

Tam sim no tag nrho cov components yog npaj rau kev kuaj. Compile cov chav kawm ntawv Java thiab muab nws nyob rau hauv cov webapps/ROOT/WEB-INF/INF/classes folder (Tomcat). Lub mapping yog txhais li (/*), li ntawd, cov nplooj ntawv JSP yuav tseg rau cov chav kawm ntawv thiab tso zis tso zis rau hauv web server log. Tus log yuav muaj neeg tau URI thiab lub sij hawm stamp qhov tseem ceeb.

Xaus

Filters yog ib feem tseem ceeb ntawm JSP thiab servlets vim lawv tswj tau cov ntaub ntawv los ntawm tus neeg tau txais kev pab thiab vice versa. Lawv yuav hloov yus lub teb thiab hloov tus neeg thov kev pab. Yog li, lawv yuav pab tau kom ruaj ntseg thiab cov khiav dej num dhau ib yam nkaus thiab. Tseem, Lim dej yog cov tseem ceeb heev rau cov neeg ua hauj lwm ntawm web apps. Ib tug lim yuav sau ntawv heev yooj yim heev nyob rau hauv ib tug qauv URL. Thaum lim-zoo li logics yuav tau DVR ncaj qha mus rau JSPs ncaj qha, Txoj kev no yuav ua kom tiring heev thiab yuav tsum tau precisely coded. Muaj ntau hom filters txawv rau ntau hom kev siv. Tseem, Muaj ntau hom kev JSP txoj kev sib tshuam nrog cov filters. Thaum twg yog qhov kev pab cuam programming, lim tau zoo li daunting thaum xub thawj tiam sis yog yooj yim heev rau siv.


 

Tagged: , , ,
============================================= ============================================== Yuav zoo TechAlpine phau ntawv rau Amazon
============================================== ---------------------------------------------------------------- electrician ct chestnutelectric
error

Txaus siab rau qhov blog? Tshaj tawm lus thov :)

Follow by Email
LinkedIn
LinkedIn
Share