servlet

servlet:位於web服務器內部服務端的Java程序

一、作用

接收客戶端請求,響應客戶端數據

二、基本方法

  1. init
    說明:初始化,默認在第一次調用的時候初始化,通常只調用一次
  2. destory
    說明:清除初始化,在代碼更新的時候一般會先destory再init
  3. doGet
    說明:當提交方式是get的時候,默認調用的方法,可以接收請求或是響應
  4. doPost
    說明:當提交方式是post的時候,默認調用的方法,可以接收請求或是響應

三、目錄

在eclipse裏面,可以直接創建動態的web工程,也可以手動創建
這裏寫圖片描述
更改class創建的位置:
選中工程->右鍵Properties(Alt+enter)->Java Build Path->Source->Browse

四、創建

在eclipse裏面,可以直接創建servlet,也可以創建普通的類,需要繼承HttpServlet
注:若是運行環境(Target Runtime)爲Tomcat則可以直接導包(在Tomcat中lib裏有),否則手動導包。

五、註冊、映射

WEB-INF->web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
  <display-name>web</display-name>

  <!--打開的時候就加載的文件 -->
  <welcome-file-list>
    <welcome-file>test.html</welcome-file>
  </welcome-file-list>

  <!--註冊 -->
  <servlet>
    <servlet-name>Hello</servlet-name> <!--servlet名字 -->
    <servlet-class>servlet.Hello</servlet-class><!--路徑 -->
    <load-on-startup>1</load-on-startup><!--正數表示在啓動的時候自動初始化,數字表示順序,數字越大越後-->
  </servlet>

   <!--映射-->
  <servlet-mapping>
    <servlet-name>Hello</servlet-name><!--同上面的servlet名字對應,則表示是其的映射 -->
    <url-pattern>/H.servlet</url-pattern><!--訪問的地址 -->
  </servlet-mapping>
</web-app>

六、接收請求、響應數據

html

<body>
        <h1>開始測試</h1>
        <form action="H.servlet" method="post" id="userform">
            <lable>用戶名:</lable><input value="" name="username" id="username"></input><br>
            <lable>密&nbsp;&nbsp;&nbsp;&nbsp;碼:</lable><input value="" type="password" name="password"></input><br>
            <input type="submit" value="註冊"></input>
        </form>
</body>

Java

@Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        System.out.println("doGet```");
        System.out.println("正在執行...");
        //接收請求
        String username = req.getParameter("username");
        String password = req.getParameter("password");
        System.out.println(username + "--" + password);
        //響應數據
        PrintWriter pw = resp.getWriter();
        pw.print(username + "--" + password);
        pw.close();
        System.out.println("執行完畢...");
    }
發佈了38 篇原創文章 · 獲贊 1 · 訪問量 9422
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章