ServerSocket的建立和使用

-------------siwuxie095

   

   

   

   

   

   

   

工程名:TestMyServerSocket

包名:com.siwuxie095.socket

类名:MyServerSocket.java

   

   

工程结构目录如下:

   

   

   

   

   

代码:

   

package com.siwuxie095.socket;

   

import java.io.IOException;

import java.net.ServerSocket;

import java.net.Socket;

   

import javax.swing.JOptionPane;

   

public class MyServerSocket {

   

public static void main(String[] args) {

 

try {

 

//创建一个ServerSocket对象,并指定端口:12345

//端口的范围:1~65535,通常都指定较大的数字,

//这样和较小的或系统预留的端口分开

//有异常抛出,用 try catch 捕获

ServerSocket serverSocket=new ServerSocket(12345);

 

 

//ServerSocket创建完成后需要侦听客户端的连接

//调用accept()方法,这是一个阻塞的方法,

//会阻塞当前的主线程:main,这么写并不严谨,不可取,

//对于有阻塞的代码,应该放到独立的线程中

//(这里仅作演示,就不放到独立的线程里了)

//返回值是Socket类型,创建以接收返回值

//accept()被执行且socket被赋值,说明有客户端连接

Socket socket=serverSocket.accept();

 

 

//建立连接时

//弹出提示框:有客户端连接到本机的 12345 端口

JOptionPane.showMessageDialog(null, "有客户端连接到本机的 12345 端口");

 

 

 

} catch (IOException e) {

e.printStackTrace();

}

}

   

}

   

   

运行后,终止按钮(Terminate)长亮,即 当前程序正在运行 且 没有停止

   

   

而且,此时也没有任何提示框,即当前程序被阻塞

Socket socket=serverSocket.accept();

   

   

   

打开浏览器,在地址栏输入:127.0.0.1:12345 localhost:12345

(即 本机地址+端口),回车。此时,会弹框提示:

   

   

   

   

点击 确定,程序运行结束

   

   

   

   

   

   

【made by siwuxie095】

转载于:https://www.cnblogs.com/siwuxie095/p/6652355.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值