Bu makale makine çevirisi ayna makalesidir, orijinal makaleye geçmek için lütfen buraya tıklayın.

Görünüm: 13811|Yanıt: 0

[JavaEE] JSP sayfa atlama ansiklopedisi

[Bağlantıyı kopyala]
Yayınlandı 3.01.2015 21:28:01 | | |

(1). forward() yöntemi
javax.servlet.RequestDispatcher sınıfını kullanın
RequestDispatcher rd = getServletContext().getRequestDispatcher("url");
rd.forward(requestVar, requestVar); Servletin giriş parametrelerini geçirin
Yani:
getServletContext().getRequestDispatcher("url").forward(requestVar,responseVar);

Sunucu tarafı servletleri çevirmenin 4 yolu vardır:
1. getRequestDispatcher() için ServletContext  
2. getNamedDispatcher() için ServletContext
3. getRequestDispatcher() için ServletRequest
4. ServletResponse'ın yönlendirme sendredirect() yönlendirmesi.
ileri yöntem, çünkü bunlar daha verimlidir. Servletresponse'ın sendredirect() yöntemini yalnızca ileri yöntemi mevcut olmadığında kullanın.

(2).response.sendRedirect(url);
Aslında, tarayıcıya özel bir başlık gönderir ve ardından tarayıcı belirtilen sayfaya döner; böylece sendRedirect kullanırken adres değişikliğini tarayıcının adres çubuğunda görebilirsiniz. Yeni sayfa, eski sayfanın sayfa bağlamını (istek, yanıt,... kaldıramaz. Nesne.
response.sendYönlendirme ardından, dönüş gelmelidir;

(3). HTML diline otomatik geçiş
<html>
<head>
<meta http-equiv="refresh" content="0;url="http://www.baidu.com">
0, 5 olarak ayarlanırsa, sıçramanın 5 saniye bekledikten sonra başladığı anlamına gelir
</head>
…………

(4). JavaScript atlaması
A:
<script languate="javascript">
window.location.replace("http://www.baidu.com");
</script>
B: Ayrıca window.location özniteliğine doğrudan bir değer atamak gerekir, window.location="url", ki bu değer A'dan farklı olarak geçmişi vardır
C:
<script languate="javascript">
document.location.href("http://www.google.com");
</script>
Document, konum bir nesne değildir, document.location=document.url
D:history nesnesinin forward(), back() ve go() yöntemleri bir şekillendirme giriş parametresi gerektirir
<a href="javascript:history.go(-1)" > önceki adıma geri</a> dön
<a href="javascript:history.back()" eşdeğeri > önceki adıma geri</a> dön
E:
document.formName.action="test.jsp";
document.formName.submit();   JS commit yöntemi
İlk tür:
<script language="javascript" type="text/javascript">
window.location.href="login.jsp?backurl="+window.location.href;
</script>
İkinci tür:
<script language="javascript">
alert ("return");
window.history.back(-1);
</script>
Üçüncü tür:
<script language="javascript">
window.navigate("top.jsp");
</script>
Dördüncü tip:
<script language="JavaScript">
self.location='top.htm';
</script>
Beşinci tip:
<script language="javascript">
uyarı("Yasa dışı erişim!") );
top.location='xx.jsp';
</script>

(5). <jsp:forward page="nextpage.jsp"/>
Gibi:
<jsp:forward page="/servlet/login" />
<jsp:forward page="/servlet/login">
<jsp:param name="kullanıcı adı" value="jsmith" />
</jsp:ilete>
<jsp:forward> etiketi, bir kullanıcı isteği içeren bir istek nesnesini bir JSP dosyasından diğerine iletir.
<jsp:forward>tag, yürütülmeyecek.
<jsp:param> etiketini kullanarak parametreleri ve değerleri nesne dosyasına aktarabilirsiniz; bu dosya parametreleri işleyebilen dinamik bir dosya olmalıdır.
Tamponlanmamış çıkış kullanıyorsanız, <jsp:forward> kullanırken dikkatli olun. Eğer jsp dosyasında <jsp:forward> kullanmadan önce zaten veri varsa, dosya çalıştırma hatalı olur.
JSP sayfa atlama yöntemi koleksiyonu
1. response.sendRedirct ("Sayfaya atla");
Bu yöntem, HTTP protokolünün HEADER kısmını tarayıcıya yönlendirme komutu verecek şekilde değiştirir; böylece tarayıcı yönlendirme web sayfasının içeriğini gösterir. Talep değeri geçmişe geçiremez.
Sayfaya geçmeden önce sayfadaki tüm kodu çalıştırın. Değiştirmek için adres çubuğuna atlayın.
Başka bir sunucuda response.sendRedirct(http://www.sun.com) sayfasına atlayabilirsiniz.
2.response.setHeader(); Bu yöntem, response.sendRedirect gibi, HTTP protokolünün HEADER kısmının değiştirilmesiyle yapılır.
<% response.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY); String
newLocn="/index.html"; response.setHeader("Location", newLocn); % >
3.<jsp:forward page="sayfa atla"/>
Bu yöntem, sunucunun mekanizmasını kullanarak önce tampona veri çıkarır, ardından tamponun içeriğini istemciye gönderir, orijinal göndermez, bunun yerine sayfanın içeriğini gönderir; eğer <jsp:forward> öncesinde çok fazla çıktı varsa, önceki çıktı tamponu doldurmuşsa, otomatik olarak istemciye çıkarılır, o zaman ifade çalışmaz, buna özel dikkat edilmesi gerekir.
Talep değeri geçmişten geçirebilir. Doğrudan sayfaya atlayın, aşağıdaki kod çalıştırılmaz. Adres çubuğu atladıktan sonra değişmeden kalır. Farklı bir sunucuda bir sayfaya geçemiyorum. Resim mutlak bir yol değil, gösterilemez.
4. request.getRequestDispatcher ("Sayfaya Atla"); Talep değeri geçmişten geçirebilir. Sayfaya geçmeden önce sayfadaki tüm kodu çalıştırın.
Atlama adres çubuğu değişmeden kalır. Başka bir sunucuda bir sayfaya atlayamazsınız <% RequestDispatcher rd = request.getRequestDispatcher("to.jsp"); rd.forward(request,response); %> Çıktıyı yönlendirmenin 3 yolu vardır: RESPONSE. SETREDERECT("URL") Bu yöntem, HTTP protokolünün HEADER kısmını değiştirerek tarayıcıya yönlendirme komutu vererek tarayıcının yönlendirilen web sayfasının içeriğini göstermesini sağlar.
response.sendRedirect("http://localhost:7001/index.html");
Aşağıdaki yöntem ayrıca HTTP HEADER özelliğini değiştirebilir; bu özellik 1 ile aynı şekilde çalışır. <%response.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY); String newLocn="/index.html"; response.setHeader("Location",newLocn); % >
< JSP:FORWORD > kabul edildi
Bu yöntem, sunucunun önce tampona veri çıkışı mekanizmasını kullanır; ardından tampon içeriği istemciye gönderilir, orijinal içerik göndermez, bunun yerine sayfanın içeriğini gönderir; eğer <JSP:FORWORD> öncesinde çok fazla çıktı varsa, önceki çıktı tamponu doldurmuş ve otomatik olarak istemciye gönderilir, o zaman ifade çalışmaz, buna özel dikkat edilmelidir.
Bir JSP sayfası içinde başka bir JSP sayfasını yuva etmenin üç yolu vardır:
1. <%@ include file="header.jsp"%> ile bu yöntem yalnızca statik sayfa yüklemesini sağlayabilir ve en yaygın olarak bir projede genel sayfa başlığı header.jsp ve footer.jsp yüklenmesini gerçekleştirmek için kullanılır.
2. <%@ include page="tt.jsp"%> ile bu yöntem dinamik sayfa yüklemesini gerçekleştirebilir, ancak parametreleri sayfaya aktarması gerekir;
3. <iframe src="jsp'nin yolu" > ile sayfaya başka bir jsp sayfası yükleyin; bu bir satırdası çerçevedir. Parametreyi aktarmak için forward kullanırsanız, şöyle yazabilirsiniz: <%String str="Giriş yaptınız!"; %>
<jsp:forward page="index.jsp>
<jsp:param name="name" value= <%=str%>/>
</jsp:ilete>




Önceki:JSP, oturum oturumunu yok eder ve kullanıcı girişini geçersiz kılar
Önümüzdeki:jstl etiketinin &lt;c:if&gt;
Feragatname:
Code Farmer Network tarafından yayımlanan tüm yazılım, programlama materyalleri veya makaleler yalnızca öğrenme ve araştırma amaçları içindir; Yukarıdaki içerik ticari veya yasa dışı amaçlarla kullanılamaz, aksi takdirde kullanıcılar tüm sonuçları ödemelidir. Bu sitedeki bilgiler internetten alınmakta olup, telif hakkı anlaşmazlıklarının bu siteyle hiçbir ilgisi yoktur. Yukarıdaki içeriği indirmeden sonraki 24 saat içinde bilgisayarınızdan tamamen silmelisiniz. Programı beğendiyseniz, lütfen orijinal yazılımı destekleyin, kayıt satın alın ve daha iyi orijinal hizmetler alın. Herhangi bir ihlal olursa, lütfen bizimle e-posta yoluyla iletişime geçin.

Mail To:help@itsvse.com