6.24Java网络编程之端口
Posted 俊king
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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网络编程之端口的主要内容,如果未能解决你的问题,请参考以下文章