QQ网络聊天室--Java编程

该博客介绍了一个使用Java编程实现的简易聊天窗口程序,允许多人登录并在线聊天。目前版本未涉及数据库,计划在后续学习中进行优化。
摘要由CSDN通过智能技术生成

一、项目

做一个简易的聊天窗口程序,实现多人登录在线聊天功能。没有数据库的导入,等后期学习更多知识之后,再进行优化。

Server.java(服务器端)

import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.EOFException;
import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.ArrayList;
import java.util.List;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;

public class Server extends JFrame {

	private JTextArea showDialog = null;      // 定义文本区

	private ServerSocket serverSocket = null; // 定义接收插座
	private int port = 0;                     // 服务器应用程序所占的TCP端口号

	// 创建一个用来存放为每一个客户端提供服务的线程对象的集合
	List<ForClient> clients = new ArrayList<ForClient>();

	void init() {
		showDialog = new JTextArea(10, 20);    // 设置文本区的大小
		this.add(new JScrollPane(showDialog)); // 将带有滚动条文本区添加在窗口中

		this.setTitle("117聊天室服务器端");     // 定义窗口属性
		this.setBounds(50, 50, 500, 400);
		this.setVisible(true);
		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		this.validate();
	}

	void start() {
		this.init();
		port = 1111;
		try {
			serverSocket = new ServerSocket(port);     // 将端口号接入插座接口
			showDialog.setText("服务器已就绪,等待客户端的连接请求。。" + "\n");
			while (true) {
				Socket socket = serverSocket.accept();     // 建立插座接口,实现连接。
				showDialog.append("连接已建立!" + "\n");
				ForClient client = new ForClient(socket); //
				clients.add(client);                      // 将对象存入集合里
				new Thread(client).start();               // 建立新的线程开始运行

			}

		} catch 
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值