tcp-java中TCP怎么重连,发送数据?

问题描述

java中TCP怎么重连,发送数据?

s = new Socket(this.getIp(),61111);
pw = new PrintWriter(s.getOutputStream(),true);
pw.println(str);
pw.println(str2);
pw.println(str3);


上面是部分TCP。
1、我用TCP发送数据,上面有3次发送。但是假设在
pw.println(str2);时断开了连接。
我想要重新连接S(不通过new Socket(.....)),可不可以,怎么连(请写几句代码)??

2、发送数据时pw的println()和print()有什么区别啊?
3、如果我想发送byte[]数组,该怎么弄?

解决方案

你需要监测网络断开,一般来说在无论是服务器,还是客户端都会将对数据的接收放在一个线程中,同时在此线程中完成对 TCP 断开的监测。

java socket判断连接中断

解决方案二:

1、我用TCP发送数据,上面有3次发送。但是假设在
pw.println(str2);时断开了连接。
我想要重新连接S(不通过new Socket(.....)),可不可以,怎么连(请写几句代码)??

参考tcp protocol spec

2、发送数据时pw的println()和print()有什么区别啊?
参考javadoc

3、如果我想发送byte[]数组,该怎么弄?
参考outputstream和writer的区别

时间: 2024-08-31 13:55:56

tcp-java中TCP怎么重连,发送数据?的相关文章

java中是不是只有对象可以接收数据?

问题描述 java中是不是只有对象可以接收数据? java中是不是只有对象可以接收数据,类需要实例化成对象才可以接收数据,用什么方法发送数据呢 解决方案 如果是同一个进程,就自己通过监听,或消息等机制,如果跨进程,tcp,udp等传输协议都可以 解决方案二: 把对象保存到请求的Scope中,或者定义全局的常量,还有dto也可以传递数据. 解决方案三: 基本数据类型,数组集合等等都可以接收数据,本质上都是给内存中的数据一个引用.传参方式很多,构造器,带参方法等等.web中一般就get.post

java使用Socket类接收和发送数据_java

网络应用分为客户端和服务端两部分,而Socket类是负责处理客户端通信的Java类.通过这个类可以连接到指定IP或域名的服务器上,并且可以和服务器互相发送和接受数据.在本文及后面的数篇文章中将详细讨论Socket类的使用,内容包括Socket类基础.各式各样的连接方式.get和set方法.连接过程中的超时以及关闭网络连接等. 在本文中,我们将讨论使用Socket类的基本步骤和方法.一般网络客户端程序在连接服务程序时要进行以下三步操作. 连接服务器 发送和接收数据 关闭网络连接 一.连接服务器 在

Java中form表单submit之后数据发生了重置。

问题描述 Java中form表单submit之后数据发生了重置. 在java中我用form表单提交后,页面等于刷新了,等于按了一次F5,所以刚才填写的数据会初始化,也就是说刚才选择的数据全部丢失了,现在除了用ajax无刷新提交外,怎么让点击submit按钮后,数据还保留??!(不要告诉我把数据放到session中,这样做是不科学的,另外加重页面刷新速度,只是投机取巧,谁有好的方法????) 解决方案 将表单提交到隐藏的iframe也行,不一定就是ajax <iframe style="di

java中使用RP协议床传送数据。

问题描述 java中使用RP协议床传送数据. java中怎么使用RTP?有没有高人有jar包及其对应的API啊?有个发个给我.谢谢了.zq515019@126.com

在java中New 类名() 类里面的数据会被重新赋值吗?

问题描述 在java中New 类名() 类里面的数据会被重新赋值吗? 在java中New 类名() 类里面的数据会被重新赋值吗? 解决方案 java中new 类名()是用来调用类的无参构造器开辟内存空间的,初始化一个该类的对象,而该对象里面的值就是类的初始值.会不会被重新赋值要看无参构造器里面的代码有没有再次赋值的过程. 解决方案二: 你这是新建一个 对象 就相当与数据库表 插入一行数据 解决方案三: 是对象里的数据吧,每次new出来的对象里的数据都会有初始化. 解决方案四: 你类里面的都是初始

java中如何判断int 类型的数据是否为空呢?

问题描述 是先把这个int类型的数据转换成String类型,然后判断String类型的数据是否为空.int point;String val=point +"";if("".equals(val)){ *********;}这样做可以?有没有更好的方法呢? 问题补充:地狱牢笼 写道 解决方案 int point= GiftInfo.getPoints(); 对于上面的这句话,如果point是int类型,则得到的结果是不可能是null的.如果插入一条数据时没有插入给字

PHP中采用POST/GET方式发送数据,含contentType类型

问题描述 最近做一些向服务器请求数的app,查了好多都,不太好用,时不时的会失败,有的还没有content类型,对于一些指定类型的服务器就不太好说了,所以从网上搜索了几个,结合自己之前用过的,重新组合了一个POST/GET,代码来源于网络,只是做了部分修改,拿出来分享一下 直接上码:/** * 发送HTTP请求* * @param string $url 请求地址* @param string $method 请求方式 GET/POST * @param string $refererUrl 请

Java中使用json与前台Ajax数据交互的方法_java

本文主要为大家分享了Ajax获取显示Json数据的一种方法,供大家参考,具体内容如下  1.首先前台用Ajax,其中注意dataType一定要选择json方式,Action成功返回给页面的Json内容是这样的[{"number":"V006","names":"LiLei"}],可见comment['names']对应"names":"LiLei",comment['number']对应

java中自动登录,并获取数据程序

web的一些隐私数据,需要先登录,然后才能获取这些数据,用程序来实现,就需要实现自动登录,然后将登录信息保存在Cookie中,以便取得数据时,无须再次登录.以网易邮箱为例: 所需jar包:commons-codec-1.3.jar  ,   common-httpclient-3.0.1.jar  ,common-logging-1.1.1.jar ,jaxen-1.1-beta-6.jar(不知道是不是必须) 源码: import java.io.IOException; import jav