资源简介
网络白板 java socket 多线程通信 绘画功能 聊天功能 计算机网络或JAVA课程设计
代码片段和文件信息
import java.net.*;
import java.io.*;
public class MesHandle extends Thread /*对于每个与服务器连接的客户端,创建一个线程来进行处理*/
{
Socket theSocket;
BufferedReader in;
PrintWriter out;
Server parent;
Thread thread;
int thePort; //保存用户名
boolean disconnect=false; //是否处于连接状态
public MesHandle(Socket socketServer parent) /*创建线程用来响应该客户端*/
{
try
{
theSocket=socket;
this.parent=parent; //其对应的服务器为创建的ChatServer类的对象
in=new BufferedReader(new InputStreamReader(theSocket.getInputStream())); //建立BufferedReader对象in存放从socket中取得的输入流
out=new PrintWriter(new OutputStreamWriter(theSocket.getOutputStream())true); //从theSocket中取得输出流,并构造PrintWriter对象
thePort=theSocket.getPort();
thread=new Thread(this);
thread.start();
}catch(IOException io){}
}
public void sendMessage(String line) /*将服务器发送的信息传递到该客户端*/
{
out.flush();
out.println(line);
}
public void extractMessage(String line) /*处理从客户端发来的信息,并发送对应的信息到客户端*/
{
String[] str=line.split(“:“);
if(str[0].equals(“log“)) //如果信息为申请连接
{
parent.broadcastMessage(line);
out.flush();
}
else if(str[0].equals(“quit“)) //如果客户端断开连接
{
disconnectClient(); //调用disconnectClient()方法
parent.broadcastMessage(line); //告知其他客户端该用户离开了
}
else
{
parent.broadcastMessage(line);
}
}
public void disconnectClient() /*与服务器断开,并返回用户名*/
{
try
{
in.close();
out.close();
theSocket.close();
parent.removeConnectionList(this);//将线程从服务器的chatters数组中除去
disconnect=true;
}catch(Exception ex){}
}
public void run() /*获取客户输入的信息*/
{
String line;
try
{
while((line=in.readLine())!=null)
{
System.out.println(“收到:“+line);
extractMessage(line);
}
}catch(IOException io){}
}
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 301 2012-12-01 18:53 网络白板\ChatServer\.classpath
文件 386 2012-12-01 18:53 网络白板\ChatServer\.project
文件 598 2012-12-01 18:53 网络白板\ChatServer\.settings\org.eclipse.jdt.core.prefs
文件 2665 2014-01-02 22:47 网络白板\ChatServer\bin\MesHandle.class
文件 1951 2014-01-02 22:47 网络白板\ChatServer\bin\Server.class
文件 2452 2013-01-02 00:25 网络白板\ChatServer\src\MesHandle.java
文件 2022 2012-12-02 13:13 网络白板\ChatServer\src\Server.java
文件 301 2012-11-21 23:44 网络白板\DrawBar\.classpath
文件 383 2012-11-21 23:44 网络白板\DrawBar\.project
文件 598 2012-11-21 23:44 网络白板\DrawBar\.settings\org.eclipse.jdt.core.prefs
文件 11182 2014-01-03 01:26 网络白板\DrawBar\bin\Board.class
文件 1450 2014-01-03 01:30 网络白板\DrawBar\bin\Jpan$1.class
文件 878 2014-01-03 01:30 网络白板\DrawBar\bin\Jpan$2.class
文件 4860 2014-01-03 01:30 网络白板\DrawBar\bin\Jpan.class
文件 2665 2014-01-02 23:51 网络白板\DrawBar\bin\MesHandle.class
文件 1994 2014-01-03 00:17 网络白板\DrawBar\bin\Server.class
文件 11856 2014-01-03 01:26 网络白板\DrawBar\src\Board.java
文件 7581 2014-01-03 01:30 网络白板\DrawBar\src\Jpan.java
文件 2452 2013-01-02 00:25 网络白板\DrawBar\src\MesHandle.java
文件 2069 2014-01-03 00:17 网络白板\DrawBar\src\Server.java
文件 1008 2012-11-23 17:45 网络白板\DrawBar\三角形.jpg
文件 962 2012-11-27 17:18 网络白板\DrawBar\文本.jpg
文件 850 2012-11-23 17:50 网络白板\DrawBar\曲线.jpg
文件 977 2012-11-23 17:44 网络白板\DrawBar\椭圆.jpg
文件 643 2012-11-23 17:25 网络白板\DrawBar\白.jpg
文件 817 2012-11-23 17:44 网络白板\DrawBar\直线.jpg
文件 978 2012-11-23 17:44 网络白板\DrawBar\矩形.jpg
文件 646 2012-11-27 17:14 网络白板\DrawBar\红.jpg
文件 675 2012-11-27 17:13 网络白板\DrawBar\绿.jpg
文件 646 2012-11-23 17:30 网络白板\DrawBar\蓝.jpg
............此处省略13个文件信息
相关资源
- mongodb+javaSpring实现选课系统demo
- 使用java的Stream实现读取文本文件,并
- java仿windows简易计算器课程设计 源码
- javamail实现邮件收发和加密
- java文件资源管理器
- Apriori算法的Java实现
- Java TCP/IP Socket编程·源代码
- Java2Pas(JAVA转Delphi工具)
- JS 生成MD5值和JAVA生成MD5值自己测试过
- 北大青鸟ACCP6.0S2宠物商店项目java官方
- mysql-connector-java-5.1.39.jar资源
- 数据库实验8 java连接数据库(JDBC代码
- 操作系统os页面置换算法java实现Cloc
- java小区物业管理系统
- JavaWeb开发实战宝典源码(全)
- 数据库课程设计-报刊订阅系统-Java语
- 网吧自动计费管理系统
- JSP JAVA网吧计费管理系统 源代码
- jsp飞机票订票系统
- Java写的UML活动图
- 局域网聊天系统 含 数据库
- 航空票务管理系统 含 数据库
- 小区物业管理系统 含 数据库
- 学生信息管理系统 实现学生的添加删
- java 图形界面小时钟
- 基于java的web浏览器
- JSP+Sevlet+javabean实现网站商品分类
- JAVA-WEB单点登录
- 基于Java的网络相册的开题报告
- JAVA连接SQLServer2000的jar包
评论
共有 条评论