# BlackBoard **Repository Path**: Qianrenni/black-board ## Basic Information - **Project Name**: BlackBoard - **Description**: Java绘画板,分为教师端和学生端,支持文件传输,动态刷新页面!!! - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2024-11-10 - **Last Updated**: 2025-03-11 ## Categories & Tags **Categories**: Uncategorized **Tags**: Java ## README # JavaSocket 白板系统 ## 项目简介 JavaSocket 白板系统是一个基于 Java 的多人实时交互白板应用,支持教师与学生之间的实时绘图、文件传输和问答功能。该项目采用客户端-服务器架构,利用 Java Socket 实现网络通信,并通过 Swing 提供图形用户界面。 --- ## 项目目标 本项目的目的是构建一个功能完善的白板系统,满足以下需求: 1. **实时绘图**:教师可以在白板上绘制图形,学生端能够实时刷新显示。 2. **文件传输**:教师可以将文件发送给所有连接的学生。 3. **问答功能**:学生可以向教师提问,问答内容对所有学生可见。 4. **多客户端支持**:服务器端可以同时支持多个学生客户端连接。 --- ## 核心功能 ### 1. **教师端(服务器端)** - 提供白板绘图功能,支持绘制线条、矩形、圆形等基本图形。 - 实时广播绘图操作到所有连接的学生端。 - 支持文件传输功能,将文件发送给所有学生。 - 接收并处理学生的提问,并将问答内容广播给所有学生。 ### 2. **学生端(客户端)** - 实时接收并显示教师在白板上的绘图操作。 - 支持向教师提问,并查看教师和其他学生的问答内容。 - 接收教师发送的文件。 --- ## 技术栈 - **编程语言**:Java - **网络通信**:Java Socket - **图形用户界面**:Swing - **多线程**:用于处理多个客户端连接和实时数据传输 --- ## 运行环境 - **Java JDK**:1.8 或更高版本 - **开发工具**:IntelliJ IDEA、Eclipse 或其他支持 Java 的 IDE --- ## 快速开始 1. 导入项目到 IDEA 或 Eclipse 中。 2. 运行教师端 Server.java 3. 运行学生端 Client.java ## 效果展示 1. 教师端: ![img.png](./static/image/img.png) 2. 学生端: ![img1.png](./static/image/img_1.png)