📄 socketserverdemo.java
字号:
package chapter15;
import java.io.*;
import java.net.ServerSocket;
import java.net.Socket;
import java.net.SocketException;
import java.applet.*;
import java.awt.Button;
import java.awt.Graphics;
import java.awt.Label;
import java.awt.TextField;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
public class socketServerDemo extends Applet {
ServerSocket server;
String message = "";
TextField t;
DataOutputStream output;
Socket socket;
public void init() {
setSize(300, 300);
Label label1 = new Label("监听端口号:");
add(label1);
t = new TextField(20);
add(t);
Button b = new Button("开始监听端口");
mouseListener m = new mouseListener();
b.addMouseListener(m);
add(b);
}
public void paint(Graphics g) {
g.drawString(message, 20, 160);
}
class mouseListener implements MouseListener {
public void mouseReleased(MouseEvent m) {
}
public void mouseClicked(MouseEvent m) {
try {
socket = server.accept(); //客户端已经连接
message += "\r\n客户端已连接!";
output = new DataOutputStream(socket.getOutputStream());
output.writeUTF("已经成功连接到服务器!"); //向客户端写消息
output.close();
server.close();
} catch (SocketException e) {
message += e.toString();
repaint();
e.printStackTrace();
System.exit(1);
} catch (IOException e) {
message += e.toString();
repaint();
e.printStackTrace();
System.exit(1);
}
repaint();
}
public void mouseEntered(MouseEvent m) {
}
public void mousePressed(MouseEvent m) {
try {
server = new ServerSocket(Integer.parseInt(t.getText())); //开始监听指定端口
message += "端口" + t.getText() + "\n\r等待客户端连接……";
repaint();
} catch (Exception e) {
e.printStackTrace();
}
}
public void mouseExited(MouseEvent m) {
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -