Academic Tutorials



English | French | Portugese | Dutch | Italian
Google

in linea

Domestico Codici sorgente E-Libri Trasferimenti dal sistema centrale verso i satelliti Metterseli in contatto con Circa noi

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 di vita di Servlets
Previous Next




Il ciclo di vita di Servlets ha i seguenti componenti:

  • Maneggiato dal contenitore di servlets.
  • Generare ed inizializzare i servlets.
  • Maniglie zero o più chiamate di servizio.
  • Distruggere e l'immondizia raccoglie i servlets.
  • I singoli servlets citano ad esempio per maneggiare ogni richiesta




L'architettura di Servlet o il ciclo di vita di base

Il contenitore di Servlet genera soltanto un caso di ogni servlet ma la richiesta di ogni utente è maneggiata con un filetto separato. Ogni filetto allora denomina i metodi del doPost o del doGet. Questa idea è indicata nel suddetto Figure-5.

il metodo del init 1.The dei servlets è denominato quando i servlets in primo luogo è generato ed ogni volta l'assistente riceve una richiesta per servlets, l'assistente depone le uova un nuovo metodo di servizio di chiamate del filetto.

il controllo di metodo di servizio 2.The il tipo di richiesta del HTTP (OTTENERE, REGOLAR, MESSO, CANCELLAZIONE, ecc.) e denomina il doGet, il doPost, il doPut, il doDelete, il metodo ecc. come adatto.

3.Finally, l'assistente può decidere rimuovere un servlet caricato precedente. In questo caso, le chiamate dell'assistente distruggono il metodo dei servlets.




HTTP

Prima che possiamo cominciare scrivere il primo Servlets, dobbiamo conoscere alcuni principi fondamentali del HTTP (“protocollo di trasferimento di hypertext„), il protocollo che è usato da un cliente di WWW (per esempio un browser) per trasmettere una richiesta ad un web server.

Il HTTP è il protocollo orientato chied-risposta. Una richiesta del HTTP consiste di un metodo di richiesta, di un URI, dei campi dell'intestazione e di un corpo (che possono essere vuoti). Una risposta del HTTP contiene i campi dell'intestazione ancora e di risultato e un corpo.

Il metodo di servizio di spedizione di HttpServlet una richiesta ai metodi differenti del Java per i metodi differenti di richiesta del HTTP. Riconosce i metodi standard HTTP/1.1 e non dovrebbe essere esclusa in sottoclassi a meno che dobbiate effettuare i metodi supplementari. I metodi riconosciuti sono OTTENGONO, MESSO, TESTA, ALBERINO, CANCELLAZIONE, OPZIONI e TRACCIA. Altri metodi sono risposti a con un errore difettoso del HTTP di richiesta. Un metodo XXX del HTTP è spedito al doXxx di metodo del Java, per esempio OTTIENE - > doGet. Tutti questi metodo prevedono i parametri “(req di HttpServletRequest, ricerca di HttpServletResponse)„. I doOptions e il doTrace di metodo hanno esecuzioni adatte di difetto e solitamente non sono esclusi. Il metodo CAPO (che è supposto per restituire le stesse linee dell'intestazione che un metodo di OTTEN restituirebbe, ma non include un corpo) è effettuato denominando il doGet ed ignorando tutta l'uscita che è scritta con questo metodo. Quel li lascia con il doPost e il doDelete del doPut del doGet di metodo di cui le esecuzioni di difetto in HttpServlet restituiscono un errore difettoso del HTTP di richiesta. Una sottoclasse di HttpServlet esclude uno o più dei questi metodo per fornire un'esecuzione espressiva.

I dati di richiesta sono passati a tutti i metodi con la prima discussione di tipo HttpServletRequest (che è una sottoclasse del codice categoria più generale di ServletRequest). La risposta può essere generata con i metodi della seconda discussione di tipo HttpServletResponse (una sottoclasse di ServletResponse).

Quando chiedete un URL nel web browser, il metodo di OTTEN è usato per la richiesta. Una richiesta di OTTEN non ha il corpo (cioè il corpo è vuoto). La risposta dovrebbe contenere il corpo con i dati di risposta ed i campi dell'intestazione che descrivono il corpo (particolarmente Soddisfare-Tipo e Soddisfare-Mettere). Quando trasmettete una forma del HTML, OTTENERE o INVIARE l'azione può essere usato. Con l'OTTEN chiedere i parametri sono estremità nel URL, con una richiesta che dell'ALBERINO sono transmited nel corpo. Richieste MESSE uso dei redattori del HTML e degli attrezzi di upload alle risorse di upload ad un web server ed alle richieste di CANCELLAZIONE di cancellare le risorse.




Tipi di Servlet

  • Metodo classico di Servlets-servizio ()
  • JSP's-Java Embeded nelle mascherine del HTML
  • HTTP Servlets-doGet & doPost ()
  • Rappresentazione Servlets-Generata dall'età visiva



  • Pacchetti in Servlets

    Ci sono due tipi di pacchetti disponibili in servlets che sono come segue:

    1.javax.servlet.*

    2.javax.servlet.http.*




    Interfacce in javax.servlet.*

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



  • classes in javax.servlet.*

  • GenericServlet
  • ServletInputStream
  • ServletOutputStream
  • ServletException
  • UnavailableException



  • Interfaces in javax.servlet.http.*

  • HttpServletRequest
  • HttpServletResponse
  • HttpSessionBindingListener
  • HttpSessionContext
  • HttpSession



  • classes in javax.servlet.http.*

  • Cookie
  • HttpServlet
  • HttpUtils
  • HttpSessionBindingEvent



  • Servlet Scope Objects

    The <minOccurs> indicator specify the minimum number of time an element can occur:

    There are four scope objects in servlets which enables the sharing information between web components. The scope objects and their corresponding Java classes are listed below:

  • Web Context javax.servlet.ServletContext
  • Request javax.servlet.HttpServletRequest
  • Session javax.servlet.http.HttpSession
  • Page javax.servlet.jsp.PageContext
  • Potete ottenere i valori di attributo dagli oggetti di portata di servlet usando il metodo del getAttribute e regolare i nuovi valori degli attributi usando il metodo del setAttribute. Per esempio, potete ottenere il IP address del cliente denominando il metodo del getRemoteAddr del codice categoria di HttpServletRequest.




    Seguire gli esempi stampa ciao il mondo nel 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");
    }
    }

    Per essere un servlet, un codice categoria dovrebbe estendere il HttpServlet ed escludere il doGet o doPost (o entrambi), secondo se i dati stanno trasmettendi vicino OTTIENE o per posta. Questi metodi prendono due discussioni: un HttpServletRequest e un HttpServletResponse. Il HttpServletRequest ha metodi che li lasciano scoprire circa le informazioni ricevute quali le intestazioni di dati della FORMA, di richiesta del HTTP ed i simili.

    Il HttpServletResponse ha metodo che li lascia specificare la linea di risposta del HTTP (200, 404, ecc.), le intestazioni di risposta (Soddisfare-Tipo, Regol-Biscotto, ecc.) e, per di più, li lascia ottenere un PrintWriter usato per trasmettere l'uscita di nuovo al cliente. Per il servlet semplice, la maggior parte dello sforzo è speso nelle dichiarazione del println che generano la pagina voluta. Si noti che il doGet e il doPost gettano l'eccezione due, in modo da siete tenuti ad includerli nella dichiarazione. Inoltre notare che dovete importare i codici categoria nel java.io (per PrintWriter, ecc.), javax.servlet (per HttpServlet, ecc.) e javax.servlet.http (per HttpServletRequest e HttpServletResponse). Per concludere, notare che il doGet e il doPost sono denominati con il metodo di servizio ed a volte potete desiderare escludere direttamente il servizio, per esempio per un servlet che maneggia entrambi OTTENGONO ed INVIANO la richiesta.




    Compilando ed installando il Servlet

    Si noti che i particolari specifici per l'installazione del servlet variano dal web server al web server. Riferir prego alla vostra documentazione di web server per i sensi definitivi. Gli esempi in linea stanno funzionando sul web server del Java (JWS) 2.0, dove il servlet si pensa che sia in un indice denominato servlets nella gerarchia dell'installazione di JWS. Tuttavia, ho disposto questo i servlets in un pacchetto separato (corridoio) per evitare i conflitti con altri servlets su questo assistente; desidererete fare lo stesso se state usando un web server che è usato dalla gente e non ha una buona infrastruttura per “gli assistenti virtuali„ per impedire automaticamente questi conflitti. Quindi, HelloWorld.java realmente va in un subdirectory denominato corridoio nell'indice di servlets.

    Si noti che installato sulla maggior parte degli altri assistenti è simile e i servlets e gli esempi di JSP nella lezione privata inoltre sono stati esaminati usando BEA WebLogic e IBM WebSphere 3.0. WebSphere ha un meccanismo eccellente per gli assistenti virtuali e non è necessario da usare solamente i pacchetti per impedire i conflitti nomi con altri utenti.

    Se non avete usato mai i pacchetti prima, ci sono due sensi principali compilare i codici categoria che sono in pacchetti.

    Il one-way è di regolare il vostro CLASSPATH per indicare all'indice sopra quello realmente che contiene i vostri servlets. Potete loro compilare normalmente da parte dell'indice. Per esempio, se il vostro indice basso è C:\JavaWebServer\servlets ed il vostro nome del pacchetto (e così nome del subdirectory) è il corridoio e voi erano su Windows, voi farebbe:

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

    La prima parte, regolante CLASSPATH, probabilmente desiderate fare permanente, piuttosto che ogni volta iniziate una nuova finestra del DOS. Di Windows 95 su /98 mettereste tipicamente “avete regolato CLASSPATH=…„ dichiarazione nella vostra lima di autoexec.bat in qualche luogo dopo la linea che ha regolato CLASSPATH per indicare a servlet.jar e a jsp.jar. Su Windows NT, andreste iniziare il menu, le regolazioni prescelte, il pannello di controllo prescelto, il sistema prescelto, ambiente prescelto, quindi entrate nella variabile e nel valore. Notare inoltre che se il vostro pacchetto fosse della forma name1.name2.name3 piuttosto che semplicemente di name1 come qui, tranquillo avreste il punto di CLASSPATH all'indice di alto livello della vostra gerarchia del pacchetto (l'un name1 contenente).

    Un secondo senso compilare i codici categoria che sono in pacchetti è andare all'indice sopra quello che contiene i vostri servlets ed allora “indice \ YourServlet.java del javac„ (Windows; notare il backslash) o “l'indice/YourServlet.java del javac„ (Unix; notare il taglio di andata). Per esempio, supporre ancora che il vostro indice basso è C:\JavaWebServer\servlets ed il vostro nome del pacchetto (e così nome del subdirectory) è il corridoio ed eravate su Windows. In quel caso, fareste seguire:

      Cd C:\JavaWebServer\servlets di DOS>
      Corridoio \ YourServlet.java del javac di DOS>

    Si noti che, su Windows, la maggior parte delle versioni del JDK 1.1 di javac richiedono un backslash, non un taglio di andata, dopo il nome di indice. Ciò è riparata in JDK 1.2, ma poiché molti assistenti di fotoricettore sono configurati per usare il JDK 1.1, molti autori di servlet attaccano con il JDK 1.1 per portabilità.

    Per concludere, un'altra opzione avanzata è di mantenere il codice sorgente in una posizione distinto dalle lime di .class ed usa opzione di d dei javac “-„ per installarla nella posizione che il web server prevede.




    Funzionamento del Servlet

    Con il web server del Java, il servlet è disposto nell'indice di servlets all'interno dell'indice principale dell'installazione di JWS ed è invocato via http://host/servlet/ServletName. Si noti che l'indice è plurale di servlets, mentre il URL si riferisce al servlet, singolare. Poiché questo esempio è stato disposto nel pacchetto del corridoio, sarebbe invocato via http://host/servlet/hall.HelloWorld. Altri assistenti di fotoricettore possono avere convenzioni un po'differenti su dove installare i servlets e su come invocarli. La maggior parte del assistente inoltre li ha lasciati definire gli pseudonimi per i servlets, di modo che un servlet può essere invocato via http://host/any-path/any-file.html. Il processo per fare questo è completamente assistente-specifico; controllare la documentazione del vostro assistente per vedere se ci sono i particolari.




    Un Servlet che genera il HTML

    La maggior parte del servlet genera il HTML, testo non normale come nell'esempio precedente. Per fare quello, avete bisogno di due punti supplementari: dire al browser a che stiate trasmettendo indietro il HTML e modifichiate le dichiarazione del println per sviluppare un Web page legale. Il primo punto è fatto regolando il Soddisfare-Tipo intestazione di risposta. Generalmente, le intestazioni possono essere regolate via il metodo del setHeader di HttpServletResponse, ma regolare il tipo soddisfatto è così operazione comune che ci è inoltre un metodo speciale del setContentType appena a questo fine. Si noti che dovete presentare le intestazioni di risposta realmente restituire c'è ne del soddisfare via il PrintWriter. Qui è un esempio:




    Il seguente programma denominato HelloWWW.java stamperà Hellow WWW nel browser nella disposizione del 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-2024 Vyom Technosoft Pvt. Ltd., All Rights Reserved.