91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

淺談servlet與jsp的關系

發布時間:2020-08-30 20:06:39 來源:腳本之家 閱讀:204 作者:52Hz 欄目:編程語言

servlet是用java語言編寫的,是一個java類。主要功能是用來接受、處理客戶端的請求,并把處理結果返回到客戶端顯示。Jsp是servlet發展后期的產物。在沒有jsp之前,servlet利用輸出流動態生成整個HTML頁面,輸出內容包括每一個HTML標簽和每個在HTML頁面中出現的內容。HTML文件包含大量標簽和大量靜態文本及格式等,以及所有的表現邏輯,包括布局、色彩及圖像等。這些內容都必須耦合在java代碼中,這樣就導致servlet開發效率低下,令人不勝其煩。jsp出現后彌補了不足,因為jsp文件是通過在標準的HTML頁面中插入java代碼形成的。其靜態的部分無需java程序控制,只有那些需要從數據庫讀取并根據程序動態生成信息時,才使用java腳本控制。所以jsp技術出現后,主要用jsp文件來動態生成HTML文件,然后返回客戶端顯示。現在的servlet,當需要將整個頁面作為結果返回時,不再由其自己去處理,而是調用jsp文件。

下面開發部署一個簡單的servlet程序來展示:

1.創建處理請求的servlet文件:

package com.servlet.study;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class HelloWorldServlet extends HttpServlet {
  @Override
  protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    super.doGet(req, resp);
  }
  @Override
  protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    resp.setContentType("text/html;charset=UTF-8");
    req.setCharacterEncoding("UTF-8");
    String userName = req.getParameter("username");
    String passWord = req.getParameter("password");
    PrintWriter out = resp.getWriter();
    out.print("<html>");
    out.print("<head>");
    out.print("<title>Helloworld</title>");
    out.print("</head>");
    out.print("<body>");
    out.print("<hr>");
    out.println("The username is "+userName);
    out.println("The password is "+passWord);
    out.print("</body>");
    out.print("</html>");
  }
}

2.創建HTML文件:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>用戶登錄頁面</title>
</head>
<body>
<h2 align="center">登錄系統</h2><hr>
<form action="helloworld_servlet" method = "post">//表單的action其實指明了servlet的url                
  <table>
    <tr>
      <td>用戶名</td>
      <td><input type="text" name="username"></td>
    </tr>
    <tr>
      <td>密碼</td>
      <td><input type="password" name="password"></td>
    </tr>
    <tr>
      <td><input type="reset" value="重填"></td>
      <td><input type="submit" value="提交"></td>
    </tr>
  </table>
</form>
</body>
</html>

3.在web.xml中配置servlet:

<servlet>
    <servlet-name>HelloWorldServlet</servlet-name>
    <servlet-class>com.servlet.study.HelloWorldServlet</servlet-class>//實現類4</servlet>
  <servlet-mapping>//映射
    <servlet-name>HelloWorldServlet</servlet-name>
    <url-pattern>/helloworld_servlet</url-pattern>//“/”是必須的
  </servlet-mapping>

 注:]servlet類必須繼承HttpServlet類,而且得重寫doGet、doPost方法,并創建out對象。doGet方法是HttpServlet類中處理get請求的方法,doPost處理post請求。在表單中聲明method,并在servlet類中編寫相對應方法即可,本例特為post請求。

以上就是本文的全部內容,希望本文的內容對大家的學習或者工作能帶來一定的幫助,同時也希望多多支持億速云!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

和平区| 五峰| 特克斯县| 双流县| 江津市| 白朗县| 棋牌| 陆良县| 灵山县| 乌苏市| 夏河县| 措美县| 松潘县| 陆良县| 竹山县| 克什克腾旗| 永川市| 延庆县| 德江县| 翼城县| 大宁县| 南澳县| 尼玛县| 太和县| 郑州市| 集安市| 华容县| 盐城市| 遵义县| 广昌县| 麻江县| 德江县| 永泰县| 汝阳县| 东乌珠穆沁旗| 广州市| 青冈县| 临江市| 高淳县| 东光县| 蒲城县|