Java纯手打web服务器(二)】的更多相关文章

一.超文本传输协议 Web服务器和浏览器通过HTTP协议在Internet上发送和接收消息.HTTP协议是一种请求-应答式的协议——客户端发送一个请求,服务器返回该请求的应答.HTTP协议使用可靠的TCP连接,默认端口是80.HTTP的第一个版本是HTTP/0.9,后来发展到了HTTP/1.0,现在最新的版本是HTTP/1.1.HTTP/1.1由 RFC 2616定义(pdf格式). 本文只简要介绍HTTP 1.1的相关知识,但应该足以让你理解Web服务器和浏览器发送的消息.如果你要了解更多的细…
经常用Tomcat,不知道的以为Tomcat很牛,其实Tomcat就是用java写的,Tomcat对jsp的支持做的很好,那么今天我们用java来写一个web服务器 //首先得到一个server, ServerSocket server = new ServerSocket(9999); //等待用户进入 Socket sock = server.accept(); System.out.println("wait"); //创建一个输入流,加上你要发布的页面路径 FileInputS…
在日常的开发中,我们用过很多开源的web服务器,例如tomcat.apache等等.现在我们自己实现一个简单的web服务器,基本的功能就是用户点击要访问的资源,服务器将资源发送到客户端的浏览器.为了简化操作,这里不考虑资源不存在等异常情况.web服务基于的是HTTP协议,用户在浏览器的地址栏输入要访问的地址,服务器如何得到该地址是个关键.先看下一般的HTTP请求和响应报文的一般格式: HTTP 请求报文 HTTP 响应报文 web服务器获取一个用户的连接时,会初始化一个线程和用户通信,代码如下:…
在Java编程中,如何与Web服务器连接? 以下示例演示如何使用net.Socket类的sock.getInetAddress()方法与Web服务器连接. package com.yiibai; import java.net.InetAddress; import java.net.Socket; public class Connected2Server { public static void main(String[] args) { try { InetAddress addr; So…
https://gitee.com/lightsever/netcore_study/tree/master/server02_path 先上代码,首先我们把httpserver封装一下,以后用起来方便 这个封装里直接包装了一个简单的根据path去分路由表 如图 /abc  /aaa /con_abc 这几个路径指定了对应的http响应函数 ,或者响应对象 使用响应函数和响应对象没有任何区别,只是根据需要自行选择. 这就完成了一个httpserver 第二重要的功能:路由表 dotnet 平台有…
一.服务器 1.服务器 服务器:安装了服务器软件的计算机 2.服务器软件 服务器软件:接收用户的请求,处理请求,做出响应 3.Web 服务器软件 web 服务器软件:接收用户的请求,处理请求,做出响应. 在 web 服务器软件(web容器)中,可以部署 web 项目,让用户通过浏览器来访问这些项目. 二.常用的 Java 相关的 web 服务器软件 1.webLogic webLogic:Oracle 公司,大型的 JavaEE 服务器,支持所有的 Java规范,收费. 2.webSphere…
前文介绍了传统IO的WEB经典服务器 reactor模式前序:传统IO的WEB服务器设计 下面看看JAVA NIO的WEB服务器设计 NIO是基于事件驱动的,对于NIO来说,重要组件是Selector,其服务器代码为: 1 /* 2 * 流程总结: 3 * 1.初始时,只对accept事件感兴趣,selectionkey只有accept事件 4 * 2.当有连接进来时,处理完accept之后,对读事件感兴趣,selectionkey增加键read 5 * 3.不断循环selectionkey的键…
1.WEB服务器: 理解WEB服务器,首先你要理解什么是WEB?WEB你可以简单理解为你所看到的HTML页面就是WEB的数据元素,处理这些数据元素的应用软件就叫WEB服务器,如IIS.apache. WEB服务器与客户端打交道,它要处理的主要信息有:session.request.response.HTML.JS.CS等. 2.应用服务器: 应用服务器如JSP,处理的是非常规性WEB页面(JSP文件),他动态生成WEB页面,生成的WEB页面在发送给客户端(实际上当应用服务器处理完一个JSP请求并…
自从计算机软件开发进入网络时代,就开始涉及到通讯问题.在客户/服务器(也叫C/S应用)时期,每个软件都有自己的客户端和服务器端软件.并且客户端和服务器端之间的通讯协议差别也很大.后来随着互联网的发展,基于浏览器/服务器的应用逐渐成为主流,通讯协议也统一到HTTP协议.但是,在HTTP协议之上,如何处理来自客户端的请求信息,以及如何对请求进行回应,则经历了很长时间也没有统一下来.目前,对于这个问题的解决方案主要有两种,一个是CGI,另一个是Servlet. CGI(Common Gateway I…
web服务器软件 1. 相关信息 接收用户请求,处理请求,作出响应.在web服务器软件中,可以部署web项目,让用户通过浏览器访问这些项目. 常见的Java相关的web服务器软件: webLogic:Oracle公司,大型的javaEE服务器,支持所有的JavaEE规范,收费 webSphere:IBM公司,大型的javaEE服务器,支持所有的JavaEE规范,收费 JBOSS:JBOSS公司,大型的javaEE服务器,支持所有的JavaEE规范,收费 Tomcat:Apache基金组织,中小型…