异常Connection refused: connect 是什么原因呢

不太快乐水 2020-08-19 05:19:49
照着教程视频写的,但是运行服务器类的时候报出这个异常,ip地址没错,不知道为什么,虚心请教
package morepeople;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.PrintStream;
import java.net.ServerSocket;
import java.net.Socket;

public class testServer {

public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
ServerSocket server = new ServerSocket(9999);

boolean flag = true;
while (flag) {
Socket socket = server.accept();
MessageHander mh = new MessageHander(socket);

mh.start();

}
server.close();
}

}

class MessageHander extends Thread {

private Socket socket;

public MessageHander(Socket socket) {
super();
this.socket = socket;
}

@Override
public void run() {
try {
InputStream in = socket.getInputStream();
InputStreamReader isr = new InputStreamReader(in);
BufferedReader br = new BufferedReader(isr);

OutputStream out = socket.getOutputStream();
PrintStream ps = new PrintStream(out);

String word;

while ((word = br.readLine()) != null) {
if ("bye".equals(word)) {
break;
}
StringBuilder sb = new StringBuilder(word);
sb.reverse();

ps.println(sb.toString());
}

} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
try {
socket.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}

}


package morepeople;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.PrintStream;
import java.net.Socket;
import java.net.UnknownHostException;
import java.util.Scanner;

public class testClient {

public static void main(String[] args) throws UnknownHostException, IOException {
// TODO Auto-generated method stub
Socket socket = new Socket("192.168.1.119", 9999);

OutputStream out = socket.getOutputStream();
PrintStream ps = new PrintStream(out);

InputStream is = socket.getInputStream();
InputStreamReader isr = new InputStreamReader(is);
BufferedReader br = new BufferedReader(isr);

Scanner sc = new Scanner(System.in);

while (true) {
System.out.println("请输入词语:");
String word = sc.next();

ps.println(word);

if ("bye".equals(word)) {
break;
}
String result = br.readLine();
System.out.println("从服务器返回的结果:" + result);
}

is.close();
socket.close();
}

}


异常
Exception in thread "main" java.net.ConnectException: Connection refused: connect
at java.net.DualStackPlainSocketImpl.connect0(Native Method)
at java.net.DualStackPlainSocketImpl.socketConnect(Unknown Source)
at java.net.AbstractPlainSocketImpl.doConnect(Unknown Source)
at java.net.AbstractPlainSocketImpl.connectToAddress(Unknown Source)
at java.net.AbstractPlainSocketImpl.connect(Unknown Source)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.SocksSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.<init>(Unknown Source)
at java.net.Socket.<init>(Unknown Source)
at morepeople.testClient.main(testClient.java:16)
...全文
5961 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
淹死的虾 2020-08-20
  • 打赏
  • 举报
回复
引用 5 楼 淹死的虾 的回复:
引用 4 楼 Alpaca666 的回复:
ping ip 看通不通?telnet ip 端口 看通不通?先确定是不是网络问题
1
淹死的虾 2020-08-20
  • 打赏
  • 举报
回复
引用 4 楼 Alpaca666 的回复:
ping ip 看通不通?telnet ip 端口 看通不通?先确定是不是网络问题
Alpaca666 2020-08-20
  • 打赏
  • 举报
回复
ping ip 看通不通?telnet ip 端口 看通不通?先确定是不是网络问题
小灰狼 2020-08-20
  • 打赏
  • 举报
回复
这种情况,基本上是数据库服务器的TCP连接不上,还没有到验证身份的那一步,比如服务器没有开机,数据库服务没有启动,端口被防火墙挡住 等
fastso 2020-08-19
  • 打赏
  • 举报
回复
这个异常除了IP地址有错,还有可能是你的服务器端的程序没有正常跑起来。
大隐藏于寺 2020-08-19
  • 打赏
  • 举报
回复
如果testServer的main方法在你自己电脑上启动的,那么testClient方法中的socket初始化要修改下ip参数,像下面这样

Socket socket = new Socket("localhost", 9999);

62,628

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