出现 java.net.ConnectException: Connection refused 异常的原因及解决方法

版权声明:Follow your heart and intuition. https://blog.csdn.net/qq_35246620/article/details/70213246

1 异常描述

在启动 Tomcat 服务器的时候,控制台一直输出异常信息,然后停止服务器,报出如下异常:

1

2 异常原因

通过观察上图中被标记出来的异常信息,咱们可以知道

java.net.ConnectException: Connection refused

此异常,为:连接被拒绝异常。

之前也在网上搜索过该异常出现的原因,大多数人给出的答案是端口号被占用,或者在启动本次 Tomcat 服务器之前“关闭”的 Tomcat 服务器没有被彻底关闭,因此才导致此异常的发生。也就是说,此异常一般不会在初次启动 Tomcat 服务器的时候出现。

3 解决方法

通过了解异常出现的原因,咱们知道,可以用以下两种方法解决此异常:

  • 杀死占用端口号(一般为8080)的进程,释放端口;
  • 彻底关闭 Tomcat 服务器,或者重新启动项目。

在此,博主采用了第二种解决方法,关闭项目后重新启动,解决了此异常,Tomcat 服务器启动成功。


温馨提示:暂时了解到此异常出现的原因及解决方法如上所述,如果大家有其他解决此异常的方法,可以留言,在此分享给大家。

java.net.ConnectException: Connection refused: connect 雷人解决方法,希望高手解释原因

04-14

源代码如下, rn<%@ page import ="java.io.*"%> rn<%@ page import ="java.util.*"%> rn<%@ page import ="java.sql.*"%> rnrn<% rnString dbUrl="jdbc:mysql://localhost:3306/bookstore?useUnicode=true&characterEncoding=GB2312"; rnString dbUser="root"; rnString dbPwd="6965050"; rnString driverName="com.mysql.jdbc.Driver"; rnrnConnection con=null; rnStatement stmt=null; rnResultSet rs=null; rnrnClass.forName(driverName); rnrncon = java.sql.DriverManager.getConnection(dbUrl,dbUser,dbPwd); rnif(con!=null) rnSystem.out.println("connect successfully!"); rnrn%> rnrnrn错误页面 rnroot cause rnrnjavax.servlet.ServletException: com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception: rnrn** BEGIN NESTED EXCEPTION ** rnrnjava.net.ConnectException rnMESSAGE: Connection refused: connect rnrnSTACKTRACE: rnrnjava.net.ConnectException: Connection refused: connect rnat java.net.PlainSocketImpl.socketConnect(Native Method) rnat java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333) rnat java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195) rnat java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182) rnat java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366) rnat java.net.Socket.connect(Socket.java:518) rnat java.net.Socket.connect(Socket.java:468) rnat java.net.Socket. (Socket.java:365) rnat java.net.Socket. (Socket.java:208) 后面还有一大堆错误rnrn我的环境变量什么都没有设置错误,具体我的错误和我的软件版本和环境变量可以看这个贴http://topic.csdn.net/u/20090413/18/a50872d9-7ab7-4dd0-b547-a1eb83deaaab.htmlrnrn我的操作系统是!!!!!VISTA!!!!!!! 一直出现Connection refused: connect 错误,,,,,rn当我把原代码中 localhost换成127.0.0.1,,,,,,奇迹出现了,竟然能访问数据库了,,,,,,,rnrn希望高手说明这时啥原因,,,这也太雷人了吧,,,不这样试下,岂不是要冤死。。。。。。。。。。。。。是VISTA的原因???rnrn希望有高手能发个新帖把原因什么解释下,免得再有像我这样的倒霉小白走这样的弯路。。。rnrnrn

发生异常java.net.ConnectException: Connection refused: connect

09-22

程序代码: rn 服务器端:import java.net.*;rn import java.util.*;rn import java.io.*;rnrnpublic class AppServer rnrn ServerSocket server;rn Socket fromClient;rn Thread serverThread;rn rn public AppServer()rn System.out.print("聊天服务器启动........");rn tryrn server=new ServerSocket(1001);rn serverThread=new Thread();rn serverThread.start();rn catch(Exception e)rn System.out.println("不能启动该线程:"+e);rn rn rn rn public static void main(String[] args)rn rn new AppServer();rn rn ............rn ........省略rn ............rn rn rnrn 客户端:public class login impelments ActionListenerrn ...........rn ...........rn .......创建登录界面rnrn .............rn 下面是实现事件监听的函数rnrnpublic void actionPerformed(ActionEvent e1)rn JButton button=(JButton)e1.getSource();rn if(button.equals(btnCancel))rn this.dispose();rn rn else if(button.equals(btnRegister))rn new Register();rn this.dispose();rn elsern tryrn toServer=new Socket("我的机器名",1001);rn streamFromServer=new ObjectInputStream(toServer.getInputStream()); rn streamToServer=new PrintStream(toServer.getOutputStream());rn streamToServer.println("登录信息");rn userName=txtUserName.getText();rn userPwd=txtUserPwd.getPassword();rn strPwd=new String(userPwd);rn rn streamToServer.println(userName+":"+strPwd);rn String frmServer=(String)streamFromServer.readObject();rn if(frmServer.equals("欢迎"))rn new clientInt(userName);rn this.dispose();rn rn else rn showdlg();rn rn rn catch(Exception e)rn System.out.println("发生异常"+e);rn rn rn rn rn rn public static void main(String[] args)rn new Login();rn rnrnrn 程序出现异常,发生异常java.net.ConnectException: Connection refused: connect。是1001端口的原因呢,还是因为我没有在eclipse中配置什么。我的防火墙没开着。

没有更多推荐了,返回首页

私密
私密原因:
请选择设置私密原因
  • 广告
  • 抄袭
  • 版权
  • 政治
  • 色情
  • 无意义
  • 其他
其他原因:
120
出错啦
系统繁忙,请稍后再试