Http是一个基于请求/响应模式的,无状态的协议.

请求

响应

package com.atChina.chat.demo04;import java.io.BufferedWriter;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.Date;public class MyHttp {private ServerSocket server;public static void main(String[] args){MyHttp myHttp = new MyHttp();myHttp.start();}public void start(){try {server = new ServerSocket(9999);receive();} catch (IOException e) {e.printStackTrace();}}public void receive(){try {Socket client = server.accept();byte[] bts = new byte[20480];int len = client.getInputStream().read(bts);String requestInfo = new String(bts, 0, len).trim();// 将请求打印System.out.println(requestInfo);// 响应体StringBuilder responseContent = new StringBuilder();responseContent.append("<html><head><title>你好</title></head><body>hello world!!<body></html>");// 响应头StringBuilder response = new StringBuilder();// HTTP协议版本, 状态代码, 描述response.append("HTTP/1.1 200 OK\r\n");// 服务器版本信息response.append("Server:china Server/0.0.1\r\n");response.append("Date:").append(new Date()).append("\r\n");response.append("Content-type:text/html;charset=utf-8\r\n");response.append("Content-Length:").append(responseContent.toString().getBytes().length).append("\r\n");response.append("\r\n");response.append(responseContent);BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(client.getOutputStream()));bw.write(response.toString());bw.flush();bw.close();} catch (IOException e) {e.printStackTrace();}}public void stop(){}
}

最原始的将html"返回"给浏览器,就是写在字符串中,然后用输出流输出这些字符串。 html写在字符串中,很不方便,所以jsp技术慢慢发展起来。

java: http请求和响应相关推荐

  1. Java 技术篇 - 启动web服务接收浏览器请求并响应实例演示,解决socket响应浏览器显示中文乱码问题,web服务response响应设置浏览器显示字体方法

    先看下效果图: 我通过 127.0.0.1:10010 访问我启用服务的效果图. 后台接收到的前台请求如下: GET / HTTP/1.1 Host: 127.0.0.1:10010 Connecti ...

  2. Java web—Servlet的请求与响应

    前言:         在家上网课快上疯了╰(‵□′)╯,上课连课本都没有,太难受了呜呜呜~, 只能在blog里记录一下这段时间的学习的内容,太难了- 一.servlet概述: 运行在WEB服务器端的 ...

  3. java 响应 请求参数_spring基础----请求与响应的参数(一)

    这里面我们主要介绍一下spring中关于请求和响应参数数据的问题.爱,从来就是一件千回百转的事.不曾被离弃,不曾受伤害,怎懂得爱人?爱,原来是一种经历. spring中的请求与响应 一.spring中 ...

  4. java 请求url 返回数据_java后台发起get请求获取响应数据|chu

    本文实例为大家分享了java后台发起get请求获取响应数据,供大家参考,具体内容如下 学习记录: 话不多说直接上代码: package com.jl.chromeTest; import java.i ...

  5. Java Web(day05) —— 请求和响应

    一.Java web之请求和响应 Servlet最主要作用就是处理客户端请求并作出回应,为此,针对每次请求,Web容器在调用service()之前都会创建两个对象,分别是HttpServletRequ ...

  6. 【Java web】请求转发响应重定向

    文章目录 简介 请求转发 响应重定向 使用时机 简介 请求转发和响应重定向是Java web中两种资源跳转的方式.简单来说,对于完成一次请求需要许多特定的资源(如已经写好的页面或另一个Servlet) ...

  7. java http打印请求日志_spring打印http接口请求和响应

    在程序日志中打印出接口请求和响应的内容是一个基本的技术需求.如果在每个接口中实现请求响应的日志打印,程序编写会很繁琐,我们可以利用spring提供的机制,集中处理接口请求响应的日志打印. 具体的代码参 ...

  8. 优雅地记录http请求和响应的数据

    点击关注公众号,Java干货及时送达 来源:https://fredal.xin/http-body-recorder 经常会遇到需要处理 http 请求以及响应 body 的场景. 而这里比较大的一 ...

  9. Spring Boot 2.x基础教程:如何扩展XML格式的请求和响应

    在之前的所有Spring Boot教程中,我们都只提到和用到了针对HTML和JSON格式的请求与响应处理.那么对于XML格式的请求要如何快速的在Controller中包装成对象,以及如何以XML的格式 ...

最新文章

  1. R语言dist函数距离计算实战(欧几里得距离、曼哈顿距离)
  2. uk visa application(bachelor at uk,physically at home,graduate studies uk)
  3. Git命令集之八——提交命令
  4. SwiftUI之深入解析高级动画的几何效果GeometryEffect
  5. unity 使用tile_如何使用Tile从网上查找电话
  6. 剑指offer_第一个只出现一次的字符
  7. SQL中 ROW_NUMBER 函数的用法
  8. MongoDB聚合(二)
  9. plsql为字段添加自增主键
  10. 找到的比较全的tcp/ip的协议号
  11. EXCEL中的数据分析—描述统计
  12. java 系统临时目录_在java中创建临时文件夹
  13. Oracle EBS 值层次结构查询SQL
  14. 原生JavaScript实现连缀调用
  15. nittest html报告,学业水平测评复习nit3-5.doc
  16. c语言中指针用法初级,C语言中各类指针的用法(小结)
  17. Candence PCB Si 仿真设计篇1:为仿真文件添加ibis模型
  18. 强化学习实践七:给Agent添加记忆功能
  19. 年薪35w带12人团队,内推阿里被拒了。。。
  20. Cynthia项目缺陷管理系统

热门文章

  1. 区块链学习(6)区块链
  2. javascript基础(幼兔、小兔成兔数量等典型例题)
  3. Hibernate关联查询
  4. Linux 2.6 内核定时器
  5. C# WinForm 弹出模式窗口操作滚动条
  6. 掉坑里了,小记一下.
  7. Winpcap进行抓包,分析数据包结构并统计IP流量
  8. android - 拍照
  9. Vue组件实现函数防抖
  10. WireShark 实例分析笔记(概念)