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

首頁 > 編程 > JSP > 正文

基于Jave的Web服務工作機制7

2024-09-05 00:17:05
字體:
來源:轉載
供稿:網友

sendStaticResource 方法是非常簡單的。它首先傳遞父路徑和子路徑給File類的構造器,從而對java.io.File類進行了實例化。

  File file = new File(HttpServer.WEB_ROOT, request.getUri());
  然后它檢查文件是否存在。如果存在,sendStaticResource 方法通過傳遞File對象來構造一個java.io.FileInputStream對象。然后調用FileInputStream 的read方法,將字節流寫如到OutputStream輸出。注意這種情況下, 靜態資源的內容也被作為原始數據被發送給了瀏覽器。

if (file.exists()) {
  fis  = new FileInputStream(file);
  int ch = fis.read(bytes, 0, BUFFER_SIZE);

  while (ch != -1) {
    output.write(bytes, 0, ch);
    ch = fis.read(bytes, 0, BUFFER_SIZE);
  }
}

  如果這個文件不存在,sendStaticResource 方法發送一個錯誤消息給瀏覽器。

String errorMessage = "HTTP/1.1 404 File Not Found/r/n"
  "Content-Type: text/html/r/n"
  "Content-Length: 23/r/n"
  "/r/n"
  "

File Not Found

";
  output.write(errorMessage.getBytes());

  編譯和運行應用程序

  為了編譯和運行應用,你首先需要解壓包含本文應用程序的.zip文件。你解壓的目錄成為工作目錄(working directory),它有三個子目錄: src/, classes/, 和 lib/。 要編譯應用程序需要在工作目錄輸入如下語句:

  javac -d . src/ex01/pyrmont/*.java
  這個-d 選項參數將結果寫到當前目錄,而不是src/ 目錄。

  要運行應用程序,在工作目錄中輸入如下語句:

  java ex01.pyrmont.HttpServer
  要測試你的應用程序,打開瀏覽器,在地址欄中輸入如下URL:

  http://localhost:8080/index.html
  你將可以看到瀏覽器中顯示的index.html 頁面。

  Figure 1. The output from the web server

  在控制臺(Console),你能看到如下內容:

  GET /index.html HTTP/1.1
  Accept: */*
  Accept-Language: en-us
  Accept-Encoding: gzip, deflate
  User-Agent: Mozilla/4.0 (compatible; MSIE 4.01; Windows 98)
  Host: localhost:8080
  Connection: Keep-Alive

  GET /images/logo.gif HTTP/1.1
  Accept: */*
  Referer: http://localhost:8080/index.html
  Accept-Language: en-us
  Accept-Encoding: gzip, deflate
  User-Agent: Mozilla/4.0 (compatible; MSIE 4.01; Windows 98)
  Host: localhost:8080
  Connection: Keep-Alive

  概要總結

  在本文中,你了解了一個簡單的WEB服務器的工作機制。本文附帶的應用程序源代碼只包含三個類,但并不是所有的都有用。盡管如此,它還是能被作為一種很好的學習工具為我們服務。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 双桥区| 钟山县| 麦盖提县| 社旗县| 安泽县| 额济纳旗| 松溪县| 循化| 濮阳市| 张掖市| 淮南市| 福泉市| 临漳县| 山丹县| 石门县| 台山市| 南城县| 眉山市| 东宁县| 边坝县| 昌图县| 汕尾市| 冀州市| 柘城县| 海南省| 措勤县| 琼海市| 化州市| 休宁县| 高清| 外汇| 稻城县| 拉孜县| 武宁县| 呈贡县| 阳高县| 海口市| 大方县| 承德县| 彰武县| 邹平县|