解决:java.net.ConnectException: Connection refused: connect 问题

今天在学SpringMVC跨服务器上传的时候,在编写好控制台、jsp页面以及处理好tomcat服务器后,运行的时候出现了这样的错误:

通过查询,出现这样的原因可能是因为以下情况:

1.端口号被占用:

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

2.使用以下命令检查服务器中允许的最大进程数:

ulimit -u。如果将此值设置为较低值,例如1024,则使用以下值将其增加到131072或无限制:ulimit -u 131072 或者 ulimit -u无限制 。

3.客户端和服务器,它们中的任何一个或两个都不在网络中。
它们可能没有连接到LAN或互联网或任何其他网络,在这种情况下,Java将会抛出客户端的“ java.net.ConnectException:Connection refused ”异常。

4.服务器未运行
服务器已关闭或未运行。在这种情况下,也会得到java.net.ConnectException: Connection refused: connect。可ping来检查服务器是否正在运行并侦听端口

5.服务器正在运行但没有侦听端口,客户端正在尝试连接。
服务器正在运行但是正在侦听不同的端口。验证配置。如果你正在处理一个大项目,并有一个分层配置文件,它可能是默认配置或其他一些设置覆盖了您正确的设置。

6.主机端口组合不允许使用防火墙
几乎每个企业网络都受防火墙保护。如果您正在连接其他公司网络,例如在任何电子交易系统中,需要提高防火墙双方要求确保他们允许彼此的IP地址和端口号。如果防火墙不允许连接,也会收到相同的java.net.ConnectException:Java应用程序中的连接拒绝异常。

7.主机端口组合不正确。
提供的主机端口组合不正确,或者服务器端的早期主机端口组合已经更改。检查客户端和服务器端的最新配置。

8.连接字符串中的协议不正确
TCP是许多高级协议的基础协议,包括HTTP,RMI等。通过连接时字符串,你需要确保你传递正确的协议,服务器期望。例如服务器已暴露,通过 RMI 而不是连接字符串的服务应该以rmi:// 开头。

9.若注释中未添加全部参数,也会出现这种异常java.net.ConnectException: Connection refused: connect。
 

后来我发现

起初看了报错原因,发现是连接失败的原因,想着是不是端口被占用,还是代码中有地方搞错了,但是排查了一轮后发现都不是,在我百思不得其解的时候,我发现,居然是

我没!有!打!开!服!务!器!我居然把tomcat服务器关掉了,这就导致出现原因4中的服务器未运行的情况。

当我把服务器打开后再次运行,问题就解决了。

感想:当出现问题的时候,一定要先看报错,锁定问题的出处,再去排查问题。有时候出错不一定是程序出错,也可能是某个步骤不对导致。一定要细心细心再细心!

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值