Java如何在指定端口创建套接字?

在Java编程中,如何在指定端口创建套接字并连接到指定服务器的端口?

下面的例子演示了Socket类的Socket构造函数,并且使用getLocalPort(),getLocalAddress()getInetAddress()以及getPort()方法获取Socket细节。

package com.yiibai;

import java.io.IOException;
import java.net.InetAddress;
import java.net.Socket;
import java.net.SocketException;
import java.net.UnknownHostException;

public class CreateSocket {
    public static void main(String[] args) {
        try {
            InetAddress addr = InetAddress.getByName("112.124.103.85");
            Socket theSocket = new Socket(addr, 80);
            System.out.println("Connected to " + theSocket.getInetAddress() + " on port " + theSocket.getPort()
                    + " from port " + theSocket.getLocalPort() + " of " + theSocket.getLocalAddress());
        } catch (UnknownHostException e) {
            System.err.println("I can‘t find " + e);
        } catch (SocketException e) {
            System.err.println("Could not connect to " + e);
        } catch (IOException e) {
            System.err.println(e);
        }
    }
}

Java

上述代码示例将产生以下结果 -

Connected to /112.124.103.85 on port 80 from port 57229 of /192.168.1.50

原文地址:https://www.cnblogs.com/borter/p/9617179.html

时间: 2024-10-08 09:02:22

Java如何在指定端口创建套接字?的相关文章

端口与套接字

端口和套接字,用于确定指定主机上的哪个本地进程使用了哪个协议和哪台远程主机上的哪个进程进行了通信.端口和套接字的使用可以基于以下几点: ①为每个应用过程分配一个过程标识符(Process ID),每次启动一个进程时,这个ID都可能是不同的. ②进程ID因操作系统平台不同而不同,因而它们是不统一的. ③一个服务器过程能够同时与多个客户连接,因而简单的连接标识符不可能是唯一的. 端口和套接字概念提供了一种以统一的方式唯一地标识连接以及参与连接的程序和主机的方法,而不管特定的过程ID. (1)端口 网

WSASocket()创建套接字不成功解决方法

这几天我在写一个模仿windows自带的ping程序,可是套接字总是创建不成功,在网上找了一些资料最后总算把问题解决了,现在总结一下. 解决方法:以管理员运行VS就行了我的是vs2013,vs2010也一样. /*Winsock 初始化*/ if (WSAStartup(MAKEWORD(2, 2), &wsaData) != 0) { //如果初始化不成功则报错,GetLastError()返回错误信息 printf("WSAStartup() failed:%d]\n",

nginx源码分析--监听套接字的创建 套接字的监听 HTTP请求创建连接

作为一个web服务器,那么肯定是有监听套接字的,这个监听套接字是用于接收HTTP请求的,这个监听套接字的创建是根据配置文件的内容来创建的,在nginx.conf文件中有多少个地址就需要创建多少个监听套接字.这里不说各个结构体的构造 只说大体情况! 1).首先在main函数中调用了ngx_init_cycle()函数,在这个函数的最后调用了ngx_open_listening_sockets函数,这个函数负责将创建的监听套接字进行套接字选项的设置(比如非阻塞.接受发送的缓冲区.绑定.监听处理) 2

使用socket()函数创建套接字

在Linux中,一切都是文件,除了文本文件.源文件.二进制文件等,一个硬件设备也可以被映射为一个虚拟的文件,称为设备文件.例如,stdin 称为标准输入文件,它对应的硬件设备一般是键盘,stdout 称为标准输出文件,它对应的硬件设备一般是显示器.对于所有的文件,都可以使用 read() 函数读取数据,使用 write() 函数写入数据. “一切都是文件”的思想极大地简化了程序员的理解和操作,使得对硬件设备的处理就像普通文件一样.所有在Linux中创建的文件都有一个 int 类型的编号,称为文件

nginx源代码分析--监听套接字的创建 套接字的监听 HTTP请求创建连接

作为一个webserver,那么肯定是有监听套接字的,这个监听套接字是用于接收HTTP请求的,这个监听套接字的创建是依据配置文件的内容来创建的,在nginx.conf文件里有多少个地址就须要创建多少个监听套接字.这里不说各个结构体的构造 仅仅说大体情况! 1).首先在main函数中调用了ngx_init_cycle()函数,在这个函数的最后调用了ngx_open_listening_sockets函数,这个函数负责将创建的监听套接字进行套接字选项的设置(比方非堵塞.接受发送的缓冲区.绑定.监听处

微观传输原理:协议、端口、套接字接口

协议.端口.套接字接口 术语: ip层:就是网络层,第三层. 运输层:就是传输层,第四层. 原文地址:https://www.cnblogs.com/andy9468/p/10551132.html

Java知多少(105)套接字(Socket)

网络应用模式主要有: 主机/终端模式:集中计算,集中管理: 客户机/服务器(Client/Server,简称C/S)模式:分布计算,分布管理: 浏览器/服务器模式:利用Internet跨平台. www(万维网)就是建立在客户机/服务器模式上,以HTML语言和HTTP协议为基础,能够提供各种Internet服务的信息浏览系统.网络信息放在主机的不同位置,www服务器利用超文本链路链接各项信息.www客户机(浏览器Brower)负责与服务器建立联系,向服务器发送请求,处理HTML超媒体,提供图形用户

使用java代码关闭指定端口的程序-windows下

转载请请在页首注明作者与出处 一:问题由史 今天遇到一个问题,就是在实现自动化灾备的时候,发现原有死掉的程序没有完全关闭,当然这都不是本文的重点,重点是这个时候,我得把它完全关闭,所以才有了这篇文章. 二:基础知识 2.1:java要怎么实现 java可以获取并删除JAVA虚拟机启动的应用,但是却并没有提供API获取操作系统中其它的进程的API. 但是java可以执行操作系统的脚本命令. 2.2:根据端口查找进程 windows中有这样的命令 netstat -ano 查看操作系统所有占用端口的

java -jar命令 指定端口和日志标准输出

在启动weblogic的时候我们经常看到如下的命令: nohup java -jar /opt/apps/$APP --server.port=$SERVER_PORT  >/var/log/$APP_NAME/deploy.log 2>&1 & 其中 0.1.2分别代表如下含义: 0 – stdin (standard input) 1 – stdout (standard output) 2 – stderr (standard error) nohup+最后面的&