ae pessoal to estudando head first… e me bateu uma duvida… e queria aproveitar para tirar duas… primeiro é do codigo abaixo e a segunda é: Po assim a parte teorica to compreendendo tranquilo mais a sintaxe ainda é meio confuso seila sempre me atrapalho isso é normal? e outra… nao sei pq… mais sempre quando tento deletar uma pasta no tomcat ele bloqueia a pasta o arquivo e nao consigo mais deletar…
Eu nem quero avanaçar para o cap 5… do livro… pois to com dificuldade na implementacao… trocando as bolas hehe mais to estudando para aprender e nao para tirar a swcd no momento… eh tanto que nem os mini-teste to fazendo do livro… queria esse help de vcs flw!!
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class neto extends HttpServlet{
public void doGet(HttpServletRequest request,
HttpServletResponse response) throws IOException,ServletException{
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("<html>");
out.println("<body>");
out.println("sou eu camilo");
out.println("</body>");
out.println("</html>");
}
}
Basicamente vc usa o metodo post para formularios onde contem senha, upload de arquivos e textos grandes que excedem o tamanho máximo suportado na URL ( se não me engano é 255).
E o metodo get para forms com poucas informações, já que essas informações são transportadas via URL (é todo o conteudo depois do ?)
Um exemplo de form get é o do google.com, se vc reparar qdo vc clica em Pesquisar o conteudo do form vai parar na url.
hum…isso entendi… mais eu nao posso usar doPost sem form nao?
tipo so para exibir algo no browser como no codigo acima… nesse codigo se trocar para doPost ele nao executa pq nao é um form?
pq vc não implementa o metodo doPost?
sempre que vc invocar um servlet o metodo service vai ser chamado e de acordo com o tipo de solicitação(post, get, put…) ele vai chamar o metodo correspondente.
o metodo doPost recebe requisições do tipo post, que submete um formulario.
o metodo doGet recebe requisições do tipo get, que pode vir de um submit de formulario, mas normalmente vem de links html. é muito usado em sites de busca por exemplo, pela facilidade de vc fazer bookmark de determinada url ja com os parametros.
Acho que por padrão, as requisições feitas a partir de uma url ou de um link são feitas através de GET.
Isso é do HTTP e não do Java.
Se você quiser muito usar o doPost() você pode chamá-lo dentro do doGet() passando para ele os parâmetros request e response.
Ou ainda, você pode ter um outro método dentro da sua servlet que seja chamado a partir do doPost() e do doGet(), também recebendo o request e o response e executando a lógica que você quer…
Enfim…
São muitas as possibilidades.
Sobreescreva o doPost entao… polo doGet você não vai conseguir nada dele… seguinte… indico usar um outro metodo central para os dois
no netBeans ja vem com ele criado processRequest
ele sobreescreve o doGet e doPost para chamarem processRequest