java跨系统接口传输文件 java跨服务器读取文件_java发送http请求


今天是学习Java的第26天。

今天的内容是运用学过的知识去做手写服务器的项目。

手写服务器的项目需要综合前面的知识,并在eclipse中建立框架。

预备知识:

编写服务器的内容和用到的知识点 :

1) Socket 编程

2) HTML

3) HTTP 协议

4) 反射

5) XML 解析

6) 服务器编写

Socket 编程:

C/S 结构:客户端与服务器端一次双向通信

B/S 结构:浏览器与服务器

相关练习程序:C/S结构:


java跨系统接口传输文件 java跨服务器读取文件_java发送http请求_02


java跨系统接口传输文件 java跨服务器读取文件_java发送http请求_03


在网页输入http://localhost:8005/

得到:


java跨系统接口传输文件 java跨服务器读取文件_服务器_04

结果

上面的得到的结果中也包含了HTTP的相关知识;

HTTP:Hypertext Transfer Protocol 超文本传输协议,是网 络应用层的协议,建立在 TCP/IP 协议基础上,HTTP 使用可 靠的 TCP 连接,默认端口为 80。 用户打开 Web 浏览器(常见的 HTTP 客户端),输入 URL 地址,就能接收到远程 HTTP 服务器端发送过来的网页,即 HTTP 遵循请求(Request)/应答(Response)模型。Web 浏览器 向 Web 服务器发送请求,Web 服务器处理请求并返回适当 的应答,所有 HTTP 连接都被构造成一套请求与应答。

HTTP 客户端和服务器分别由不同的软件开发商提供,它 们都可以用任意的编程语言编写,如用.NET 编写的客户程序 与用 Java 编写的服务器程序顺利通信,就必须遵守 HTTP 协议,这样才能彼此都懂对方发送的消息,HTTP 协议严格规 定了 HTTP 请求和 HTTP 响应的数据格式。


java跨系统接口传输文件 java跨服务器读取文件_java发送http请求_05


HTTP 请求格式 :

1) 请求方式、URI(统一资源定位符)、HTTP 协议/版本

2) 请求头 Request Header a) 请求头包含许多有关客户端环境和请求正文的有用信息。例如,请求头可以声明浏览器所用的语言,请求 正文的长度等。

3) 请求正文 Requet Content (只有在 post 方式才有) 请求头和请求正文之间必须有符号行(回车符或行结束符) ,请将求头分开。这个行非常重要,它表示请求头已结束,接 下来的是请求正文。通常 post 方式的数据存放于此,请求正文中可以包含客户提交的查询字符串等信息。在实际应用中, HTTP 请求正文可以包含更多的内容

HTTP 响应格式 :

1) HTTP 协议版本、状态代码、描述

2) 响应头(Response Head)

3) 响应正文(Respose Content)

HTML:

含义:HyperText Markup Language 超文本标记语言 用于描述网页文档的一种标记语言 。

表单 form :

作用:与用户之间进行交互

method:请求方式 get/post

get :数据量小,安全性低,默认方式

post :数据量大,安全性高

action:请求的服务器路径

id : (用户的的浏览器在文档里区分唯一性)前端区分唯一 性。

name:名称,后端(服务器)区分唯一性,获取值,只要提交数据 给后台(服务器)必须存在 name

例:


java跨系统接口传输文件 java跨服务器读取文件_服务器_06

代码

java跨系统接口传输文件 java跨服务器读取文件_服务器_07

浏览器显示

java跨系统接口传输文件 java跨服务器读取文件_java发送http请求_08


java跨系统接口传输文件 java跨服务器读取文件_服务器_09


java跨系统接口传输文件 java跨服务器读取文件_java发送http请求_10


java跨系统接口传输文件 java跨服务器读取文件_服务器_11

浏览器返回结果

Tomcat 简介:

Tomcat 是 在 SUN 公 司 的 JSWDK( JavaServer Web DevelopmentKit ,是 SUN 公司推出的小型 Servlet/JSP 调试工具)的基础上发展起来的一个优秀的 Servlet 容器,Tomcat 本身完全用 Java 语言编写。

需要注意安装过程;

tomcat文件夹作用:

“ lib ”目录下存放了tomcat运行的jar包。

“ logs ”中存放的是日志文件。

conf:目录文件夹中:存放相关的配置文件,作用是便于修改服务器代码运行规则,多为.xml文件。

“ temp ”中存放的是tomcat的临时文件,可以理解为缓存。

“ webapps ”想使用tomcat时,可以将自己的项目部署到此文件夹中。另外,此文件夹中也存放了默认的项目,也可以理解为放代码的容器。

“ work ”工作文件夹;存放jsp编译文件和java文件。

启动 Tomcat 服务器:startup.bat 关闭 Tomcat 服务器:shutdown.bat

Tomcat 的运行原理 :

客户浏览器发出要求访问特定的 Servlet 的请求。

1) Tomcat 服务器接收到客户请求并解析。

2) Tomcat 服 务 器 创 建 一 个 ServletRequest 对 象 , 在 ServletRequest 对象中包含了客户请求信息及其他关于客 户的信息,如请求头,请求正文,以及客户机的 IP 地址 等。

3) Tomcat 服务器创建一个 ServletResponse 对象

4) Tomcat服务器调用客户所请求的Servlet的service服务方 法,并且把 ServletRequst 对象和 ServletResponse 对象做 为参数传给该服务方法。

5) Servlet 从 ServletRequest 对象中可获取客户的请求信息。

6) Servlet 利用 ServletResponse 对象来生成响应结果。

7) Tomcat 服务器把 Servlet 生成的响应结果发送给客户。


java跨系统接口传输文件 java跨服务器读取文件_java发送http请求_12

图解

安装HttpWatch 便于分析网页数据

使用: IE 浏览器——> 查看——> 浏览器栏——> HttpWatch Professional

预备工作结束。

开始搭建手写服务器的项目框架


java跨系统接口传输文件 java跨服务器读取文件_java发送http请求_13

框架项目文件

编写 XML 文档 :


java跨系统接口传输文件 java跨服务器读取文件_java发送http请求_14


编写 IOCloseUtil 类:


java跨系统接口传输文件 java跨服务器读取文件_java发送http请求_15


Entity 实体类的编写 :


java跨系统接口传输文件 java跨服务器读取文件_服务器_16


Mapping 实体类的编写 :


java跨系统接口传输文件 java跨服务器读取文件_java发送http请求_17


解析 XML 文件:


java跨系统接口传输文件 java跨服务器读取文件_java发送http请求_18


晚安!