Este artigo é um artigo espelhado de tradução automática, por favor clique aqui para ir para o artigo original.

Vista: 13811|Resposta: 0

[JavaEE] Enciclopédia de salto de página do JSP

[Copiar link]
Publicado em 03/01/2015 21:28:01 | | |

(1). método forward()
Use a classe javax.servlet.RequestDispatcher
RequestDispatcher rd = getServletContext().getRequestDispatcher("url");
rd.forward(requestVar,requestVar); Passe os parâmetros de entrada do servlet
Ou seja:
getServletContext().getRequestDispatcher("url").forward(requestVar,responseVar);

Existem 4 maneiras de virar servlets do lado do servidor:
1. getRequestDispatcher() para ServletContext  
2. getNamedDispatcher() para ServletContext
3. getRequestDispatcher() para ServletRequest
4. Envio de redirecionamento do ServletResponse para direcionar.
Método para frente, porque esses são mais eficientes. Use o método sendredirect() do servletresponse apenas quando o método forward não estiver disponível.

(2).response.senviarRedireção(url);
Na verdade, ele envia um cabeçalho especial para o navegador, e então o navegador volta para a página especificada, então, ao usar o sendRedirect, você pode ver a mudança de endereço na barra de endereços do navegador. A nova página não consegue lidar com o pagecontext(request, response,... da página antiga. Objeto.
response.sendRedirect deve ser seguido por um retorno;

(3). Salto automático para a linguagem HTML
<html>
<head>
<meta http-equiv="refresh" content="0;url="http://www.baidu.com">
0 é o tempo de espera, se definido para 5, significa que o salto começa após esperar 5 segundos
</head>
…………

(4). Salto JavaScript
Um:
<script languate="javascript">
window.location.replace("http://www.baidu.com");
</script>
B: Você também pode atribuir diretamente um valor ao atributo window.location, window.location="url", que é diferente de A por ter um histórico
C:
<script languate="javascript">
document.location.href("http://www.google.com");
</script>
Para document, localização não é um objeto, document.location=document.url
Os métodos forward(), back() e go() do objeto D:history exigem um parâmetro de entrada de modelação
<a href="javascript:history.go(-1)" > voltar ao passo anterior</a>
Equivalente a <a href="javascript:history.back()" > retorne ao passo anterior</a>
E:
document.formName.action="test.jsp";
document.formaNome.submit();   Método de commit em JS
O primeiro tipo:
<linguagem de script="javascript" tipo="texto/javascript">
window.location.href="login.jsp?backurl="+window.location.href;
</script>
O segundo tipo:
<script language="javascript">
alerta("retorno");
window.history.back(-1);
</script>
O terceiro tipo:
<script language="javascript">
window.navigate("top.jsp");
</script>
O quarto tipo:
<linguagem script="JavaScript">
self.localização='top.htm';
</script>
O quinto tipo:
<script language="javascript">
alerta ("Acesso ilegal!") );
top.localização='xx.jsp';
</script>

(5). <jsp:forward página="nextpage.jsp"/>
Como:
<jsp:forward page="/servlet/login" />
<jsp:página de encaminhamento="/servlet/login">
<jsp:param name="nome de usuário" value="jsmith" />
</jsp:forward>
<jsp:forward> passa um objeto de requisição contendo uma solicitação de usuário de um arquivo JSP para outro.
<jsp:forward>tag, não será executado.
Você pode usar a tag <jsp:param> para transferir parâmetros e valores para o arquivo objeto, que deve ser um arquivo dinâmico capaz de lidar com parâmetros.
Se você está usando saída sem buffer, tenha cuidado ao usar <jsp:forward>. Se o arquivo jsp já tiver dados antes de você usar <jsp:forward>, então a execução do arquivo estará errada.
Coleção de métodos de salto de página do JSP
1. response.sendRedirct ("Ir para a página");
Esse método modifica a parte HEADER do protocolo HTTP para emitir um comando de redirecionamento para o navegador, de modo que o navegador exiba o conteúdo da página web de redirecionamento. Solicitação não pode passar o valor além disso.
Execute todo o código na página antes de pular para a página. Vá para a barra de endereços para mudar.
Você pode pular para a page response.sendRedirct(http://www.sun.com) em outro servidor.
2.response.setHeader(); Esse método, assim como response.sendRedirect, é feito modificando a parte HEADER do protocolo HTTP.
<% response.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY); Corda
newLocn="/index.html"; response.setHeader("Location",newLocn); % >
3.<jsp:forward page="jump page"/>
Esse método usa o mecanismo do servidor para enviar dados para o buffer primeiro; antes de enviar o conteúdo do buffer para o cliente, o original não envia, mas sim o conteúdo da página; se houver muita saída antes do <jsp:forward> a saída anterior já encheu o buffer, será automaticamente enviada ao cliente, então a instrução não funcionará, isso deve receber atenção especial.
A solicitação pode transferir o valor para além disso. Vá direto para a página, o código a seguir não é executado. A barra de endereços permanece inalterada após o salto. Não consigo pular para uma página em outro servidor. A imagem não é um caminho absoluto que não pode ser exibido.
4. request.getRequestDispatcher ("Ir para a página"); A solicitação pode transferir o valor para além disso. Execute todo o código na página antes de pular para a página.
A barra de endereços de salto permanece inalterada. Você não pode pular para uma página em outro servidor <% RequestDispatcher rd = request.getRequestDispatcher("to.jsp"); rd.forward(request,response); %> Existem 3 formas de redirecionar a saída: RESPONSE. SETREDERECT("URL") Este método modifica a parte HEADER do protocolo HTTP para emitir um comando de redirecionamento para o navegador, de modo que o navegador exiba o conteúdo da página web redirecionada.
response.sendRedirect("http://localhost:7001/index.html");
O método a seguir também pode alterar a propriedade HTTP HEADER, que funciona da mesma forma que 1. <%response.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY); String newLocn="/index.html"; response.setHeader("Location",newLocn); % >
< JSP:FORWORD > é adotado
Esse método usa o mecanismo do servidor para enviar dados ao buffer primeiro; antes de enviar o conteúdo do buffer para o cliente, o original não envia, mas sim o conteúdo da página; se houver muita saída antes do <JSP:FORWORD> a saída anterior já preencheu o buffer e será automaticamente enviada ao cliente, então a instrução não funcionará, isso deve receber atenção especial.
Existem três maneiras de encaixar outra página do JSP dentro de uma página do JSP:
1. Por <%@ include file="header.jsp"%> esse método só consegue realizar carregamento estático de página, sendo mais comumente usado para realizar o carregamento de header.jsp e footer.jsp de cabeçalhos gerais de página em um projeto.
2. Ao <%@ include page="tt.jsp"%> esse método pode realizar carregamento dinâmico da página, mas precisa passar parâmetros para a página;
3. Carregue outra página jsp na página por <iframe src="jsp's path" >, que é um framework inline. Se você usar forward para passar o parâmetro, escreva assim: <%String str="Você está logado!"; %>
<jsp:página de encaminhamento="index.jsp>
<jsp:param name="name" valor= <%=str%>/>
</jsp:forward>




Anterior:O JSP destrói a sessão da sessão, invalidando o login do usuário
Próximo:Uso da tag jstl &lt;c:if&gt;
Disclaimer:
Todo software, material de programação ou artigos publicados pela Code Farmer Network são apenas para fins de aprendizado e pesquisa; O conteúdo acima não deve ser usado para fins comerciais ou ilegais, caso contrário, os usuários terão todas as consequências. As informações deste site vêm da Internet, e disputas de direitos autorais não têm nada a ver com este site. Você deve deletar completamente o conteúdo acima do seu computador em até 24 horas após o download. Se você gosta do programa, por favor, apoie um software genuíno, compre o registro e obtenha serviços genuínos melhores. Se houver qualquer infração, por favor, entre em contato conosco por e-mail.

Mail To:help@itsvse.com