Vamos para um exemplo prático, crie um projeto pelo NetBeans(Veja aqui), coloque o nome de HelloServlet, e crie no pacote de códigos-fonte um pacote chamado controle, temos como estrutura final este projeto:
Repare que a action do form está chamando MinhaServlet, então vamos criar agora a servlet MinhaServlet. Dentro do pacote controle crie uma nova servlet, com o nome de MinhaServlet.java, o código dela será o seguinte:
@WebServlet(name = "MinhaServlet", urlPatterns = "/MinhaServlet") public class MinhaServlet extends HttpServlet { @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String nome = request.getParameter("nome"); response.getWriter().println("nome: " + nome); response.getWriter().println("Oiee... aqui é o metodo doGet"); } @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String nome = request.getParameter("nome"); response.getWriter().println("nome: " + nome); response.getWriter().println("Oiee... aqui é o metodo doPost"); } }Veja que como uma servlet normal ela estende a classe HttpServlet e implementa os métodos doGet e doPost, veja que os dois estão com praticamente o mesmo código, o que eles fazem? pegam o parâmetro nome que vai vir da nossa página index.jsp, e o imprime no navegador.
Aconselho fazer dois testes, para saber quando o doGet e o doPost são chamados, para testar basta trocar o method do form da nossa página index.jsp por GET, e comparar a resposta dada pela servlet... mas chega de enrolação porque o foco não é esse, e sim a anotação @WebServlet, veja que ela está logo acima da declaração da classe. Basicamente o que ela precisa para funcionar são as propriedades:
urlPatterns que será a url de como ele será chamado no navegador, e o name atributo necessário para nomear a Servlet. Enfim usando essa anotação não precisamos mais fazer isso:
O que acaba facilitando muito!MinhaServlet controle.MinhaServlet MinhaServlet /MinhaServlet
Nenhum comentário:
Postar um comentário
Deixe seu comentário... ;)