日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

html与java接口,JavaWeb学习——Servlet相关的接口和类

發布時間:2024/8/23 java 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 html与java接口,JavaWeb学习——Servlet相关的接口和类 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

JavaWeb學習——Servlet相關的接口和類

摘要:本文主要學習了Servlet相關的接口和類。

Servlet的接口和類

三種方式

實現Servlet有三種方式:

實現javax.servlet.Servlet接口。

繼承javax.servlet.GenericServlet類。

繼承javax.servlet.http.HttpServlet類。

實現Servlet接口

Servlet接口是最基礎的接口,如果要使用Servlet,就要實現這個接口,或者繼承其他已經實現了這個接口的類。

創建一個類并實現Servlet接口:

1 public class TestServlet implements Servlet {

2 @Override

3 public ServletConfig getServletConfig() {

4 return null;

5 }

6

7 @Override

8 public String getServletInfo() {

9 return null;

10 }

11

12 @Override

13 public void service(ServletRequest req, ServletResponse res) throws ServletException, IOException {

14 System.out.println("service()方法被執行……");

15 }

16

17 @Override

18 public void init(ServletConfig config) throws ServletException {

19 System.out.println("init()方法被執行……");

20 }

21

22 @Override

23 public void destroy() {

24 System.out.println("destroy()方法被執行……");

25 }

26 }

繼承GenericServlet類

GenericServlet類實現并重寫了Servlet接口的一些方法,使得程序員在開發的時候只需要關注service()方法的實現就好。

創建一個類并繼承GenericServlet類:

1 public class TestServlet extends GenericServlet {

2 @Override

3 public void service(ServletRequest req, ServletResponse res) throws ServletException, IOException {

4 System.out.println("service()方法被執行……");

5 }

6 }

繼承HttpServlet類

HttpServlet類繼承了GenericServlet類,是對HTTP請求的特殊支持,由于開發的項目一般遵循HTTP協議,所以經常使用的是HttpServlet類。

在HttpServlet的service(HttpServletRequest, HttpServletResponse)方法會去判斷當前請求是GET還是POST,如果是GET請求,那么會去調用本類的doGet()方法,如果是POST請求會去調用doPost()方法,這說明在子類中去重寫doGet()或doPost()方法即可。

創建一個類并繼承HttpServlet類:

1 public class TestServlet extends HttpServlet {

2 @Override

3 protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {

4 super.doGet(req, resp);

5 }

6

7 @Override

8 protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {

9 super.doPost(req, resp);

10 }

11 }

其他的接口和類

ServletConfig接口

代表當前Servlet的配置信息,封裝了ServletContext對象和配置參數信息。

可以通過Servlet里面的getServletConfig()方法獲取:

1 public ServletConfig getServletConfig();

常用方法:

1 public String getServletName();// 獲取當前Servlet的友好名稱。

2 public ServletContext getServletContext();// 獲取ServletContext對象。

3 public String getInitParameter(String name);// 獲取初始化參數,初始化參數可以在web.xml配置文件的標簽里的標簽里設置。

4 public Enumeration getInitParameterNames();// 獲取全部初始化參數,初始化參數同樣需要在web.xml配置文件的標簽里的標簽里設置。

ServletContext接口

代表當前Web應用,服務器為每個Web應用程序都創建一個對應的ServletContext對象,被所有客戶端共享。當Web應用啟動時自動創建,當Web應用關閉和重新啟動、服務器關閉時都會造成ServletContext銷毀。

可以通過ServletConfig里面的getServletContext()方法獲取:

1 public ServletContext getServletContext();

常用方法:

1 public String getServletContextName();// 獲取當前項目的名稱。

2 public String getServerInfo();// 返回Servlet容器名稱和版本號。

3 public ServletContext getContext(String uripath);// 通過路徑獲取ServletContext對象。

4 public String getContextPath();// 獲取服務器上當前項目的相對目錄。比如:/HelloWorld。

5 public String getRealPath(String path);// 得到指定文件的真實路徑,從應用程序根目錄開始。比如:TestServlet得到的是盤符:\文件夾\工作空間\項目名稱\WebContent\TestServlet。

6 public Set getResourcePaths(String path);// 得到指定相對路徑下的文件夾名和文件名,從應用程序根目錄開始,指定路徑必須以/開頭。比如:/得到的是應用程序根目錄下的內容。

7 public URL getResource(String path) throws MalformedURLException;// 得到指定相對路徑下的地址,從應用程序根目錄開始。比如:/得到的是jndi:/域名/項目名/。

8 public InputStream getResourceAsStream(String path);// 將指定文件轉化為流以便讀取,從應用程序根目錄開始。比如:index.html可以獲取到應用程序根目錄下的index.html并轉為流。

9 public RequestDispatcher getRequestDispatcher(String path);// 創建跳轉到指定路徑的轉發器,從應用程序根目錄開始,指定路徑必須以/開頭。

10 public RequestDispatcher getNamedDispatcher(String name);// 創建跳轉到指定Servlet名的轉發器,不需要也不能以/開頭。

11 public String getInitParameter(String name);// 獲取指定的初始化參數,初始化參數需要在web.xml配置文件的標簽里設置。

12 public Enumeration getInitParameterNames();// 獲取所有指定的初始化參數,初始化參數也需要在web.xml配置文件的標簽里設置。

13 public boolean setInitParameter(String name, String value);// 設置初始化參數,效果同在web.xml配置文件的標簽里設置的一樣。

