• 大小: 76KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-05-19
  • 语言: Java
  • 标签: java  

资源简介

java实现socket编程网络通信多人聊天室,可以实现简单的多人聊天功能。适合初学的大二,大三学生,学习。

资源截图

代码片段和文件信息

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.GridLayout;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.Socket;
import java.util.HashMap;
import java.util.Map;
import java.util.StringTokenizer;

import javax.swing.DefaultListModel;
import javax.swing.JButton;
import javax.swing.Jframe;
import javax.swing.JLabel;
import javax.swing.JList;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JSplitPane;
import javax.swing.JTextArea;
import javax.swing.JTextField;
import javax.swing.border.titledBorder;

public class Client{

private Jframe frame;
private JList userList;
private JTextArea textArea;
private JTextField textField;
private JTextField txt_port;
private JTextField txt_hostIp;
private JTextField txt_name;
private JButton btn_start;
private JButton btn_stop;
private JButton btn_send;
private JPanel northPanel;
private JPanel southPanel;
private JScrollPane rightScroll;
private JScrollPane leftScroll;
private JSplitPane centerSplit;

private DefaultListModel listModel;
private boolean isConnected = false;

private Socket socket;
private PrintWriter writer;
private BufferedReader reader;
private MessageThread messageThread;// 负责接收消息的线程
private Map onLineUsers = new HashMap();// 所有在线用户

// 主方法程序入口
public static void main(String[] args) {

new Client();
}

// 执行发送
public void send() {
if (!isConnected) {
JOptionPane.showMessageDialog(frame “还没有连接服务器,无法发送消息!“ “错误“
JOptionPane.ERROR_MESSAGE);
return;
}
String message = textField.getText().trim();
if (message == null || message.equals(““)) {
JOptionPane.showMessageDialog(frame “消息不能为空!“ “错误“
JOptionPane.ERROR_MESSAGE);
return;
}
sendMessage(frame.gettitle() + “@“ + “ALL“ + “@“ + message);
textField.setText(null);
}

// 构造方法
public Client() {
textArea = new JTextArea();
textArea.setEditable(false);
textArea.setForeground(Color.blue);
textField = new JTextField();
txt_port = new JTextField(““);                  //设置端口号和
txt_hostIp = new JTextField(“127.0.0.1“);
txt_name = new JTextField(““);
btn_start = new JButton(“连接“);
btn_stop = new JButton(“断开“);
btn_send = new JButton(“发送“);
listModel = new DefaultListModel();
userList = new JList(listModel);

northPanel = new JPanel();
northPanel.setLayout(new GridLayout(1 7));
northPanel.add(new JLabel(“端口“));
northPanel.add(txt_port);
northPanel.add(new JLabel(“服务器IP“));
northPanel.add(txt_hostIp);
northPanel.add(new JLabel(“姓名“));
northPanel.add(txt_name);
northPanel.add(btn_

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        301  2016-03-16 21:54  MulServer\.classpath

     文件        385  2016-03-16 21:54  MulServer\.project

     文件        598  2016-03-16 21:54  MulServer\.settings\org.eclipse.jdt.core.prefs

     文件        601  2016-03-17 08:55  MulServer\bin\Client$1.class

     文件        598  2016-03-17 08:55  MulServer\bin\Client$2.class

     文件       2179  2016-03-17 08:55  MulServer\bin\Client$3.class

     文件       1367  2016-03-17 08:55  MulServer\bin\Client$4.class

     文件        717  2016-03-17 08:55  MulServer\bin\Client$5.class

     文件       3586  2016-03-17 08:55  MulServer\bin\Client$MessageThread.class

     文件       7757  2016-03-17 08:55  MulServer\bin\Client.class

     文件       1464  2016-03-17 08:31  MulServer\bin\ClientLogin$1.class

     文件        896  2016-03-17 08:31  MulServer\bin\ClientLogin$2.class

     文件       3021  2016-03-17 08:31  MulServer\bin\ClientLogin.class

     文件         19  2016-03-17 08:49  MulServer\bin\db.properties

     文件       1348  2016-03-17 08:29  MulServer\bin\FileUtils.class

     文件        706  2016-03-16 23:28  MulServer\bin\Server$1.class

     文件        598  2016-03-16 23:28  MulServer\bin\Server$2.class

     文件        601  2016-03-16 23:28  MulServer\bin\Server$3.class

     文件       2414  2016-03-16 23:28  MulServer\bin\Server$4.class

     文件       1671  2016-03-16 23:28  MulServer\bin\Server$5.class

     文件       4481  2016-03-16 23:28  MulServer\bin\Server$ClientThread.class

     文件       2918  2016-03-16 23:28  MulServer\bin\Server$ServerThread.class

     文件       7744  2016-03-16 23:28  MulServer\bin\Server.class

     文件        747  2016-03-16 21:56  MulServer\bin\User.class

     文件      41069  2016-03-16 16:09  MulServer\image\biao.png

     文件      10942  2016-03-17 08:55  MulServer\src\Client.java

     文件       3287  2016-03-17 08:31  MulServer\src\ClientLogin.java

     文件         19  2016-03-17 08:49  MulServer\src\db.properties

     文件       1588  2016-03-17 08:29  MulServer\src\FileUtils.java

     文件      13507  2016-03-16 23:28  MulServer\src\Server.java

............此处省略9个文件信息

评论

共有 条评论