Academic Tutorials



English | French | Portugese | Dutch | Italian
Google

em linha

Home Códigos de fonte E-Livros Downloads Contatar-nos Sobre nós

HTML Tutorials
HTML Tutorial
XHTML Tutorial
CSS Tutorial
TCP/IP Tutorial
CSS 1.0
CSS 2.0
HLML
XML Tutorials
XML Tutorial
XSL Tutorial
XSLT Tutorial
DTD Tutorial
Schema Tutorial
XForms Tutorial
XSL-FO Tutorial
XML DOM Tutorial
XLink Tutorial
XQuery Tutorial
XPath Tutorial
XPointer Tutorial
RDF Tutorial
SOAP Tutorial
WSDL Tutorial
RSS Tutorial
WAP Tutorial
Web Services Tutorial
Browser Scripting
JavaScript Tutorial
VBScript Tutorial
DHTML Tutorial
HTML DOM Tutorial
WMLScript Tutorial
E4X Tutorial
Server Scripting
ASP Tutorial
PERL Tutorial
SQL Tutorial
ADO Tutorial
CVS
Python
Apple Script
PL/SQL Tutorial
SQL Server
PHP
.NET (dotnet)
Microsoft.Net
ASP.Net
.Net Mobile
C# : C Sharp
ADO.NET
VB.NET
VC++
Multimedia
SVG Tutorial
Flash Tutorial
Media Tutorial
SMIL Tutorial
Photoshop Tutorial
Gimp Tutorial
Matlab
Gnuplot Programming
GIF Animation Tutorial
Scientific Visualization Tutorial
Graphics
Web Building
Web Browsers
Web Hosting
W3C Tutorial
Web Building
Web Quality
Web Semantic
Web Careers
Weblogic Tutorial
SEO
Web Site Hosting
Domain Name
Java Tutorials
Java Tutorial
JSP Tutorial
Servlets Tutorial
Struts Tutorial
EJB Tutorial
JMS Tutorial
JMX Tutorial
Eclipse
J2ME
JBOSS
Programming Langauges
C Tutorial
C++ Tutorial
Visual Basic Tutorial
Data Structures Using C
Cobol
Assembly Language
Mainframe
Forth Programming
Lisp Programming
Pascal
Delphi
Fortran
OOPs
Data Warehousing
CGI Programming
Emacs Tutorial
Gnome
ILU
Soft Skills
Communication Skills
Time Management
Project Management
Team Work
Leadership Skills
Corporate Communication
Negotiation Skills
Database Tutorials
Oracle
MySQL
Operating System
BSD
Symbian
Unix
Internet
IP-Masquerading
IPC
MIDI
Software Testing
Testing
Firewalls
SAP Module
ERP
ABAP
Business Warehousing
SAP Basis
Material Management
Sales & Distribution
Human Resource
Netweaver
Customer Relationship Management
Production and Planning
Networking Programming
Corba Tutorial
Networking Tutorial
Microsoft Office
Microsoft Word
Microsoft Outlook
Microsoft PowerPoint
Microsoft Publisher
Microsoft Excel
Microsoft Front Page
Microsoft InfoPath
Microsoft Access
Accounting
Financial Accounting
Managerial Accounting


Ciclo de vida de Servlets
Previous Next




O ciclo de vida de Servlets tem os seguintes componentes:

  • Segurado pelo recipiente dos servlets.
  • Criar e inicializar os servlets.
  • Punho zero ou mais atendimentos técnicos.
  • Destruir e o lixo coleta os servlets.
  • Os únicos servlets citam como exemplo para segurar cada pedido




A arquitetura de Servlet ou o ciclo de vida básico

O recipiente de Servlet cría somente um exemplo de cada servlet mas o pedido de cada usuário é segurado com uma linha separada. Cada linha chama então os métodos do doGet ou do doPost. Esta idéia é mostrada no Figure-5 acima.

o método do init 1.The dos servlets está chamado quando os servlets são criados primeiramente e cada vez o usuário recebe um pedido para servlets, o usuário spawns um método novo do serviço das chamadas da linha.

a verificação do método do serviço 2.The o tipo do pedido do HTTP (COMEÇAR, AJUSTAR, POSTO, SUPRESSÃO, etc.) e chama o doGet, o doPost, o doPut, o doDelete, o método etc. como apropriado.

3.Finally, o usuário pode decidir-se remover um servlet carregado precedente. Neste caso, as chamadas do usuário destroem o método dos servlets.




HTTP

Antes que nós possamos começar escrever o primeiro Servlets, nós necessitamos saber alguns princípios de HTTP (de “protocolo de transferência hypertext”), o protocolo que é usado por um cliente de WWW (por exemplo um browser) emitir um pedido a um web server.

O HTTP é o protocolo orientado peç-resposta. Um pedido do HTTP consiste em um método do pedido, em um URI, nos campos do encabeçamento e em um corpo (que podem estar vazios). Uma resposta do HTTP contem campos do resultado e outra vez do encabeçamento e um corpo.

O método do serviço da expedição de HttpServlet um pedido aos métodos diferentes de Java para métodos diferentes do pedido do HTTP. Reconhece os métodos HTTP/1.1 padrão e não deve ser cancelado nos subclasses a menos que você necessitar executar métodos adicionais. Os métodos reconhecidos são COMEÇAM, POSTO, CABEÇA, BORNE, SUPRESSÃO, OPÇÕES e TRAÇO. Outros métodos são respondidos com um erro mau do HTTP do pedido. Um método XXX do HTTP é despachado ao doXxx do método de Java, por exemplo COMEÇA - > doGet. Todos estes método esperam os parâmetros “(req de HttpServletRequest, HttpServletResponse res)”. Os doOptions e o doTrace do método têm execuções apropriadas do defeito e não são cancelados geralmente. O método PRINCIPAL (que é suposto para retornar as mesmas linhas do encabeçamento que um método COMEÇAR retornaria, mas não inclui um corpo) é executado chamando o doGet e ignorando toda a saída que for escrita por este método. Esse deixa-nos com o doPost e o doDelete do doPut do doGet do método cujas as execuções do defeito em HttpServlet retornam um erro mau do HTTP do pedido. Um subclass de HttpServlet cancela um ou mais dos estes método para fornecer uma execução significativa.

Os dados do pedido são passados a todos os métodos com o primeiro argumento do tipo HttpServletRequest (que é um subclass da classe mais geral de ServletRequest). A resposta pode ser criada com os métodos do segundo argumento do tipo HttpServletResponse (um subclass de ServletResponse).

Quando você pede um URL no web browser, o método COMEÇAR está usado para o pedido. Um pedido COMEÇAR não tem o corpo (isto é o corpo está vazio). A resposta deve conter o corpo com os dados da resposta e os campos do encabeçamento que descrevem o corpo (especialmente Índice-Tipo e Índice-Codificar). Quando você emite um formulário do HTML, COMEÇAR ou AFIXAR a ação pode ser usado. Com COMEÇAR pedir os parâmetros são extremidade no URL, com um pedido que do BORNE são transmited no corpo. Pedidos POSTOS uso dos editores do HTML e das ferramentas do upload aos recursos do upload a um web server e aos pedidos da SUPRESSÃO suprimir recursos.




Tipos de Servlet

  • Método clássico do Servlets-serviço ()
  • JSP's-Java Embeded em moldes do HTML
  • HTTP Servlets-doGet & doPost ()
  • Visual Servlets-Gerado pela idade visual



  • Pacotes em Servlets

    Há dois tipos de pacote disponíveis nos servlets que são como segue:

    1.javax.servlet.*

    2.javax.servlet.http.*




    Relações em javax.servlet.*

  • RequestDispatcher
  • Servlet
  • ServletRequest
  • ServletResponse
  • ServletConfig
  • ServletContext
  • SingleThreadModel



  • classes em javax.servlet.*

  • GenericServlet
  • ServletInputStream
  • ServletOutputStream
  • ServletException
  • UnavailableException



  • Relações em javax.servlet.http.*

  • HttpServletRequest
  • HttpServletResponse
  • HttpSessionBindingListener
  • HttpSessionContext
  • HttpSession



  • classes em javax.servlet.http.*

  • Bolinho
  • HttpServlet
  • HttpUtils
  • HttpSessionBindingEvent



  • Objetos do espaço de Servlet

    O indicador do <minOccurs> especifica o número mínimo do tempo onde um elemento pode ocorrer:

    Há quatro objetos do espaço nos servlets que permite a informação compartilhando entre componentes da correia fotorreceptora. Os objetos do espaço e suas classes correspondentes de Java são alistados abaixo:

  • Contexto javax.servlet.ServletContext da correia fotorreceptora
  • Pedido javax.servlet.HttpServletRequest
  • Sessão javax.servlet.http.HttpSession
  • Página javax.servlet.jsp.PageContext
  • Você pode começar os valores do atributo dos objetos do espaço do servlet usando o método do getAttribute e ajustar valores novos dos atributos usando o método do setAttribute. Por exemplo, você pode começar o IP address do cliente chamando o método do getRemoteAddr da classe de HttpServletRequest.




    Seguir exemplos imprime Hello o mundo no browser
    import java.io.*;
    import javax.servlet.*;
    import javax.servlet.http.*;

    public class HelloWorld extends HttpServlet
    {
    public void doGet(HttpServletRequest request,
    HttpServletResponse response)
    throws ServletException, IOException
    {
    PrintWriter out = response.getWriter();
    out.println("Hello World");
    }
    }

    Para ser um servlet, uma classe deve estender o HttpServlet e cancelar o doGet ou o doPost (ou ambos), dependendo se os dados estão sendo emitidos perto COMEÇA ou por BORNE. Estes métodos fazem exame de dois argumentos: um HttpServletRequest e um HttpServletResponse. O HttpServletRequest tem os métodos que o deixam encontrar para fora sobre a informação entrante tal como encabeçamentos dos dados do FORMULÁRIO, do pedido do HTTP, e o gosto.

    O HttpServletResponse tem o método que o deixa especificar o mais importante a linha da resposta do HTTP (200, 404, etc.), os encabeçamentos da resposta (Índice-Tipo, Ajust-Bolinho, etc.), e, deixa-o obter um PrintWriter usado emitir para trás a saída ao cliente. Para o servlet simples, a maioria do esforço é gastado nas indicações do println que geram a página desejada. Anotar que o doGet e o doPost jogam a exceção dois, assim que você é requerido inclui-lo na declaração. Anotar também que você tem que importar as classes no java.io (para PrintWriter, etc.), javax.servlet (para HttpServlet, etc.), e javax.servlet.http (para HttpServletRequest e HttpServletResponse). Finalmente, anotar que o doGet e o doPost estão chamados pelo método do serviço, e às vezes você pode querer cancelar diretamente o serviço, por exemplo para um servlet que segure ambos COMEÇAM e AFIXAM o pedido.




    Compilando e instalando o Servlet

    Anotar que os detalhes específicos para instalar o servlet variam do web server ao web server. Consultar por favor a sua documentação do web server para os sentidos definitive. Os exemplos em linha estão funcionando no web server de Java (JWS) 2.0, onde o servlet se espera estar em um diretório chamado servlets na hierarquia da instalação de JWS. Entretanto, eu coloquei este servlets em um pacote separado (salão) para evitar conflitos com outros servlets neste usuário; você quererá fazer o mesmo se você estiver usando um web server que seja usado pelos povos e não tenha um infrastructure bom para “os usuários virtuais” para impedir automaticamente estes conflitos. Assim, HelloWorld.java vai realmente em um subdirectory chamado salão no diretório dos servlets.

    Anotar que setup em a maioria outros de usuários é similar, e os servlets e os exemplos de JSP no tutorial foram testados também usando BEA WebLogic e IBM WebSphere 3.0. WebSphere tem um mecanismo excelente para usuários virtuais, e não é necessário usar unicamente pacotes impedir os conflitos conhecidos com outros usuários.

    Se você nunca usar os pacotes antes, há duas maneiras principais compilar as classes que estão nos pacotes.

    O one-way é ajustar seu CLASSPATH para apontar ao diretório acima de esse que contem realmente seus servlets. Você pode eles compilar normalmente dentro do diretório. Por exemplo, se seu diretório baixo fosse C:\JavaWebServer\servlets e seu nome do pacote (e assim nome do subdirectory) fosse o salão, e você estavam em Windows, você faria:

    DOS> CLASSPATH= ajustado C:\JavaWebServer\servlets; %CLASSPATH%
    Cd C:\JavaWebServer\servlets\hall de DOS>
    Javac YourServlet.java de DOS>

    A primeira parte, ajustando CLASSPATH, você quer provavelmente fazer permanentemente, melhor que cada vez que você começa uma janela nova do DOS. Sobre você de Windows 95 /98 poria tipicamente “ajustou CLASSPATH=…” indicação em sua lima de autoexec.bat em algum lugar após a linha que ajustou CLASSPATH para apontar a servlet.jar e a jsp.jar. Em Windows NT, você iria começar o menu, ajustes seletos, painel de controle seleto, sistema seleto, ambiente seleto, a seguir incorpora a variável e o valor. Anotar também que se seu pacote for do formulário name1.name2.name3 melhor que simplesmente de name1 como aqui, você imóvel teria o ponto de CLASSPATH ao diretório top-level de sua hierarquia do pacote (o um name1 contendo).

    Uma segunda maneira compilar as classes que estão nos pacotes é ir ao diretório acima de esse que contem seus servlets, e então do “o diretório javac \ YourServlet.java” (Windows; anotar o backslash) ou do “o diretório javac/YourServlet.java” (Unix; anotar o slash para diante). Por exemplo, supôr outra vez que seu diretório baixo é C:\JavaWebServer\servlets e seu nome do pacote (e assim nome do subdirectory) é o salão, e você estava em Windows. Nesse caso, você faria seguir:

    Cd C:\JavaWebServer\servlets de DOS>
    Salão do javac de DOS> \ YourServlet.java

    Anotar que, em Windows, a maioria de versões do JDK 1.1 do javac requerem um backslash, não um slash para diante, após o nome de diretório. Isto é reparado em JDK 1.2, mas desde que muitos usuários da correia fotorreceptora são configurados para usar o JDK 1.1, muitos autores do servlet furam com JDK 1.1 para o portability.

    Finalmente, uma outra opção avançada é manter o código de fonte em uma posição distinto das limas de .class, e usa a opção de d dos javac “-” para instalá-las na posição que o web server espera.




    Funcionando o Servlet

    Com o web server de Java, o servlet é colocado no diretório dos servlets dentro do diretório principal da instalação de JWS, e invocado através de http://host/servlet/ServletName. Anotar que o diretório é plural dos servlets, quando o URL consultar ao servlet, singular. Desde que este exemplo foi colocado no pacote do salão, seria invocado através de http://host/servlet/hall.HelloWorld. Outros usuários da correia fotorreceptora podem ter convenções ligeiramente diferentes em onde instalar servlets e em como invocá-los. A maioria de usuário deixou-o também definir pseudônimos para servlets, de modo que um servlet pudesse ser invocado através de http://host/any-path/any-file.html. O processo para fazer isto é completamente usuário-específico; verificar a documentação do seu usuário para ver se há os detalhes.




    Um Servlet que gere o HTML

    A maioria de servlet gera HTML, texto nao liso como no exemplo precedente. Para fazer aquela, você necessita duas etapas adicionais: dizer ao browser que você está emitindo para trás o HTML, e modifica as indicações do println para construir um Web page legal. A primeira etapa é executada ajustando o Índice-Tipo encabeçamento da resposta. No general, os encabeçamentos podem ser ajustados através do método do setHeader de HttpServletResponse, mas ajustar o tipo satisfeito é uma tarefa tão comum que há também um método especial do setContentType apenas para esta finalidade. Anotar que você necessita ajustar os encabeçamentos da resposta antes realmente de retornar algum do índice através do PrintWriter. Está aqui um exemplo:




    O seguinte programa chamado HelloWWW.java imprimirá Hellow WWW no browser no formato do HTML.
    package hall;

    import java.io.*;
    import javax.servlet.*;
    import javax.servlet.http.*;

    public class HelloWWW extends HttpServlet
    {
    public void doGet(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException
    {
    response.setContentType("text/html");
    PrintWriter out = response.getWriter();
    out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 " +
    "Transitional//EN\">\n" +
    "<HTML>\n" +
    "<HEAD><TITLE&ht;Hello WWW</TITLE></HEAD>\n" +
    "<BODY>\n" +
    "<H1>Hello WWW</H1>\n" +
    "</BODY></HTML>");
    }
    }

    O/P:





    Previous Next

    Keywords: servlets lifecycle,servlet lifecycle,jsp lifecycle,struts lifecycle,ejb lifecycle,servlets tutorial,java servlets,j2ee servlets


    HTML Quizes
    HTML Quiz
    XHTML Quiz
    CSS Quiz
    TCP/IP Quiz
    CSS 1.0 Quiz
    CSS 2.0 Quiz
    HLML Quiz
    XML Quizes
    XML Quiz
    XSL Quiz
    XSLT Quiz
    DTD Quiz
    Schema Quiz
    XForms Quiz
    XSL-FO Quiz
    XML DOM Quiz
    XLink Quiz
    XQuery Quiz
    XPath Quiz
    XPointer Quiz
    RDF Quiz
    SOAP Quiz
    WSDL Quiz
    RSS Quiz
    WAP Quiz
    Web Services Quiz
    Browser Scripting Quizes
    JavaScript Quiz
    VBScript Quiz
    DHTML Quiz
    HTML DOM Quiz
    WMLScript Quiz
    E4X Quiz
    Server Scripting Quizes
    ASP Quiz
    PERL Quiz
    SQL Quiz
    ADO Quiz
    CVS Quiz
    Python Quiz
    Apple Script Quiz
    PL/SQL Quiz
    SQL Server Quiz
    PHP Quiz
    .NET (dotnet) Quizes
    Microsoft.Net Quiz
    ASP.Net Quiz
    .Net Mobile Quiz
    C# : C Sharp Quiz
    ADO.NET Quiz
    VB.NET Quiz
    VC++ Quiz
    Multimedia Quizes
    SVG Quiz
    Flash Quiz
    Media Quiz
    SMIL Quiz
    Photoshop Quiz
    Gimp Quiz
    Matlab Quiz
    Gnuplot Programming Quiz
    GIF Animation Quiz
    Scientific Visualization Quiz
    Graphics Quiz
    Web Building  Quizes
    Web Browsers Quiz
    Web Hosting Quiz
    W3C Quiz
    Web Building Quiz
    Web Quality Quiz
    Web Semantic Quiz
    Web Careers Quiz
    Weblogic Quiz
    SEO Quiz
    Web Site Hosting Quiz
    Domain Name Quiz
    Java Quizes
    Java Quiz
    JSP Quiz
    Servlets Quiz
    Struts Quiz
    EJB Quiz
    JMS Quiz
    JMX Quiz
    Eclipse Quiz
    J2ME Quiz
    JBOSS Quiz
    Programming Langauges Quizes
    C Quiz
    C++ Quiz
    Visual Basic Quiz
    Data Structures Using C Quiz
    Cobol Quiz
    Assembly Language Quiz
    Mainframe Quiz
    Forth Programming Quiz
    Lisp Programming Quiz
    Pascal Quiz
    Delphi Quiz
    Fortran Quiz
    OOPs Quiz
    Data Warehousing Quiz
    CGI Programming Quiz
    Emacs Quiz
    Gnome Quiz
    ILU Quiz
    Soft Skills Quizes
    Communication Skills Quiz
    Time Management Quiz
    Project Management Quiz
    Team Work Quiz
    Leadership Skills Quiz
    Corporate Communication Quiz
    Negotiation Skills Quiz
    Database Quizes
    Oracle Quiz
    MySQL Quiz
    Operating System Quizes
    BSD Quiz
    Symbian Quiz
    Unix Quiz
    Internet Quiz
    IP-Masquerading Quiz
    IPC Quiz
    MIDI Quiz
    Software Testing Quizes
    Testing Quiz
    Firewalls Quiz
    SAP Module Quizes
    ERP Quiz
    ABAP Quiz
    Business Warehousing Quiz
    SAP Basis Quiz
    Material Management Quiz
    Sales & Distribution Quiz
    Human Resource Quiz
    Netweaver Quiz
    Customer Relationship Management Quiz
    Production and Planning Quiz
    Networking Programming Quizes
    Corba Quiz
    Networking Quiz
    Microsoft Office Quizes
    Microsoft Word Quiz
    Microsoft Outlook Quiz
    Microsoft PowerPoint Quiz
    Microsoft Publisher Quiz
    Microsoft Excel Quiz
    Microsoft Front Page Quiz
    Microsoft InfoPath Quiz
    Microsoft Access Quiz
    Accounting Quizes
    Financial Accounting Quiz
    Managerial Accounting Quiz

    Privacy Policy
    Copyright © 2003-2022 Vyom Technosoft Pvt. Ltd., All Rights Reserved.