📄 server.java
字号:
package softwarecompanyserver;
import java.awt.*;
import java.awt.*;
import javax.swing.*;
import java.net.ServerSocket;
import java.net.Socket;
import java.io.IOException;
import javax.swing.*;
import java.awt.BorderLayout;
import java.awt.Rectangle;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.Font;
public class Server extends JDialog implements Runnable{
private boolean shutdown = false;
private ServerSocket s = null;
JPanel panel1 = new JPanel();
JButton jButton1 = new JButton();
JButton jButton2 = new JButton();
JLabel jLabel1 = new JLabel();
JLabel jLabel2 = new JLabel();
javax.swing.JLabel jLabel3 = new JLabel();
ImageIcon background = new ImageIcon("42.jpg");
public Server(Frame owner, String title, boolean modal) {
super(owner, title, modal);
try {
setDefaultCloseOperation(DISPOSE_ON_CLOSE);
jbInit();
this.setSize(400,300);
this.setLocation(400,180);
this.setVisible(true);
} catch (Exception exception) {
exception.printStackTrace();
}
Thread t=new Thread(this);
t.start();
}
public void run()
{
try {
s = new ServerSocket(4009);
} catch (IOException ex) {
System.out.println(ex.toString());
}
JOptionPane.showMessageDialog(null, "服务器已开启....");
try {
while (!shutdown) {
System.out.println("等待中....");
Socket socket = s.accept();
System.out.println("已有客户端和服务器连接!");
new ServeThread(socket);
}
}catch(IOException ex)
{
System.out.println(ex.toString());
System.exit(1);
}
this.dispose();
}
public Server() {
this(new Frame(), "Server", false);
}
private void jbInit() throws Exception {
panel1.setLayout(null);
jButton1.setBounds(new Rectangle(73, 212, 91, 32));
jButton1.setText("开启");
jButton1.addActionListener(new Server_jButton1_actionAdapter(this));
jButton2.setBounds(new Rectangle(204, 212, 103, 30));
jButton2.setText("关闭");
jButton2.addActionListener(new Server_jButton2_actionAdapter(this));
jLabel1.setFont(new java.awt.Font("华文彩云", Font.PLAIN, 18));
jLabel1.setForeground(Color.red);
jLabel1.setText("朝阳社区软件公司");
jLabel1.setBounds(new Rectangle(119, 36, 167, 37));
jLabel2.setFont(new java.awt.Font("方正姚体", Font.PLAIN, 18));
jLabel2.setForeground(Color.blue);
jLabel2.setText("服务管理器");
jLabel2.setBounds(new Rectangle(146, 79, 109, 38));
jLabel3.setIcon(background);
jLabel3.setText("jLabel3");
jLabel3.setBounds(new Rectangle( -1, 0, 401, 300));
getContentPane().add(panel1);
panel1.add(jButton1, null);
panel1.add(jButton2);
panel1.add(jLabel1);
panel1.add(jLabel2);
panel1.add(jLabel3);
}
public void jButton1_actionPerformed(ActionEvent e) {
}
public void jButton2_actionPerformed(ActionEvent e) {
int i = JOptionPane.showConfirmDialog(null,"确定要退出吗?",null,JOptionPane.YES_NO_OPTION);
if(i==0)
{
shutdown = true;
try {
s.close();
} catch (IOException ex) {
System.out.println(ex.toString());
}
}
else
;
}
}
class Server_jButton2_actionAdapter implements ActionListener {
private Server adaptee;
Server_jButton2_actionAdapter(Server adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.jButton2_actionPerformed(e);
}
}
class Server_jButton1_actionAdapter implements ActionListener {
private Server adaptee;
Server_jButton1_actionAdapter(Server adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.jButton1_actionPerformed(e);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -