Você está aqui: Java Servlets ::: Dicas & Truques ::: URLs, Documentos e Páginas |
Como compartilhar dados entre um Servlet e uma página JSP usando o contexto do servletQuantidade de visualizações: 7912 vezes |
|
Em algumas situações precisamos transferir dados de um servlet para um outro servlet ou página JSP. Uma forma pela qual isso pode ser feito é usando o contexto do servlet (ServletContext). Comece analisando o seguinte servlet: ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
package estudos;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class MeuServlet extends HttpServlet{
public void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException,
IOException{
// cria uma instância da classe Pessoa
Pessoa p = new Pessoa();
p.setNome("Osmar J. Silva");
// vamos colocar o objeto p no contexto do servlet
getServletContext().setAttribute("pessoaBean", p);
// agora direcionamos para a página exibir.jsp
RequestDispatcher dispatcher = request.getRequestDispatcher("/exibir.jsp");
dispatcher.forward(request, response);
}
}
Veja que no método doGet() deste Servlet nós temos a criação de uma instância da classe Pessoa (Pessoa.java). Esta classe tem a seguinte estrutura: ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
package estudos;
public class Pessoa{
private String nome;
public String getNome(){
return this.nome;
}
public void setNome(String nome){
this.nome = nome;
}
}
Depois de criada a instância da classe nós a colocamos no contexto do servlet usando: ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
// vamos colocar o objeto p no contexto do servlet
getServletContext().setAttribute("pessoaBean", p);
O passo seguinte é direcionar a requisição atual para a página exibir.jsp (a View do MVC). Veja o código para esta página: ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
<jsp:useBean id="pessoaBean" scope="application" type="estudos.Pessoa" />
<html>
<head>
<title>Estudos Servlet</title>
<meta http-equiv="Content-Type" content="text/html;
charset=iso-8859-2">
</head>
<body>
<h4>Nome da pessoa: <jsp:getProperty name="pessoaBean"
property="nome" /></h4>
</body>
</html>
Aqui nós estamos usando <jsp:getProperty> para acessar um dos atributos do bean pessoaBean. Poderíamos usar JSTL e EL. Veja: ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<jsp:useBean id="pessoaBean" scope="application" type="estudos.Pessoa" />
<html>
<head>
<title>Estudos Servlet</title>
<meta http-equiv="Content-Type" content="text/html;
charset=iso-8859-2">
</head>
<body>
<h4>Nome da pessoa: <c:out value="${pessoaBean.nome}"/></h4>
</body>
</html>
|
|
|
Veja mais Dicas e truques de Java Servlets |
Dicas e truques de outras linguagens |
|
Ruby - Exercício Resolvido de Ruby - Como percorrer os elementos de um array em Ruby usando a função each |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |






