package socket;
import java.net.ServerSocket;
/**
* 聊天室服务端
* @author ckx
*
*/
public class Server {
/*
* 运行在服务端的ServerSocket
* 有两个作用
* 1.向系统申请服务端口,客户端就是
* 通过这个端口与服务端程序建立联系的
* 2.监听该端口,当客户端通过该端口与服务端
* 建立连接时会自动创建一个socket。通过
* socket与客户端进行数据交互
*/
private ServerSocket server;
public Server(){
try{
/*
* 实例化ServerSock的同时向系统申请服务端口
* 该端口不能与系统运行的其他应用程序相同,否则会
* 抛出地址被占用的异常
*/
System.out.println("正在启动服务端...");
server = new ServerSocket(8088);
System.out.println("服务端启动完毕...");
}catch(Exception e){
e.printStackTrace();
}
}
public void start(){
try{
/*
*ServerSocket有一个中烟的方法:
*Scoket accept()
*该方法是一个阻塞方法,调用后程序就在这里
*卡住了,这时开始监听服务端口等待客户端的连接,那么当客户端通过端口
*尝试连接是,accept会返回一个Socket
*通过Socket就可以与刚连接的客户端进行交互了
*/
System.out.println("等待客户端连接...");
server.accept();
System.out.println("一个客户端连接...");
}catch(Exception e){
e.printStackTrace();
}
}
public static void main(String[] args) {
Server server = new Server();
server.start();
}
}
聊天室项目day01
最新推荐文章于 2024-03-31 12:44:16 发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)