服务器java实现web服务器的方法(论文范文)

java服务器  时间:2021-01-30  阅读:()

实用范文

《java实现web服务器的方法》Word格式可编辑含目录

精心整理放心阅读欢迎下载

文档信息

java实现web服务器的方法

目录

一、 HTTP协议的作用原理

(1)连接 Web浏览器与Web服务器建立连接

(2)请求 Web浏览器通过socket向Web服务器提交请求

(3)应答 Web浏览器提交请求后通过HTTP协议传送给We. . .

(4)关闭连接 当应答结束后

二、 Java实现Web服务器功能的程序设计

(1)创建Serveocket类对象

(2)等待、接受客户机连接到端口8080

(3)创建与socket字相关联的输入流itream和输出流o. . .

(4)从与socket关联的输入流itream中读取一行客户机. . .

(5)从请求信息中获取请求类型

(6)如果HTML文件存在

(7)关闭与相应Web浏览器连接的socket字

正文java实现web服务器的方法

在日常的开发中我们用过很多开源的web服务器例如tomcat、 apache等等。现在我们自己实现一个简单的web服务器基本的功能就是用户点击要访问的资源服务器将资源发送到客户端的浏览器。为了简化操作这里不考虑资源不存在等异常情况!以下是小编为大家搜索整理的java实现web服务器的方法希望能给大家带来帮助更多精彩内容请及时关注我们考试网!

一、 HTTP协议的作用原理

WWW是以Internet作为传输媒介的一个应用系统 WWW网上最基本的传输单位是Web网页。 WWW的工作基于客户机/服务器计算模型 由Web浏览器(客户机)和Web服务器(服务器)构成两者之间采用超文本传送协议(HTTP)进行通信。 HTTP协议是基于TCP/IP协议之上的.协议是Web浏览器和Web服务器之间的应用层协议是通用的、无状态的、面向对象的协议。 HTTP协议的作用原理包括四个步骤

(1)连接 Web浏览器与Web服务器建立连接打开一个称为socket(套接字)的虚拟文件此文件的建立标志着连接建立成功。

(2)请求 Web浏览器通过socket向Web服务器提交请求。 HTTP的请求一般是GET或POST命令(POST用于FORM参数的传递) 。 GET命令的格式为

GET路径/文件名HTTP/

文件名指出所访问的文件 HTTP/指出Web浏览器使用的HTTP版本。

(3)应答 Web浏览器提交请求后通过HTTP协议传送给Web服务器。 Web服务器接到后进行事务处理处理结果又通过HTTP传回给Web浏览器从而在Web浏览器上显示出所请求的页面。

例假设客户机与 8080/my d i建立了连接就会发送GET命令GET /mydi HTTP/.主机名为的Web服务器从它的文档空间中搜索子目

录mydir的文件.如果找到该文件 Web服务器把该文件内容传送给相应的Web浏览器。

为了告知Web浏览器传送内容的类型 Web服务器首先传送一些HTTP头信息然后传送具体内容(即HTTP体信息)  HTTP头信息和HTTP体信息之间用一个空行分开。

常用的HTTP头信息有

①HTTP 200 OK

这是Web服务器应答的第一行列出服务器正在运行的HTTP版本号和应答代码。代码“200 OK”表示请求完成。

②MIME_Ve ion

它指示M I ME类型的版本。

③content_type类型

这个头信息非常重要它指示HTTP体信息的M IME类型。如content_type text/html指示传送的数据是HTML文档。

④content_length长度值

它指示HTTP体信息的长度(字节)

(4)关闭连接当应答结束后 Web浏览器与Web服务器必须断开 以保证其它Web浏览器能够与Web服务器建立连接。

二、 Java实现Web服务器功能的程序设计

根据上述HTTP协议的作用原理实现GET请求的Web服务器程序的方法如下

(1)创建Serveocket类对象监听端口8080.这是为了区别于HTTP的标准TCP/IP端口80而取的;

(2)等待、接受客户机连接到端口8080得到与客户机连接的socket;

(3)创建与socket字相关联的输入流itream和输出流outstream;

(4)从与socket关联的输入流itream中读取一行客户机提交的请求信息请求信息的格式为 GET路径/文件名HTTP/

(5)从请求信息中获取请求类型。如果请求类型是GE T则从请求信息中获取所访问的HT ML文件名。没有HT ML文件名时则以作为文件名;

(6)如果HTML文件存在则打开HTML文件把H TTP头信息和HTML文件内容通过socket传回给Web浏览器然后关闭文件。否则发送错误信息给Web浏览器;

(7)关闭与相应Web浏览器连接的socket字。

下面的程序是根据上述方法编写的、可实现多线程的Web服务器以保证多个客户机能同时与该Web服务器连接。

程序1文件

用JAVA编写W e b服务器i mport .i mport .public class WebServer {public static void main(String args[]) {int i=1 PORT=8080;

Serveocket server=null

为提高学习交流本文整理了相关的实用范文有 《Java动态代理实现AOP的方法》 、 《Java Web服务器(应用服务器)》 、 《主流Java Web服务器(应用服务器)简介》 、 《Java与Java web的区别》 、 《java实现电脑定时关机的方法》 、 《Java实现点在线添加的方法》 、 《安装Web服务器》 、 《基于Java网络编程技术的WEB服务器》 读者可以在平台上搜索。

“java实现web服务器的方法”文档源于网络本人编辑整理。本着保护作者知识产权的原则仅供学习交流请勿商用。如有侵犯作者权益请作者留言或者发站内信息联系本人我将尽快删除。谢谢您的阅读与下载

萤光云(16元/月)高防云服务器自带50G防御

螢光云官網萤光云成立于2002年,是一家自有IDC的云厂商,主打高防云服务器产品。在国内有福州、北京、上海、台湾、香港CN2节点,还有华盛顿、河内、曼谷等海外节点。萤光云的高防云服务器自带50G防御,适合高防建站、游戏高防等业务。本次萤光云中秋云活动简单无套路,直接在原有价格上砍了一大刀,最低价格16元/月,而且有没有账户限制,新老客户都可以买,就是直接满满的诚意给大家送优惠了!官网首页:www....

香港物理服务器 E5-2660v2 16G 500GSSD 增送20G防御 688/月 华纳云

#年终感恩活动#华纳云海外物理机688元/月,续费同价,50M CN2 GIA/100M国际大带宽可选,超800G 防御,不限流华纳云成立于2015年,隶属于香港联合通讯国际有限公司。拥有香港政府颁发的商业登记证明,作为APNIC 和 ARIN 会员单位,现有香港、美国等多个地区数据中心资源,百G丰富带宽接入,坚持为海内外用户提供自研顶级硬件防火墙服务,支持T B级超大防护带宽,单IP防护最大可达...

HostKvm新上联通CUVIP线路VPS,八折优惠后1G内存套餐$5.2/月起

最近上洛杉矶机房联通CUVIP线路主机的商家越来越多了,HostKvm也发来了新节点上线的邮件,适用全场8折优惠码,基于KVM架构,优惠后最低月付5.2美元起。HostKvm是一家成立于2013年的国人主机商,提供基于KVM架构的VPS主机,可选数据中心包括日本、新加坡、韩国、美国、中国香港等多个地区机房,君选择国内直连或优化线路,延迟较低,适合建站或者远程办公等。以洛杉矶CUVIP线路主机为例,...

java服务器为你推荐
莫代尔和纯棉哪个好纯棉含莫代尔和100%莫代尔哪个好轿车和suv哪个好轿车和SUV 哪个开起来更舒适华为p40和mate30哪个好mate30 5G和p40 5G有什么区别?ps软件哪个好什么PS软件好海克斯皮肤哪个好LOL用100块是抽海克斯好还是抽蛮王的生化领主的活动还是直接买皮肤好dnf魔枪士转职哪个好dnf魔枪士转职哪个适合平民玩红茶和绿茶哪个好红茶好还是绿茶好?电动牙刷哪个好什么品牌的电动牙刷比较好?美国国际东西方大学明尼苏达大学(是莫瑞斯分校)和美国东北大学 应该去哪一个 是这个方面的专家回答啊!有偏见性的不要说!YunOS手机显示yunos停止运行是什么意思
七牛优惠码 新加坡主机 cdn服务器 php探针 空间出租 cn3 东莞服务器 php服务器 成都主机托管 广州服务器托管 qq空间打开很慢 pptpvpn 卡巴斯基官方下载 nano qq部落24-5 台式机主机 主机声音大 koss耳机 关闭qq空间申请 文件服务器硬件配置 更多