Denna artikel är en spegelartikel om maskinöversättning, klicka här för att hoppa till originalartikeln.

Utsikt: 13811|Svar: 0

[JavaEE] JSP-sidhoppencyklopedi

[Kopiera länk]
Publicerad på 2015-01-03 21:28:01 | | |

(1) framåt()-metoden
Använd klassen javax.servlet.RequestDispatcher
RequestDispatcher rd = getServletContext().getRequestDispatcher("url");
rd.forward(requestVar, requestVar); Passa inmatningsparametrarna för servleten
Nämligen:
getServletContext().getRequestDispatcher("url").forward(requestVar,responseVar);

Det finns fyra sätt att vända server-side servlets:
1. getRequestDispatcher() för ServletContext  
2. getNamedDispatcher() för ServletContext
3. getRequestDispatcher() för ServletRequest
4. ServletResponses sendredirect() att styra.
framåtmetoden, eftersom dessa är mer effektiva. Använd endast sendredirect()-metoden servletresponse när vidarebefordra-metoden inte är tillgänglig.

(2).response.sendRedirect(url);
Faktum är att den skickar en speciell header till webbläsaren, och sedan vänder webbläsaren till den angivna sidan, så när du använder sendRedirect kan du se adressändringen i webbläsarens adressfält. Den nya sidan kan inte hantera sidans kontext (förfrågan, svar,... på den gamla sidan. Invändning.
response.sendRedirect ska följas av en return;

(3). Automatiskt hopp till HTML-språk
<html>
<head>
<meta http-equiv="refresh" content="0;url="http://www.baidu.com">
0 är väntetiden, om den är inställd på 5 betyder det att hoppet startar efter att ha väntat på 5 sekunder
</head>
…………

(4). JavaScript-hopp
A:
<script languate="javascript">
window.location.replace("http://www.baidu.com");
</script>
B: Du kan också direkt tilldela ett värde till window.location-attributet, window.location="url", vilket skiljer sig från A genom att det har en historik
C:
<script languate="javascript">
document.location.href("http://www.google.com");
</script>
För dokument är location inte ett objekt, document.location=document.url
Forward(), back() och go()-metoderna i D:history-objektet kräver en formningsparameter
<a href="javascript:history.go(-1)" > gå tillbaka till föregående steg</a>
Ekvivalent med <a href="javascript:history.back()" > återgå till föregående steg</a>
E:
document.formName.action="test.jsp";
document.formName.submit();   JS-commitmetoden
Den första typen:
<skriptspråk="javascript" typ="text/javascript">
window.location.href="login.jsp?backurl="+window.location.href;
</script>
Den andra typen:
<script language="javascript">
alert("return");
window.history.back(-1);
</script>
Den tredje typen:
<script language="javascript">
window.navigate("top.jsp");
</script>
Den fjärde typen:
<script language="JavaScript">
self.location='top.htm';
</script>
Den femte typen:
<script language="javascript">
alert("Olaglig åtkomst!") );
top.location='xx.jsp';
</script>

(5). <jsp:forward page="nextpage.jsp"/>
Som:
<jsp:forward page="/servlet/login" />
<jsp:forward page="/servlet/login">
<jsp:param name="username" value="jsmith" />
</jsp:framåt>
<jsp:forward> taggen skickar ett begäranobjekt som innehåller en användarförfrågan från en JSP-fil till en annan.
<jsp:forward>tag, kommer inte att utföras.
Du kan använda taggen <jsp:param> för att överföra parametrar och värden till objektfilen, som måste vara en dynamisk fil som kan hantera parametrar.
Om du använder obuffrad utdata, var försiktig när du använder <jsp:forward>. Om jsp-filen redan har data innan du använder <jsp:forward>, kommer filexekveringen att vara fel.
JSP-samling av sidhoppmetod
1. response.sendRedirct("Hoppa till sidan");
Denna metod modifierar HEADER-delen av HTTP-protokollet för att ge ett omdirigeringskommando till webbläsaren, så att webbläsaren visar innehållet på omdirigeringswebbsidan. Begäran kan inte skicka värdet förbi.
Exekvera all kod på sidan innan du hoppar till sidan. Gå till adressfältet för att byta.
Du kan hoppa till sidan response.sendRedirct(http://www.sun.com) på en annan server.
2.response.setHeader(); Denna metod, likt response.sendRedirect, görs genom att modifiera HEADER-delen av HTTP-protokollet.
<% response.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY); Sträng
newLocn="/index.html"; response.setHeader ("Location",newLocn); % >
3.<jsp:framåt sida="hoppa sida"/>
Denna metod använder serverns mekanism för att först mata ut data till bufferten, innan innehållet från bufferten skickas till klienten, skickar inte originalet utan istället sidans innehåll. Om det finns mycket utdata före <jsp:forward>, den föregående utdatan har gjort bufferten full, kommer den automatiskt att skickas till klienten, då fungerar inte satsen, detta bör ges särskild uppmärksamhet.
Begäran kan skicka värdet förbi. Hoppa direkt till sidan, följande kod körs inte. Adressfältet förblir oförändrat efter hoppet. Kan inte hoppa till en sida på en annan server. Bilden är inte en absolut väg som inte kan visas.
4. request.getRequestDispatcher("Hoppa till sidan"); Begäran kan skicka värdet förbi. Exekvera all kod på sidan innan du hoppar till sidan.
Hoppadressfältet förblir oförändrat. Du kan inte hoppa till en sida på en annan server <% RequestDispatcher rd = request.getRequestDispatcher("to.jsp"); rd.forward(request,response); %> Det finns tre sätt att omdirigera utdatan: RESPONSE. SETREDERECT("URL") Denna metod modifierar HEADER-delen av HTTP-protokollet för att ge ett omdirigeringskommando till webbläsaren, så att webbläsaren visar innehållet på den omdirigerade webbsidan.
response.sendRedirect("http://localhost:7001/index.html");
Följande metod kan också ändra egenskapen HTTP HEADER, som fungerar på samma sätt som 1. <%response.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY); sträng newLocn="/index.html"; response.setHeader("Location",newLocn); % >
< JSP:FORWORD > antas
Denna metod använder serverns mekanism för att först mata ut data till bufferten, innan buffertinnehållet skickas till klienten, skickar inte originalet utan istället sidans innehåll. Om det finns mycket utdata före <JSP:FORWORD>, har föregående utdata fyllt bufferten och kommer automatiskt att matas ut till klienten, då fungerar inte satsen, detta bör ges särskild uppmärksamhet.
Det finns tre sätt att nästla en annan JSP-sida inom en JSP-sida:
1. Med <%@include file="header.jsp"%> kan denna metod endast uppnå statisk sidladdning och används oftast för att genomföra laddning av generella sidhuvuden header.jsp och footer.jsp i ett projekt.
2. Med <%@include page="tt.jsp"%> kan denna metod uppnå dynamisk sidladdning, men den måste skicka parametrar till sidan;
3. Ladda en annan jsp-sida till sidan med <iframe src="jsp's path" >, vilket är ett inline-ramverk. Om du använder forward för att skicka parametern, skriv den så här: <%String str="Du är inloggad!"; %>
<jsp:framåt sida="index.jsp>
<jsp:param name="name" value= <%=str%>/>
</jsp:framåt>




Föregående:JSP förstör sessionssessionen och ogiltigförklarar användarinloggning
Nästa:Användning av jstl-taggen &lt;c:if&gt;
Friskrivning:
All programvara, programmeringsmaterial eller artiklar som publiceras av Code Farmer Network är endast för lärande- och forskningsändamål; Ovanstående innehåll får inte användas för kommersiella eller olagliga ändamål, annars kommer användarna att bära alla konsekvenser. Informationen på denna sida kommer från internet, och upphovsrättstvister har inget med denna sida att göra. Du måste helt radera ovanstående innehåll från din dator inom 24 timmar efter nedladdning. Om du gillar programmet, vänligen stöd äkta programvara, köp registrering och få bättre äkta tjänster. Om det finns något intrång, vänligen kontakta oss via e-post.

Mail To:help@itsvse.com