servlet的配置與基本操作


一、servlet的配置

servlet有兩種配置的方法
1.在web.xml文件中配置

<servlet>
    <servlet-name>loginServlet</servlet-name>
    <servlet-class>com.hwua.servlet.LoginServlet</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>loginServlet</servlet-name>
    <url-pattern>/login</url-pattern>
</servlet-mapping>

2.在servlet中用Java注解的方式配置
使用注解配置Servlet的步驟:

1. 在Servlet類上貼@WebServlet注解
2. 在web.xml文件中進行如下的配置
    metadata-complete="true":表示是否忽略Servlet上面的注解
    metadata-complete="false"表示是否不忽略Servlet上面的注解,缺省值

二、servlet生命周期

  • public void init(ServletConfig config):初始化方法,在第一次請求時調用,只在最初的時候調用一次.
  • public void service(ServletRequest req, ServletResponse res):服務方法
  • public void destroy():銷毀方法

三、在web.xml文件中設置/獲取初始化參數

1.作用域當前的servlet 寫在servlet標簽中

<init-param>
    <param-name>name</param-name>
    <param-value>admin</param-value>
</init-param>

過去參數 在init方法中

String name = config.getInitParameter("name");

2.上下文參數 寫在web-app標簽中

<context-param>
    <param-name>driver</param-name>
    <param-value>oracle.jdbc.OracleDriver</param-value>
</context-param>

獲取參數 在init方法中

    ServletContext servletContext = config.getServletContext();
    String initParameter = servletContext.getInitParameter("driver");

四、設置servlet啟動的時間

默認情況下servlet是在第一次被請求時啟動的
通過在web.xml文件中設置

<load-on-startup>1</load-on-startup>

注意:

load-on-startup 的參數是大於等於0的 負數沒有效果
load-on-startup 必須在參數init-param標簽的下面 否則init-param會失效

五、常用方法:

   String getContextPath():獲取上下文路徑,<Context path="上下文" ../>
   String getHeader(String headName):根據指定的請求頭獲取對應的請求頭的值.
   String getRequestURI():返回當期請求的資源名稱.  上下文路徑/資源名
   StringBuffer getRequestURL():返回瀏覽器地址欄的內容
   String getRemoteAddr():返回請求服務器的客戶端的IP

六、獲取請求參數的方法:

String getParameter(String name):根據參數名稱,獲取對應參數的值.
String[] getParameterValues(String name):根據參數名稱,獲取該參數的多個值.
Enumeration<String> getParameterNames():獲取所有請求參數的名字
Map<String,String[]> getParameterMap():返回請求參數組成的Map集合.
    key:參數名稱
    value:參數值,封裝在String數組中.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM