1 关闭socket

  ·1)socket套接字使用完毕之后,我们需要将起及时的关闭,正如输入输出流的关闭是一样的;在我上一篇文章中介绍了如何模拟httpClient发送请求数据;这里我还是使用上一篇文章中的代码做一个socket的关闭操作;我们一般是将socket放在finally{}代码块中去执行的,因为这部分总归是要执行的。

 public void communicate() throws Exception {try{StringBuffer sb = new StringBuffer("GET " + "/leoshop/AboutBlank.jsp" + " HTTP/1.1\r\n");sb.append("Host: localhost:8080\r\n");sb.append("Accept: */*\r\n");sb.append("Accept-Language: zh-cn\r\n");sb.append("Accept-Encoding: gzip, deflate\r\n");sb.append("User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 10.0)\r\n");sb.append("Connection: Keep-Alive\r\n\r\n");//发出HTTP请求OutputStream socketOut = socket.getOutputStream();socketOut.write(sb.toString().getBytes());socket.shutdownOutput();  //关闭输出流
InputStream socketIn = socket.getInputStream();BufferedReader br = new BufferedReader(new InputStreamReader(socketIn, "UTF-8"));String data;while ((data = br.readLine()) != null) {System.out.println(data);}}catch (IOException e){e.printStackTrace();}finally {try {//socket套接字的关闭if(socket!=null) socket.close();}catch (Exception e){e.printStackTrace();}}}

  1. socket以下的三个方法

    1. boolean closed = socket.isClosed();  //判断是否关闭socket,true表示关闭,false表示没有关闭;boolean connected = socket.isConnected(); //判断是否和远程主机连接,true表示连接,false表示没有。boolean bound = socket.isBound();  //判断该socket是否已经绑定了本地的端口,true表示绑定,flase表示没有

转载于:https://www.cnblogs.com/gosaint/p/8283169.html

关闭socket以及Socket选项相关推荐

  1. java网络编程Socket中SO_LINGER选项的用法解读

    http://blog.sina.com.cn/s/blog_6b1990eb0101171o.html 1:设置该选项: public void setSoLinger(boolean on, in ...

  2. python socket recvfrom_Python socket学习笔记(一)

    最近在看 Python的视频,针对socket 编程做一个笔记 一.socket是什么? socket 通常也称为"套接字",用于描述 IP 地址和端口,是一个通讯链的句柄.应用程 ...

  3. [Socket]BSD socket简易入门

    介绍 当你进入 UNIX 的神秘世界后,立刻会发现越来越多的东西难以理解.对于大多数人来说,BSD socket 的概念就是其中一个.这是一个很短的教程来解释他们是什么.他们如何工作并给出一些简单的代 ...

  4. Python Socket网络编程(一)初识Socket和Socket初步使用

    目录 前言 网络编程 实质 IP地址和端口 数据传输协议 协议 Socket 概念 套接字 socket对象方法 初步使用 功能 源码 运行结果 结语 前言 本系列博客是笔者学习Python Sock ...

  5. Raw Socket和Socket编程

    1.原始套接字(raw socket) 1.1 原始套接字工作原理与规则          原始套接字是一个特殊的套接字类型,它的创建方式跟TCP/UDP创建方法几乎是 一摸一样,例如,通过 CODE ...

  6. python socket tcp_python socket 模拟tcp通讯

    对于tcp server 端的创建而言, 分为如下步骤: 1,创建socket对象(socket):其中俩个参数分别为 Address Family(如AF_INET为ipv4),AF_INET6为i ...

  7. java socket smtp_JAVA Socket实现smtp发送邮件

    MAIN函数:Socketsocket=newSocket();LogPrinter.setConnectTime(socket,"66.96.163.96",25);方法:pub ...

  8. java socket 判断Socket连接失效

    要判断socket连接链路是否可用时,不能通过socket.isClosed() 和 socket.isConnected() 方法判断,要通过心跳包 socket.sendUrgentData(0x ...

  9. java socket oc_Java Socket编程(三) 服务器Sockets

    文章来源:aspcn 作者:孙雯 服务器Sockets 列表9.2是一个服务器应用程序的一部分. 列表9.2 一个简单的服务器程序 /** * 一个监听端口并提供HTML文档的程序. */ class ...

最新文章

  1. vector容器 begin()与end()函数、front()与back()的用法
  2. Django 路由分发
  3. Windows 7 VHD 启动
  4. Flash Alter v1.0 个性化Flash轮播图文播放器
  5. java hibernate的使用_《Hibernate快速开始 – 4 – 使用JAVA持久层 API (JPA)教程》
  6. 前端学习(2604):增加响应头可以获取数据
  7. 【转】3.2(译)构建Async同步基元,Part 2 AsyncAutoResetEvent
  8. Intellij IDEA 配置
  9. 国内大厂在移动端跨平台的框架接入分析
  10. onload 事件、DOMContentLoaded事件、DOM加载顺序
  11. 郁闷的.net程序员与坑爹的.net 4 client profile
  12. 【交通预测】基于matlab GUI交通预测四阶段法交通分配【含Matlab源码 1140期】
  13. 使用ActionForm的validate()进行验证
  14. java解析富文本内容_java 解析富文本处理 img 标签
  15. c语言判定条件 i什么意思,c语言 if(!x)中条件!x是什么意思
  16. Tair ldb(leveldb存储引擎)实现介绍
  17. UML --Package
  18. Android - 基于EasyAR SDK的AR红包的实现
  19. Swift编程语言简介
  20. 让 git输出颜色变成彩色的方法

热门文章

  1. Bochs调试Linux内核 - 定位内核中的变量或数据结构
  2. 超图桌面版加载obj 3D模型 - 2
  3. html and js 的隔行换背景色表格实例详解
  4. table表格细边框
  5. python基础复习
  6. PXE自动化装机(4)
  7. 补充知识:三元运算和逻辑运算
  8. java标识符的规则等
  9. xamarin学习之路 一、vs2015 环境搭建
  10. [转]linq to sql (Group By/Having/Count/Sum/Min/Max/Avg操作符)