java 拒绝连接_java.net.ConnectException:连接被拒绝
我正在尝试实现TCP连接,从服务器端一切正常,但是当我运行客户端程序(从客户端计算机)时,出现以下错误:
java.net.ConnectException: Connection refused
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:351)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:213)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:200)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:432)
at java.net.Socket.connect(Socket.java:529)
at java.net.Socket.connect(Socket.java:478)
at java.net.Socket.(Socket.java:375)
at java.net.Socket.(Socket.java:189)
at TCPClient.main(TCPClient.java:13)
我尝试更改套接字号以防万一,但无济于事,有谁知道导致此错误的原因和解决方法。
服务器代码:
//TCPServer.java
import java.io.*;
import java.net.*;
class TCPServer {
public static void main(String argv[]) throws Exception {
String fromclient;
String toclient;
ServerSocket Server = new ServerSocket(5000);
System.out.println("TCPServer Waiting for client on port 5000");
while (true) {
Socket connected = Server.accept();
System.out.println(" THE CLIENT" + " " + connected.getInetAddress()
+ ":" + connected.getPort() + " IS CONNECTED ");
BufferedReader inFromUser = new BufferedReader(
new InputStreamReader(System.in));
BufferedReader inFromClient = new BufferedReader(
new InputStreamReader(connected.getInputStream()));
PrintWriter outToClient = new PrintWriter(
connected.getOutputStream(), true);
while (true) {
System.out.println("SEND(Type Q or q to Quit):");
toclient = inFromUser.readLine();
if (toclient.equals("q") || toclient.equals("Q")) {
outToClient.println(toclient);
connected.close();
break;
} else {
outToClient.println(toclient);
}
fromclient = inFromClient.readLine();
if (fromclient.equals("q") || fromclient.equals("Q")) {
connected.close();
break;
} else {
System.out.println("RECIEVED:" + fromclient);
}
}
}
}
}
客户代码:
//TCPClient.java
import java.io.*;
import java.net.*;
class TCPClient {
public static void main(String argv[]) throws Exception {
String FromServer;
String ToServer;
Socket clientSocket = new Socket("localhost", 5000);
BufferedReader inFromUser = new BufferedReader(new InputStreamReader(
System.in));
PrintWriter outToServer = new PrintWriter(
clientSocket.getOutputStream(), true);
BufferedReader inFromServer = new BufferedReader(new InputStreamReader(
clientSocket.getInputStream()));
while (true) {
FromServer = inFromServer.readLine();
if (FromServer.equals("q") || FromServer.equals("Q")) {
clientSocket.close();
break;
} else {
System.out.println("RECIEVED:" + FromServer);
System.out.println("SEND(Type Q or q to Quit):");
ToServer = inFromUser.readLine();
if (ToServer.equals("Q") || ToServer.equals("q")) {
outToServer.println(ToServer);
clientSocket.close();
break;
} else {
outToServer.println(ToServer);
}
}
}
}
}
java 拒绝连接_java.net.ConnectException:连接被拒绝相关推荐
- java线程池_Java 线程池 8 大拒绝策略,面试必问!
点击上方 Java后端,选择设为星标 技术博文,及时送达 前言 谈到java的线程池最熟悉的莫过于ExecutorService接口了,jdk1.5新增的java.util.concurrent包下的 ...
- java derby连接_JAVA-Derby连接
陌上尘 阅读(1572) 评论(0) 编辑 收藏 所属分类: JAVA-J2EE import java.sql.SQLException; /** * 第一个 JDBC 的 HelloWorld ...
- java rds 数据库_Java程序如何连接RDS MySQL
您可以通过代码连接云数据库RDS MySQL版的测试程序,示例代码如下. import java.sql.Connection; import java.sql.DriverManager; impo ...
- java preparedstatement 关闭_java - 如果基础连接已关闭,为什么isClosed()方法对PreparedStatements不返回true? - 堆栈内存溢出...
就像标题所说的那样,我想知道为什么准备好的语句.isClosed()方法在关闭基础流(使用JDBC)后将返回false. public void someTest() throws SQLExcept ...
- 如何强制java服务器只接受tls 1.2并拒绝tls 1.0和tls 1.1连接
如何强制java服务器只接受tls 1.2并拒绝tls 1.0和tls 1.1连接 javaweb项目使用tomcat作为运行服务器,使用默认传输协议进行传输,结果被安全软件扫描出漏洞,建议禁止tls ...
- java http连接_Java中通过方法创建一个http连接并请求(服务器间进行通信)
服务器间进行通信只能通过流(Stream)的方式进行,不能用方法的返回值. 1.Java代码创建一个连接并请求该连接返回的数据 doGet()方法,execute()方法中调用 package dem ...
- java 远程shell脚本_java通过ssh连接服务器执行shell命令详解及实例
java通过ssh连接服务器执行shell命令详解 java通过ssh连接服务器执行shell命令:JSch 是SSH2的一个纯Java实现.它允许你连接到一个sshd 服务器,使用端口转发,X11转 ...
- java长连接转短连接_java原生程序redis连接(连接池/长连接和短连接)选择问题...
原标题:java原生程序redis连接(连接池/长连接和短连接)选择问题 最近遇到的连接问题我准备从重构的几个程序(redis和mysql)长连接和短连接,以及连接池和单连接等问题用几篇博客来总结下. ...
- java c3p0 存储过程_JAVA Spring 连接池 调用 Oracle 存储过程的问题?
求助,JAVA Spring 连接池 调用 Oracle 存储过程的问题?在Spring中配置了c3P0的连接池,在调用Oracle的存储过程时,报错[code]java.lang.ClassCast ...
最新文章
- 【ACM】杭电OJ 1009 (FatMouse' Trade)。
- 点云配准求物体的6D姿态(转)
- hdu1428 spfa+记忆化搜索
- 直播 | 商汤科技X-Lab宋广录:大规模视觉检测任务的检测器设计与优化
- linux tar 使用
- Netweaver里某个software component和C4C的版本
- 【转合辑】squid的安装配置
- 神经网络模型中class的forward函数何时调用_总结深度学习PyTorch神经网络箱使用...
- 第十三节:HttpHander扩展及应用(自定义扩展名、图片防盗链)
- 树莓派 4B 配置 Ubuntu20.04 和 ROS2
- linux 防火墙 80端口,Linux配置防火墙,开启80端口、3306端口
- matlab 电流相量图,表示了电路电压相量与电流相量之间的关系.ppt
- python手册app_Python 中文手册离线版下载_Python3.6中文手册CHM下载 Python3.6中文手册CHM 免费版_当载软件站...
- 论文绘图-教你如何绘制响应面
- RK3288 Android7.1软件开发指南
- 9. 面向对象基础(下)
- Unity 制作数字图片字体
- educoder 2-2Python 计算思维训练——循环与列表(二)
- 国外ERP产品点评 (转载)
- 智商黑洞(门萨Mensa测试)1