J2EE/Servlets
Conceitos Básicos
editarServlets (servidorzinho) são classes Java que extendem javax.servlet.http.HttpServlet. Para começar a desenvolver servlets é preciso conhecer alguns conceitos:
- Request
Pensando em um Site de comércio web, quando alguem clica em um botão ou link, é feita um Request ao servidor. Quando este request chega ao Container, ele é encapsulado em um javax.servlet.http.HttpServletRequest
- Response
Após processar a requisição do cliente, o Container envia um Response ao Browser que enviou aquele Request. Ele é encapsulado em um javax.servlet.http.HttpServletResponse
- Método doGet
È a maneira mais simples de se informar parâmetros a servlet. Os parâmetros são passados via QueryString, ou seja, após a URL da servlet, adicione um ? e o nome=valor do parâmetro, caso haja mais de um, separe-os por & conforme o ex.:
http://localhost:8080/servlet?parametro1=valor1¶metro2=valor2
- Método doPost
É similar ao metodo doGet, porém os parâmetros não são visíveis na QueryString como no doGet.
Html
editarSendo mais prático, abaixo está o código de uma página que chama a MinhaPrimeiraServlet utilizando o metodo doGet:
<html> <body> <form action="servlet?parametro1=valor1¶metro2=valor2" method="get"> <input type="submit" value="Enviar" /> </form> </body> </html>
Se você não entendeu ou tem pouco conhecimento em html, é recomendado que você estude isto primeiro.
MinhaPrimeiraServlet
editarQuando o usuário clicar em Enviar, um Request vai chegar ao Container que chamará a servlet:
public class MinhaPrimeiraServlet extends HttpServlet { public void doGet(HttpServletRequest req, HttpServletResponse resp) throws Exception { //Obtêm o PrintWriter que será utilizado para printar o html PrintWriter out = resp.getWriter(); out.println("Minha Primeira Servlet"); out.close(); } }
Configuração
editarPara ser acessível, a servlet tem que estar configurada em um arquivo XML denominado Deployment Descriptor, que leva o nome de web.xml.
De modo simplista, a configuração desta servlet seria:
<servlet> <servlet-name>MinhaPrimeiraServlet</servlet-name> <servlet-class>wikibooks.MinhaPrimeiraServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>MinhaPrimeiraServlet</servlet-name> <url-pattern>/servlet</url-pattern> </servlet-mapping>
Esta página é um esboço de informática. Ampliando-a você ajudará a melhorar o Wikilivros. |