servlet 方法是 servlet 生命週期的重要組成部分,用於根據使用者需求建立、操作和維護 Web 應用程式。 Servlet 方法建立、初始化、處理和關閉 Web 應用程式的操作週期。 Servlet 方法是用於開發可操作應用程式和呼叫 Web 容器來操作 Servlet 生命週期的重要功能。 servlet 提供了多種方法來發送請求、從伺服器獲取回應以及根據需要進行操作。
廣告 該類別中的熱門課程 JAVA SERVLET - 專業化 | 18 門課程系列 | 6 次模擬測驗開始您的免費軟體開發課程
網頁開發、程式語言、軟體測試及其他
伺服器端元件(servlet)是建立伺服器端應用程式的強大工具。使用 Servlet 建立基於 Web 的應用程式是一種基於元件、獨立於平台的解決方案,沒有 CGI 程式的效能限制。 Web 開發人員可以使用 servlet 快速有效地建立伺服器端應用程序,並且這些應用程式可以在任何支援 servlet 的 Web 伺服器上運行。在Java虛擬計算機內部,Servlet可以運作。當 servlet 在伺服器上執行時,瀏覽器未進行相容性測試。
Servlet 可以存取 Java API 系列,包括用於企業資料庫存取的 JDBC API。 javax.servlet 和 javax.servlet.http 套件中的幾個 Java 類別使用 servlet HTTP 協定。此外,servlet 可以存取特定於 HTTP 的呼叫庫,並可以利用 Java 語言的所有成熟功能,例如可移植性、效能、重複使用和崩潰保護。
通用 servlet 在操作 servlet 生命週期中使用和操作以下五個方法:
servlet 容器在 servlet 操作中只呼叫一次 init() 方法。此 inits() 方法通知 servlet 已投入使用。
以下條件之一必須與 init 方法一起使用:;[p ‘mi;/.
文法:
public void init(ServletConfig configs) throws ServletException{ //initialize servlet object and parameters. }
保存初始化函數和基本 Servlet 設定的 ServletConfig 物件傳遞給 init() 方法,如果發生錯誤,該方法將拋出 ServletException。
一旦 servlet 開始接收請求,servlet 容器就會呼叫 service() 方法,以便它可以做出反應。 Servlet容器也會將ServletResponse傳遞給資料庫和顯示頁面。
javax.servlet.ServletRequest 和 javax.servlet.ServletResponse 兩個物件幫助 servlet 處理客戶端請求。
文法:
public void service(ServletRequest requests, ServletResponse responses) throws ServletException{ //Pass servlet object and parameters. }
Servlet 容器建立一個名為 ServletConfig() 的 servlet 方法。它在物件生命週期的初始化期間提供給servlet。它包含一些初始參數或配置資料。建議在 web.xml 中保存 servlet 特定資訊。
文法:
public String getServletConfig(){ // Add servlet code. }
servlet 方法顯示或傳回來自容器的 servlet 資訊。此資訊可在 servlet 容器上進行操作。
文法:
public String getServletInfo(){ // Add servlet code. }
servlet destroys 方法關閉 servlet 生命週期和連線。它在顯示所需的輸出後結束 servlet 功能。
文法:
public void destroy(){ // End servlet connections. }
以下範例顯示 servlet 的不同方法及其依操作的輸出:
Hello World servlet 方法範例及其輸出。
HelloOutput.java:
代碼:
import java.io.IOException; import java.io.PrintWriter; import javax.servlet.Servlet; import javax.servlet.ServletConfig; import javax.servlet.ServletException; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; public class HelloOutput implements Servlet { private static final long serialVersionUID = 1L; public HelloOutput() { } ServletConfig configurates=null; @Override public void init(ServletConfig configurates) throws ServletException { this.configurates = configurates; System.out.println("Servlet Object initializes here."); } @Override public void destroy() { System.out.println("Close connection and End process here."); } @Override public ServletConfig getServletConfig() { return configurates; } @Override public String getServletInfo() { return "Educba Website"; } @Override public void service(ServletRequest request, ServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); PrintWriter printout = response.getWriter(); printout.println("<h2>Hello World First Example using " + "Servlet Methods.</h2>"); printout.close(); } }
web.xml:
<?xml version="1.0" encoding="UTF-8"?> <web-app id="WebApp_ID" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> <servlet> <servlet-name> HelloOutput </servlet-name> <servlet-class> com.educba.learn.HelloOutput </servlet-class> </servlet> <servlet-mapping> <servlet-name> HelloOutput </servlet-name> <url-pattern> /HelloOutput </url-pattern> </servlet-mapping> </web-app>
輸出:
帶有 getServletInfo() 方法輸出的 servlet 方法範例。
HelloOutput.java:
代碼:
import java.io.IOException; import java.io.PrintWriter; import javax.servlet.Servlet; import javax.servlet.ServletConfig; import javax.servlet.ServletException; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; public class HelloOutput implements Servlet { private static final long serialVersionUID = 1L; public HelloOutput() { } ServletConfig configurates=null; @Override public void init(ServletConfig configurates) throws ServletException { this.configurates = configurates; System.out.println("Servlet Object initializes here."); } @Override public void destroy() { System.out.println("Close connection and End process here."); } @Override public ServletConfig getServletConfig() { return configurates; } @Override public String getServletInfo() { return "Educba Website"; } @Override public void service(ServletRequest requests, ServletResponse responses) throws ServletException, IOException { response.setContentType("text/html"); PrintWriter printout = response.getWriter(); printout.println("<h2>Hello World First Example using " + getServletInfo() + ".</h2>"); printout.close(); } }
web.xml:
代碼:
<?xml version="1.0" encoding="UTF-8"?> <web-app id="WebApp_ID" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> <servlet> <servlet-name> HelloOutput </servlet-name> <servlet-class> com.educba.learn.HelloOutput </servlet-class> </servlet> <servlet-mapping> <servlet-name> HelloOutput </servlet-name> <url-pattern> /HelloOutput </url-pattern> </servlet-mapping> </web-app>
輸出:
帶有 html 元素及其輸出的 servlet 方法範例。
HelloOutput.java:
代碼:
import java.io.IOException; import java.io.PrintWriter; import javax.servlet.Servlet; import javax.servlet.ServletConfig; import javax.servlet.ServletException; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; public class HelloOutput implements Servlet { private static final long serialVersionUID = 1L; public HelloOutput() { } ServletConfig configurates=null; @Override public void init(ServletConfig configurates) throws ServletException { this.configurates = configurates; System.out.println("Servlet Object initializes here."); } @Override public void destroy() { System.out.println("Close connection and End process here."); } @Override public ServletConfig getServletConfig() { return configurates; } @Override public String getServletInfo() { return "Educba Website"; } @Override public void service(ServletRequest requests, ServletResponse responses) throws ServletException, IOException { response.setContentType("text/html"); PrintWriter printout = response.getWriter(); printout.print("<html><body>"); printout.println("<h5> Simple servlet method example </h5>"); printout.println("<p> Simple servlet method example </p>"); printout.print("</body></html>"); } }
web.xml:
Code:
<?xml version="1.0" encoding="UTF-8"?> <web-app id="WebApp_ID" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> <servlet> <servlet-name> HelloOutput </servlet-name> <servlet-class> com.educba.learn.HelloOutput </servlet-class> </servlet> <servlet-mapping> <servlet-name> HelloOutput </servlet-name> <url-pattern> /HelloOutput </url-pattern> </servlet-mapping> </web-app>
Output:
The servlet method plays an important role in web application functionality. It shows and defines about server and displays the output.
以上是Servlet 方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!