999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

Java 簡單HTTP Server的設計與實現

2018-12-21 21:23:46鄭嘉濤華南師范大學
數碼世界 2018年2期
關鍵詞:跨平臺語言方法

鄭嘉濤 華南師范大學

在現代社會中,互聯網的重要性不言而喻,據《中國互聯網發展報告2017》顯示,2016年中國數字經濟總量達到22.6萬億元,躍居全球第二,占GDP比重達30.3%,成為經濟增長的新引擎和新亮點。因此,互聯網仍然具有巨大的生機。本文主要論述互聯網的體系中HTTP協議及使用JAVA構建HTTP Server。

1 項目背景

HTTP協議是Web中B/S架構最重要的部分之一,它定義了客戶機與服務器間的通信的方法,最常用的方法就是GET、和POST,我們常使用GET方法來向服務器請求,使用POST方法來向服務器提交或者上傳。在HTTP協議中還有統一資源定位符URL,它是對互聯網上的資源的位置以及訪問方法的一種簡潔的表示,用來描述互聯網上的文件。

互聯網上有多種常見的服務器框架,例如著名的Apache Tomcat、Nginx等,那么為什么我們要使用JAVA的原生api來建立HTTP Server呢,因為盡管框架很多,但是基礎是類似的,而如果只是不斷的使用框架,那么我們是無法理解框架的本質的,因此我們需要使用原生api來建立HTTP Server。

2 具體實現

建立HTTP Server的方式有多種,這里采用了JAVA語言,因為JAVA語言是我們最一門設計良好的優秀的跨平臺語言,且JAVA在移動平臺上也得到了廣泛的應用,因此使用JAVA來建立HTTP Server,可以方便的在不同平臺上遷移,實現良好的跨平臺效果。

在PC上建立時我們可以使用127.0.0.1的環回地址進行測試,而在android上則可以使用如下代碼來獲取android設備的局域網地址,使用局域網地址和處于同一個局域網的電腦主機進行測試。

public static String getLocalIpStr(Context context){

WifiManagerwifiManager=(WifiManager)context.getSystemService(Context.WIFI_SERVICE);

WifiInfo wifiInfo=wifiManager.getConnectionInfo();

return intToIpAddr(wifiInfo.getIpAddress());

}

private static String intToIpAddr(int ip){

return (ip & 0xFF)+"."+ ((ip>>8)&0xFF) + "."+((ip>>16)&0xFF) + "."+ ((ip>>24)&0xFF);

}

2.1 代碼實現概述

基礎的HTTP Server中我們只需要實現GET方法和POST方法就可以建立起一個HTTP Server了。GET方法用來向服務器請求資源,當服務器接受到HTTP請求時,就檢查HTTP的頭部,如果頭部中有GET字段,就檢查服務器中是否有URL所請求的資源,如果有則返回,沒有則返回404錯誤信息。

對于POST方法,操作要復雜一些,因為這里是使用POST方法向HTTP Server發送,文件,需要HTTP Server做好接收,同時也需要HTTP Server對文件的信息進行判斷。本地上傳的最大問題就是大文件的上傳,如何將大文件分片并且上傳,同時保證傳輸不出錯,這就需要客戶端瀏覽器有一定的計算能力了,也就是要使用活動網頁的技術,使用JavaScript語言來在瀏覽器上對文件進行一定的控制。

2.2 代碼實現優化

在HTTP Server的構建過程中,我們應該想到將來可能遇到的變化,例如我們要對軟件進行升級以及維護。軟件開發中常常會有一些bug出現,時常出乎預料,因此我們要提前做好準備,預期后面的升級維護,否則面對越來越大的系統,要做改變時都會覺得無從下手。因此軟件開發過程中,要注重設計模式的思想,將接受請求的HTTP連接的類獨立出來,使用一個單體模式來獲得這個類的對象。使用工廠模式來創建HTTP連接的處理類,方便擴展更多功能。同時,系統應將不同的功能模塊獨立開發,每個模塊之間進行有機組合,降低整體復雜度。

3 結論

