?? server.java
字號:
import java.net.*;
import java.io.*;
import java.util.*;
/**
* @author yeeku.H.lee kongyeeku@163.com
* @version 1.0
* <br>Copyright (C), 2005-2008, yeeku.H.Lee
* <br>This program is protected by copyright laws.
* <br>Program Name:
* <br>Date:
*/
public class Server
{
private static final int SERVER_PORT = 30000;
//使用MyMap對象來保存每個客戶名字和對應輸出流之間的對應關系。
public static YeekuMap<String , PrintStream> clients =
new YeekuMap<String , PrintStream>();
public void init()
{
ServerSocket ss = null;
try
{
//建立監聽的ServerSocket
ss = new ServerSocket(SERVER_PORT);
//采用死循環來不斷接受來自客戶端的請求
while(true)
{
Socket socket = ss.accept();
new ServerThread(socket).start();
}
}
//如果拋出異常
catch (IOException ex)
{
System.out.println("服務器啟動失敗,是否端口"
+ SERVER_PORT + "已被占用?");
}
//使用finally塊來關閉資源
finally
{
try
{
if (ss != null)
{
ss.close();
}
}
catch (IOException ex)
{
ex.printStackTrace();
}
System.exit(1);
}
}
public static void main(String[] args)
{
Server server = new Server();
server.init();
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -