国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JSP > 正文

Servlet&jsp基礎:第一部分

2019-11-14 23:00:05
字體:
來源:轉載
供稿:網友
Servlet&jsp基礎:第一部分 聲明:原創作品,轉載時請注明文章來自SAP師太技術博客( 博/客/園www.cnblogs.com):www.survivalescaperooms.com/jiangzhengjun,并以超鏈接形式標明文章原始出處,否則將追究法律責任!原文鏈接:http://www.survivalescaperooms.com/jiangzhengjun/p/4288968.html

使用Servlet激活器... 5

缺省Servlet 6

Tomcat中的類裝載器... 6

Servlet 8

Servlet路徑映射... 8

ServletConfig接口... 9

獲取ServletContext對象(getServletContext... 9

獲取Servlet的注冊名(getServletName... 9

獲取Servlet初始化參數(getInitParameter... 9

GenericServletHttpServlet... 10

init方法... 10

service方法... 10

getServletInfo方法... 11

doXxx方法... 11

瀏覽器緩存與getLastModified方法... 13

ServletContext 16

獲取web應用的初始化參數(getInitParameter... 16

記錄日志(log... 17

訪問資源文件(getResourcePaths... 17

將虛擬路徑轉換成本地路徑(getRealPath... 18

Web應用程序之間的訪問(getContext... 19

其他方法(getMajorVersiongetMimeTypegetServerInfo... 19

使用Servlet激活器

配置一個Servlet時,一般要在自己項目中的web.xml配置<servlet><servlet-mapping>兩個元素,但con/web.xml中為我們提供了一個名叫invokerServlet5.5.30中已被注釋掉,我們需要去掉),如下:

<servlet>

<servlet-name>invoker</servlet-name>

<servlet-class>

org.apache.catalina.servlets.InvokerServlet

</servlet-class>

<init-param>

<param-name>debug</param-name>

<param-value>0</param-value>

</init-param>

<load-on-startup>2</load-on-startup>

</servlet>

它可以根據URL中提供的Servlet類信息而自動激活這個Servlet,而不需要我們再在自己的應用中的web.xmlj里另外配置一<servlet>,只需要配置<servlet-mapping>即可,配置如下:

<servlet-mapping>

<servlet-name>invoker</servlet-name>

<url-pattern>/servlet/*</url-pattern>

</servlet-mapping>

如現在有這樣一個Servletmypak.HelloWorldServlet,則這樣可以訪問http://localhost:8080/myapp/servlet/mypak.HelloWorldServlet。注意,每個Web應用程序中為Servlet激活器所映射的訪問路徑可以各不相同,但必須以“/*”結尾(比如這里去掉前面的/servlet也可以)。經過這樣的設置以后,即使某個Servlet程序沒有在web.xml文件中進行注冊,我們只需要將Servlet激活器所映射的訪問路徑中的通配符(*)替換為這個Servlet的完整類名,就可以通過Servlet激活器來調用這個Servlet程序。

缺省Servlet

如果某個Servlet的映射路徑(<servlet-mapping>元素中的<url-pattern>元素的值)僅僅為一個正斜杠(/),那么這個Servlet就成為當前Web應用程序的缺省Servlete。凡是在web.xml文件中找不到匹配的<servlet-mapping>元索的URL,它們的訪問請求都將交給缺省Servlet處理,也就是說,缺省Servlet用于處理所有其他Servlet都不處理的訪問請求。在<tomcat的安裝目錄>/conf/web.xml文件中,注冊了一個名稱為org.apache.catalina.servlets.DefaultServletServlet,并將這個Servlet設置為缺省Servlet。由于<tomcat的安裝目錄>/conf/web.xml文件的設置信息對該服務器上的所有Web應用程序都起作用,所以,服務器上的所有Web應用程序的缺省Setvlet都是org.apacbe.catalina.servlets.DefaultServlet

<servlet>

<servlet-name>default</servlet-name>

<servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>

</servlet>

當訪問Tomcat服務器中的某個靜態HTML文件和圖片時,實際上是在訪問這個缺省Setvlet,而這個缺省Servlet的處理方式通常是把靜態資源中的內容按字節原封不動地讀出來,然后再按字節流原封不動傳遞給客戶端,并且生成一些響應消息頭字段,例如,根據靜態資源的擴展名所映射的MIME類型生成Content-Type頭字段,根據靜態資源的大小生成Content-Length頭字段。

如果將conf/web.xml下的默認Servlet注釋掉,則非ServletJsp資源將不能訪問:

<!--servlet-mapping>

<servlet-name>default</servlet-name>

<url-pattern>/</url-pattern>

</servlet-mapping-->

注意,

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 久治县| 偏关县| 丰县| 金昌市| 普定县| 长治县| 郎溪县| 庄浪县| 贵南县| 韶关市| 格尔木市| 故城县| 鲁甸县| 鹤庆县| 郁南县| 乌兰县| 平远县| 柳江县| 拜泉县| 秦安县| 高州市| 文安县| 雷山县| 工布江达县| 井冈山市| 武功县| 琼中| 高邮市| 株洲市| 达尔| 崇义县| 宁安市| 图木舒克市| 新兴县| 龙井市| 扶余县| 建德市| 神木县| 科尔| 新巴尔虎右旗| 洮南市|