14 public Object getAttribute(String name);// 通過屬性名獲取屬性對象。

15 public Enumeration getAttributeNames();// 獲取全部屬性名。

16 public void setAttribute(String name, Object object);// 設置屬性名和屬性對象。

17 public void removeAttribute(String name);// 通過屬性名刪除屬性對象。

RequestDispatcher接口

RequestDispatcher實例對象是由Servlet引擎創建的,用于包裝一個要被其他資源調用的資源,并可以通過其中的方法將客戶端的請求轉發給所包裝的資源。

RequestDispatcher接口中定義了兩個方法:forward()方法和include()方法。forward()和include()方法接收的兩個參數,必須是傳遞給當前Servlet的service()方法的ServletRequest和ServletResponse對象,或者是對它們進行了包裝的ServletRequestWrapper和ServletResponseWrapper對象。

可以通過ServletContext對象的getRequestDispatcher()方法和getNamedDispatcher()方法獲取:

1 public RequestDispatcher getRequestDispatcher(String path);

2 public RequestDispatcher getNamedDispatcher(String name);

請求轉發:

1 // 該方法用于將請求從一個Servlet傳遞到服務器上另外的Servlet、Jsp頁面或者Html文件,由當前的Servlet發送給另一個Servlet,該方法必須在響應被提交給客戶端之前調用。

2 // 在當前的Servlet中可以給請求設置屬性,設置的響應頭信息不回被忽略,但是設置的響應體信息可能會被忽略。

3 public void forward(ServletRequest request, ServletResponse response) throws ServletException, IOException;

請求包含:

1 // 該方法用于在響應中包含Servlet、Jsp頁面或者Html文件,由當前的Servlet發送給客戶端,必須要在當前Servlet中設置編碼格式。

2 // 當前Servlet和要包含的資源都可以設置響應體,按先后順序輸出到客戶端。

3 public void include(ServletRequest request, ServletResponse response) throws ServletException, IOException;

請求轉發與請求包含比較:

請求轉發大多是應用在Servlet中,轉發目標大多是Jsp頁面。

請求包含大多是應用在Jsp頁面中,完成多頁面的合并。

總結

以上是生活随笔為你收集整理的html与java接口,JavaWeb学习——Servlet相关的接口和类的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: av综合导航 | av色成人| 性高湖久久久久久久久aaaaa | 亚洲v欧美| 欧美老熟 | 超碰免费在线观看 | 成人欧美一级特黄 | 国产精品成人一区 | 久久久精品视频免费 | 欧美专区视频 | 一本一道波多野结衣一区二区 | www.亚洲天堂.com | 久久久久久久久久久免费 | 人妻丝袜一区二区三区 | 成人免费黄色av | 碧蓝之海动漫在线观看免费高清 | 阿娇全套94张未删图久久 | 人成免费在线视频 | 日本久久久久久久久久 | 亚洲精品无人区 | 欧美一区亚洲一区 | 久久久久亚洲av成人片 | 99热只有 | 免费一区二区在线观看 | 亚洲一区日韩 | 久久99国产精品 | 国产精品高潮呻吟久久 | 有码视频在线观看 | 一区免费| a免费观看| 久久精品国产亚洲AV高清综合 | 中文字幕乱码一区二区 | 黄色av电影在线 | 直接看的av | 国产精品国产三级国产aⅴ原创 | 日韩一级影片 | 日韩一区二区三区四区五区 | 男女视频久久 | 麻豆91视频 | 久久在线免费观看视频 | 国产人与禽zoz0性伦 | www国产在线| 综合色88 | 狠狠干成人 | 日本不卡视频在线播放 | 黄色片日韩 | 亚洲精品在线视频免费观看 | 亚洲午夜精品久久久久久app | 国产在线观看xxx | 秋霞7777鲁丝伊人久久影院 | 99资源在线| 久久综合亚洲色hezyo国产 | 粉色午夜视频 | 日韩免费毛片 | 日韩视频精品一区 | 国产精品探花一区二区在线观看 | 亚洲免费中文 | 超碰激情在线 | 国产做爰xxxⅹ性视频国 | 黄视频在线 | 亚洲一级av无码毛片精品 | 痴女扩张宫交脱垂重口小说 | 少妇与公做了夜伦理69 | 91在线精品一区二区三区 | 国产精品久久中文字幕 | 日批视频在线 | 欧美成人精品一区二区三区在线观看 | 带aaa级的网名| 欧美一级片在线免费观看 | 天堂va蜜桃一区二区三区漫画版 | av免费资源 | 九九热视频在线免费观看 | 欧美日韩免费在线 | 少妇脚交调教玩男人的视频 | 国产精品第一页在线观看 | 国产第三区 | 欧美三级午夜理伦三级小说 | 91成人免费网站 | 国产黄色视屏 | 日韩免费毛片 | 成人音影| 国产精品探花一区二区三区 | 二级毛片在线观看 | 国产精品av一区 | 精品无码一区二区三区爱欲 | 521av在线 | 72成人网| 欧美黄色a视频 | 性视频免费| 国产精品亚洲二区 | 日韩欧美一区二区三区视频 | 伊人免费在线 | 少女情窦初开的第4集在线观看 | 精品国偷自产国产一区 | 中文天堂资源在线 | 人妻夜夜爽天天爽三区麻豆av网站 | 亚洲精品中文字幕 | 激情九月天 | 国产又粗又猛又爽又 |