HTML Tutorials |
|
XML Tutorials |
|
Browser Scripting |
|
Server Scripting |
|
.NET (dotnet) |
|
Multimedia |
|
Web Building |
|
Java Tutorials |
|
Programming Langauges |
|
Soft Skills |
|
Database Tutorials |
|
Operating System |
|
Software Testing |
|
SAP Module |
|
Networking Programming |
|
Microsoft Office |
|
Accounting |
|
|
Segurando o pedido do cliente: Dar forma a dados |
|
|
A diferen�a no meio COME�A e AFIXA o m�todo
|
Quando o usu�rio incorpora a informa��o a um formul�rio e os cliques se submetem, h� duas maneiras que a informa��o pode ser emitida do browser ao usu�rio: no URL, ou dentro do corpo do pedido do HTTP.
O m�todo COME�AR, que foi usado no exemplo mais cedo, adiciona pares do nome/valor ao URL. Infelizmente, o comprimento do URL � deste m�todo somente trabalhos limitados, assim que se houver somente alguns par�metros. O URL poderia ser truncado se o formul�rio usasse um grande n�mero par�metro ou se os par�metros contivessem quantidades grandes de dados. Tamb�m, os par�metros passados no URL s�o vis�veis no campo de endere�o do browsernot o mais melhor lugar para que uma senha seja indicada.
A alternativa ao m�todo COME�AR � m�todo do BORNE. Este m�todo empacota os pares do nome/valor dentro do corpo do pedido do HTTP, que faz para um URL do l�quido de limpeza e n�o imp�e nenhuma limita��o do tamanho na sa�da dos formul�rios. � mais seguro.
|
Servi�o, doGet, e doPost cancelando |
Quando um pedido � feito, as m�os do motor de Servlet nos dados entrantes ao motor de Servlet, que processa o pedido, including dados do formul�rio, bolinhos, informa��o da sess�o, e de nome-valor do URL pares, em um objeto do tipo HttpServletRequest chamaram o objeto do pedido. Os metadata do cliente encapsulated como o objeto do tipo HttpServletResponse e s�o chamados o objeto da resposta. O motor de Servlet passa ambos os objetos enquanto os par�metros a Servlets prestam servi�os de manuten��o () ao m�todo.
O m�todo do servi�o do defeito () em servlets de um HTTP distribui o pedido a um outro m�todo baseado no m�todo de transfer�ncia do HTTP (o BORNE, COME�A, etc.) por exemplo, pedidos do BORNE do HTTP � distribu�do ao m�todo do doPost (), HTTP COME�A pedidos � distribu�do ao m�todo do doGet (), e assim por diante. Isto permite o Servlet de executar processar diferente em dados do pedido dependendo do m�todo de transfer�ncia. Desde que o roteamento ocorre no servi�o (), voc� geralmente n�o cancela o servi�o () em um HTTP Servlet. Instead, doGet da ultrapassagem () e/ou doPost (), etc., dependendo do tipo de pedido voc� espera.
O roteamento autom�tico em um HTTP Servlets � baseado simplesmente em uma chamada a request.getMethod (), que fornece o m�todo de transfer�ncia do HTTP. No motor de Servlets, os dados do pedido s�o j� preprocessed em uma lista do nome-valor pelo tempo onde o Servlet v� os dados, assim que em voc� poderiam simplesmente cancelar o m�todo do servi�o () em um HTTP Servlet sem perder nenhuma funcionalidade. Entretanto, isto faz o Servlet mais menos port�til, desde que � agora dependente em dados preprocessed do pedido.
Voc� deve cancelar o m�todo do servi�o () (para Servlets gen�rico) ou o doGet () e/ou m�todos do doPost () (para servlets do HTTP) para executar as tarefas necessitadas responder ao pedido. Muito frequentemente, isto significa EJBs de acesso executar as transa��es de neg�cio, ordenando a informa��o needed (no objeto do pedido ou em um objeto de JDBC ResultSet), e ent�o passando o �ndice para tr�s recentemente gerado ao JSP para o formato e a entrega ao cliente.
A maioria de opera��es que envolvem os formul�rios usam COME�AR ou uma opera��o do BORNE, assim que para a maioria de servlets que voc� cancela o doGet () ou o doPost (). Anotar que voc� pode executar ambos os m�todos para fornecer para ambos os tipos de entrada, ou passar simplesmente o objeto do pedido a um m�todo processando central
|
Sintaxe de usar o doGet
|
public void doGet (HttpServletRequest request,HttpServletResponse response)
throws ServletException, IOException
{
...servlet code goes here...
}
|
|
Sintaxe de usar o doPost
|
public void doPost (HttpServletRequest request,HttpServletResponse response)
throws ServletException, IOException
{
...servlet code goes here...
}
|
|
Todos os reais pe�-por-pedem o tr�fego em um HTTP Servlets s�o segurados no m�todo apropriado do doOperation (), including a ger�ncia da sess�o, o authentication do usu�rio, despachar EJBs e JSPs, e o acesso de caracter�sticas do iAS.
Se voc� tiver um Servlets que voc� pretenda chamar tamb�m usando um m�todo de RequestDispatcher incluir () ou enviar (), esteja ciente que a informa��o do pedido est� emitida j� n�o como o BORNE do HTTP, COME�AM, chamada dos m�todos etc. RequestDispatcher sempre o servi�o (). Ou seja se um servlet cancelar o doPost (), n�o pode processar qualquer coisa se um outro servlet o chamar, se o servlet de chamada acontecer ter recebido seus dados atrav�s do HTTP COME�AM. Para esta raz�o, ser certo executar rotinas para todos os tipos poss�veis da entrada, como explicado acima.
Anotar dados bin�rios arbitr�rios, como limas uploaded ou as imagens, podem ser problematic, desde que o conector da correia fotorreceptora traduz dados entrantes em pares do nome-valor pelo defeito. Voc� pode programar o conector da correia fotorreceptora para segurar corretamente este tipo dos dados e para empacot�-lo corretamente no objeto do pedido. Par�metros de acesso e armazenar os dados
Os dados entrantes encapsulated no objeto do pedido. Para o servlet do HTTP, o objeto do pedido � do tipo HttpServletRequest. Para o servlet gen�rico, o objeto do pedido � do tipo ServletRequest. O objeto do pedido contem todos os par�metros em um pedido, e voc� pode tamb�m ajustar seus pr�prios valores no pedido. O �ltimo � chamado atributo.
Voc� pode alcan�ar todos os par�metros em um pedido entrante usando o m�todo do getParameter ().
|
O seguinte exemplo descreve o uso do getParameter ()
|
String username = request.getParameter("accountNumber");
|
|
Voc� pode tamb�m ajustar-se e para recuperar valores no pedido objetar usando o setAttribute () e o getAttribute (), respectivamente.
|
O seguinte exemplo descreve o uso do setAttribute () |
request.setAttribute("accountNumber", "3284766");
|
|
Um exemplo completo que mostra o uso do m�todo do doGet em Servlets
|
Step1: Fazer o formul�rio do HTML
Step2: Fazer a p�gina correspondente de Servlets
|
Step1: Fazer o formul�rio do HTML
|
Aqui n�s estamos fazemos um HTML dar forma a form.html chamado que seja dado abaixo:
|
<html>
<head>
<title>Introductions</title>
</head>
<body>
<form method=GET action="/servlet/name">
If you don't mind me asking, what is your name?
<input type=text name="name"><P>
<input type=submit>
</form>
</body>
</html>
|
|
Step2: Fazer a p�gina correspondente de Servlets
|
Aqui n�s estamos fazemos um filr de Servlets chamado name.java porque n�s demos no trajeto do atributo da a��o em form.html como o nome que � dado abaixo:
|
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class name extends HttpServlet
{
public void doGet(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException
{
res.setContentType("text/html");
PrintWriter out = res.getWriter();
String name = req.getParameter("name");
out.println("<html>");
out.println("<head><title>Hello, " + name + "</title></head>");
out.println("<body>");
out.println("Hello, " + name);
out.println("</body></html>");
}
public String getServletInfo()
{
return "A servlet that knows the name of the person to whom it's" +
"saying hello";
}
}
|
|
Keywords:
Handling the Client Request:Form Data,asp net client,asp net data,vb net data,control data,data net,java client,data repeater
|
|
HTML Quizes |
|
XML Quizes |
|
Browser Scripting Quizes |
|
Server Scripting Quizes |
|
.NET (dotnet) Quizes |
|
Multimedia Quizes |
|
Web Building Quizes |
|
Java Quizes |
|
Programming Langauges Quizes |
|
Soft Skills Quizes |
|
Database Quizes |
|
Operating System Quizes |
|
Software Testing Quizes |
|
SAP Module Quizes |
|
Networking Programming Quizes |
|
Microsoft Office Quizes |
|
Accounting Quizes |
|
|