本文討論了實現HTTP Server的方法,并對HTTP協議進行了簡單分析,并使用JAVA語言編寫,最終實現簡單HTTP Server。

[1]David Gourley, Brian Totty, Marjorie Sayer, Sailu Reddy,Anshu Aggarwal 著. HTTP 權威指南[M]. 陳涓,趙振平譯. 北京:人民郵電出版社, 2012.

[2]王遠洋, 周淵平, 郭煥麗. Linux 下基于 Socket 多線程并發通信的實現[J]. 微計算機信息, 2009, 25(5).

[3]李芝新,楊瑞龍.Java程序設計之網絡編程[M].北京:清華大學出版社, 2009.

猜你喜歡
跨平臺語言方法
語言是刀
文苑(2020年4期)2020-05-30 12:35:30
跨平臺APEX接口組件的設計與實現
測控技術(2018年9期)2018-11-25 07:44:58
讓語言描寫搖曳多姿
累積動態分析下的同聲傳譯語言壓縮
用對方法才能瘦
Coco薇(2016年2期)2016-03-22 02:42:52
四大方法 教你不再“坐以待病”!
Coco薇(2015年1期)2015-08-13 02:47:34
我有我語言
捕魚
基于QT的跨平臺輸電鐵塔監控終端軟件設計與實現
基于OPC跨平臺通信的電機監測與診斷系統
主站蜘蛛池模板: 国产精品亚洲五月天高清| 69精品在线观看| 日韩一区二区三免费高清| 少妇精品在线| 久久久精品国产SM调教网站| 欧美国产成人在线| 国产99热| www.精品国产| 久久国产精品嫖妓| 91精品国产情侣高潮露脸| 女人天堂av免费| 国产精品jizz在线观看软件| 欧美人在线一区二区三区| 热思思久久免费视频| 国产免费羞羞视频| 日本三级黄在线观看| 久久成人免费| 67194成是人免费无码| 在线观看欧美精品二区| 日本AⅤ精品一区二区三区日| 欧美精品影院| 狂欢视频在线观看不卡| 日本高清视频在线www色| 色天天综合久久久久综合片| 国产在线欧美| 美女无遮挡免费视频网站| 91成人在线免费观看| 高清无码不卡视频| 国产中文在线亚洲精品官网| 亚洲第一香蕉视频| 婷婷综合色| 成人在线不卡| 好紧好深好大乳无码中文字幕| 91蝌蚪视频在线观看| 97精品国产高清久久久久蜜芽| 思思热精品在线8| 欧美.成人.综合在线| 国产三级精品三级在线观看| 热伊人99re久久精品最新地| 毛片在线播放网址| 亚洲一区免费看| 国产成人乱无码视频| 亚洲欧美日韩高清综合678| 99精品福利视频| 国产成人一级| 久久久久久久蜜桃| 欧美一区日韩一区中文字幕页| 国产毛片基地| 夜夜拍夜夜爽| 在线观看精品自拍视频| 日韩毛片基地| 久久综合九九亚洲一区| 99精品在线看| 精品福利一区二区免费视频| 精品国产成人a在线观看| 视频二区中文无码| 在线亚洲小视频| 欧美成人h精品网站| 亚洲日本韩在线观看| 看你懂的巨臀中文字幕一区二区 | 国产爽歪歪免费视频在线观看| 中文字幕亚洲专区第19页| 日韩在线第三页| 亚欧美国产综合| 国产杨幂丝袜av在线播放| 国产精品女主播| 亚洲国产综合第一精品小说| 无码粉嫩虎白一线天在线观看| 亚洲天堂视频在线观看免费| 国产成人1024精品下载| 精品无码国产自产野外拍在线| 亚洲a级毛片| 91精品综合| 一级毛片无毒不卡直接观看| 亚洲欧美色中文字幕| 国产综合日韩另类一区二区| 国内精品视频在线| 在线视频一区二区三区不卡| 久久久久国色AV免费观看性色| 免费无码又爽又刺激高| 青青操国产| 亚洲欧美日韩综合二区三区|