Java查看本机端口是否被占用源码

发布时间 - 2026-01-11 03:14:27    点击率:

记得以前在写程序的时候,有一次需要查看端口的被占用情况,虽然我不会,但是有人会。所以通过网上查找相关的文章,具体如下。

127.0.0.1代表本机

主要原理是:

Socket socket = new Socket(Address,port);#address代表主机的IP地址,port代表端口号

如果对该主机的特定端口号能建立一个socket,则说明该主机的该端口在使用。

/**
 * @author MrBread
 * @date 2017年6月18日
 * @time 下午3:14:05
 * @project_name TestSocket
 * 功能:检测本机端口是否已经被使用用
 */
package com.mycode.www;
 import java.io.IOException; 
import java.net.InetAddress; 
import java.net.Socket; 
import java.net.UnknownHostException;  
public class Main { 
  //start--end是所要检测的端口范围
  static int start=0;
  static int end=1024;
  public static void main(String args[]){
    for(int i=start;i<=end;i++){
      System.out.println("查看"+i);
      if(isLocalPortUsing(i)){
        System.out.println("端口 "+i+" 已被使用");
      }
    }
  }
  /**
   * 测试本机端口是否被使用
   * @param port
   * @return
   */
  public static boolean isLocalPortUsing(int port){ 
    boolean flag = true; 
    try {
      //如果该端口还在使用则返回true,否则返回false,127.0.0.1代表本机
      flag = isPortUsing("127.0.0.1", port); 
    } catch (Exception e) { 
    } 
    return flag; 
  } 
  /*** 
   * 测试主机Host的port端口是否被使用
   * @param host 
   * @param port 
   * @throws UnknownHostException 
   */ 
  public static boolean isPortUsing(String host,int port) throws UnknownHostException{ 
    boolean flag = false; 
    InetAddress Address = InetAddress.getByName(host); 
    try { 
      Socket socket = new Socket(Address,port); //建立一个Socket连接
      flag = true; 
    } catch (IOException e) { 
    } 
    return flag; 
  } 
}

输出结果如下:

查看0
查看1
查看2
查看3
查看4
查看5
查看6
查看7
查看8

以上就是本文关于如何查看端口是否被占用的实例源码,希望对大家有所帮助。


# java  # 查看本机占用端口  # 查看本机端口占用情况  # java实现服务器文件打包zip并下载的示例(边打包边下载)  # java中获取当前服务器的Ip地址的方法  # java编程实现获取服务器IP地址及MAC地址的方法  # java 获取服务器真实IP的实例  # 微信端口及协议分析(java、C版)  # java替换url的域名和端口方法  # Java网络编程实现的简单端口扫描器示例  # Java获取服务器IP及端口的方法实例分析  # 本机  # 建立一个  # 端口号  # 还在  # 已被  # 我不会  # 有一次  # 人会  # 所要  # 则说  # 下午  # 网上  # 但是有  # MrBread  # author  # package  # date  # TestSocket  # project_name  # time 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 黑客如何通过漏洞一步步攻陷网站服务器?  动图在线制作网站有哪些,滑动动图图集怎么做?  Laravel Blade组件怎么用_Laravel可复用视图组件的创建与使用  Laravel与Inertia.js怎么结合_使用Laravel和Inertia构建现代单页应用  如何为不同团队 ID 动态生成多个“认领值班”按钮  Laravel怎么多语言本地化设置_Laravel语言包翻译与Locale动态切换【手册】  Laravel如何获取当前登录用户信息_Laravel Auth门面使用与Session用户读取【技巧】  浅谈Javascript中的Label语句  Laravel如何发送系统通知?(Notification渠道示例)  如何在建站之星网店版论坛获取技术支持?  html5源代码发行怎么设置权限_访问权限控制方法与实践【指南】  北京专业网站制作设计师招聘,北京白云观官方网站?  Laravel模型事件有哪些_Laravel Model Event生命周期详解  Laravel怎么使用Intervention Image库处理图片上传和缩放  开心动漫网站制作软件下载,十分开心动画为何停播?  Laravel如何使用API Resources格式化JSON响应_Laravel数据资源封装与格式化输出  如何在建站主机中优化服务器配置?  Swift中switch语句区间和元组模式匹配  如何用好域名打造高点击率的自主建站?  如何在阿里云高效完成企业建站全流程?  Laravel如何集成第三方登录_Laravel Socialite实现微信QQ微博登录  Laravel怎么配置自定义表前缀_Laravel数据库迁移与Eloquent表名映射【步骤】  Bootstrap CSS布局之列表  详解vue.js组件化开发实践  Laravel如何使用Service Container和依赖注入?(代码示例)  PythonWeb开发入门教程_Flask快速构建Web应用  Laravel如何实现邮件验证激活账户_Laravel内置MustVerifyEmail接口配置【步骤】  Laravel中的withCount方法怎么高效统计关联模型数量  Laravel如何实现本地化和多语言支持?(i18n教程)  利用 Google AI 进行 YouTube 视频 SEO 描述优化  如何在宝塔面板创建新站点?  清除minerd进程的简单方法  Laravel Telescope怎么调试_使用Laravel Telescope进行应用监控与调试  利用JavaScript实现拖拽改变元素大小  Laravel如何使用Gate和Policy进行授权?(权限控制)  如何用低价快速搭建高质量网站?  如何自定义建站之星网站的导航菜单样式?  微信小程序 input输入框控件详解及实例(多种示例)  Linux网络带宽限制_tc配置实践解析【教程】  如何快速选择适合个人网站的云服务器配置?  Gemini怎么用新功能实时问答_Gemini实时问答使用【步骤】  html5如何实现懒加载图片_ intersectionobserver api用法【教程】  Android中Textview和图片同行显示(文字超出用省略号,图片自动靠右边)  Laravel如何与Pusher实现实时通信?(WebSocket示例)  Laravel如何处理跨站请求伪造(CSRF)保护_Laravel表单安全机制与令牌校验  如何使用 jQuery 正确渲染 Instagram 风格的标签列表  Win11怎么恢复误删照片_Win11数据恢复工具使用【推荐】  5种Android数据存储方式汇总  如何快速生成可下载的建站源码工具?  车管所网站制作流程,交警当场开简易程序处罚决定书,在交警网站查询不到怎么办?