6.24Java网络编程之端口

Posted 俊king

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了6.24Java网络编程之端口相关的知识,希望对你有一定的参考价值。

6.24Java网络编程之端口

端口

通过IP地址寻找到计算机,通过端口区分需要的服务

端口是虚拟的概念,通过端口,可以在一个主机上运行多个网络应用程序。端口的表示是一个16位的二进制整数,2个字节,对应十进制的0~65535

  • 公认端口:0~1023--->80端口分配给www,21端口分配给FTP

  • 注册端口:1024~49151--->分配给用户进程或应用程序

  • 动态/私有端口:49152~65535

通过DOS命令在windows操作系统上查看端口

  • 查看所有端口:netstat -ano --->后面会有PID号

  • 查看指定端口:netstat -ano|findstr + PID

  • 查看指定进程:tasklist|findstr + PID

  • 关闭指定进程:taskkill | findstr + PID

  • 查看具体程序:使用任务管理器查看PID

常用端口
  • http协议:80端口

  • tomcat服务器:8080端口

  • Oracle数据库:1521端口

  • mysql数据库:3306

图片示例

  • Proto是协议名称

  • Local Address指服务位于本地计算机的地址

  • Foreign Address指外部访问该服务的IP地址

  • State指当前端口的状态

  • PID指ProcessID--->进程id

端口是区分软件的:

Java当中如何把端口映射到类中

通过InetSocketAddress类--->Socket n.插座

  • 实现IP套接字地址(IP地址+端口号)它也可以是一对(主机名+端口号)

hosts文件地址:C--->Windows--->System32--->driver--->etc

hosts记录的是IP地址对应的域名解析

实例demo
package netstudy;

import java.net.InetAddress;
import java.net.InetSocketAddress;
import java.net.UnknownHostException;

/**
* 端口的类
* 1、区分软件
* 2、两个字节:0~65535
* 3、UDP和TCP是互相独立的
* 4、同一个协议端口不能冲突
* 5、定义端口:越大越好
* new InetSocketAddress(地址|域名、端口号)
* 方法:
* 1、返回地址:--->getAddress
* 2、返回端口:--->getPort
* 3、返回主机名:--->getHostName
* @since JDK 1.8
* @date 2021/6/24
* @author Lucifer
*/
public class PortTest {

   public static void main(String[] args) throws UnknownHostException {

       //包含端口
       /*构造器形参*/
       //该类的父类:SocketAddress
       InetSocketAddress socketAddress = new InetSocketAddress(getIp(), 8080);
       InetSocketAddress socketAddress1 = new InetSocketAddress("localhost", 3306);

       /*打印结果*/
       System.out.println(socketAddress.getHostName());
       System.out.println(socketAddress.getAddress());
       System.out.println(socketAddress1.getAddress());
       System.out.println(socketAddress.getPort());
       System.out.println(socketAddress1.getPort());

  }
   /*
   构造方法:
   1、传入一个ip地址
   2、传入一个域名
    */

   /*写一个获取到ip的方法*/
   public static InetAddress getIp() throws UnknownHostException {

       //获取域名ip
       InetAddress address = InetAddress.getByName("xxx.xxxxxx.com");
       System.out.println(address);
       return address;

  }
}

 

 

以上是关于6.24Java网络编程之端口的主要内容,如果未能解决你的问题,请参考以下文章

6.24Java网络编程之IP

6.24Java网络编程开篇

6.24Java网络编程的基本概念

上周热点回顾(6.18-6.24)

JAVA之AOP

Python 之 Socket编程(TCP/UDP)