- 浏览: 214034 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (244)
- java (23)
- java多线程 (7)
- 综合 (1)
- oracle10g (24)
- div+css (1)
- Flex (27)
- java Nio (1)
- java设计模式 (8)
- struts2 (10)
- spring3.0 (5)
- SSH (9)
- dwr (5)
- hibernate3.6 (17)
- dom4j (1)
- sql优化 (5)
- Quartz任务调度框架 (1)
- AOP (3)
- JavaScript (18)
- jquery (3)
- JSF (9)
- ruby (1)
- 正则表达式 (1)
- 明日准备 (2)
- eclipse (3)
- gvim (1)
- CMS (1)
- linux (6)
- 杂 (4)
- java 设计模式 (1)
- MySql (10)
- JBPM (4)
- JSP技术 (1)
- Mybatis And Ibatis (2)
- 经验之谈 (10)
- WebService (1)
- java分布式(高性能,高可用,可伸缩) (0)
- springMvc (2)
- redis (0)
- ant (1)
- Nutz (6)
- 配置管理 (0)
- css+div (1)
- eChars (1)
- angularJs (1)
- D3 (3)
- Scala (1)
最新评论
-
Cobain_LI:
Cobain_LI 写道学习了,之前一直都没注意到有这样的问题 ...
js面向对象3--更简单的原型模式已经带来的问题以及解决办法 -
Cobain_LI:
Cobain_LI 写道学习了,之前一直都没注意到有这样的问题 ...
js面向对象3--更简单的原型模式已经带来的问题以及解决办法 -
Cobain_LI:
有个小失误,144和147行多了两个花括号
js面向对象2--js中工厂模式的演化(重要,详细) -
Cobain_LI:
学习了,之前一直都没注意到有这样的问题
js面向对象3--更简单的原型模式已经带来的问题以及解决办法 -
YTT1121:
有网络拓扑发现的源代码么,或者您会编写么?可以有偿求购,搞科研 ...
flex 之twaver1--简单网络拓扑实现
客户端接受:
客户端发送:
服务端接受:
服务端发送:
测试:
工具类:
package com.supan; import java.io.BufferedReader; import java.io.InputStreamReader; import java.io.PrintWriter; import java.net.Socket; public class ClientReceive { public static void main(String[] args) throws Exception { Socket socket=new Socket("191.0.4.17",4704); BufferedReader is=new BufferedReader(new InputStreamReader(socket.getInputStream())); String readline; if(socket!=null){ new ClientSendThread(socket).start(); } while(true){ readline = is.readLine(); System.out.println("Server:"+ readline); } } }
客户端发送:
package com.supan; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.PrintWriter; import java.net.Socket; /* * 该类主要用于服务端接受本地系统的输入数据,并且发松到客户端 */ public class ClientSendThread extends Thread { private Socket socket; private String line; private BufferedReader is; private PrintWriter os; public ClientSendThread(Socket socket) { this.socket = socket; } public void run() { try { BufferedReader sin = new BufferedReader(new InputStreamReader(System.in)); os = new PrintWriter(socket.getOutputStream()); while (true) { line = sin.readLine(); // 把系统输入的数据放入到socket的输出流中 os.println(line); os.flush(); // 读取socket的输入流并打印出来 } } catch (Exception e) { System.out.println("系统输入数据,和客户端输入数据时出现异常"); } } }
服务端接受:
package com.supan; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.PrintWriter; import java.net.Socket; /* * 该类主要负责不停的读取客户端传过来的数据,并打印到控制台 */ public class ServerRecevidThread extends Thread { private Socket socket; private String line; private BufferedReader is; private PrintWriter os; public ServerRecevidThread(Socket socket) { this.socket = socket; } public void run() { // 获取socket的输入流 try { is = new BufferedReader(new InputStreamReader( socket.getInputStream())); while (true) { System.out.println("客户端传过来的数据是:" + is.readLine()); } } catch (Exception e) { System.out.println("系统输入数据,和客户端输入数据时出现异常"); } } }
服务端发送:
package com.supan; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.PrintWriter; import java.net.Socket; /* * 该类主要用于服务端接受本地系统的输入数据,并且发松到客户端 */ public class ServerSendThread extends Thread { private Socket socket; private String line; private BufferedReader is; private PrintWriter os; public ServerSendThread(Socket socket) { this.socket = socket; } public void run() { try { BufferedReader sin = new BufferedReader(new InputStreamReader(System.in)); os = new PrintWriter(socket.getOutputStream()); while (true) { line = sin.readLine(); // 把系统输入的数据放入到socket的输出流中 os.println(line); os.flush(); // 读取socket的输入流并打印出来 } } catch (Exception e) { System.out.println("系统输入数据,和客户端输入数据时出现异常"); } } }
测试:
package com.supan; import java.io.BufferedReader; import java.io.InputStreamReader; import java.io.PrintWriter; import java.net.ServerSocket; import java.net.Socket; public class Server { public static void main(String[] args) throws Exception { String line; ServerSocket server=new ServerSocket(4704); while(true){ Socket socket=server.accept(); if(socket!=null){ System.out.println("客户端已经连接,服务器开启线程处理这个连接。"); new ServerSendThread(socket).start(); new ServerRecevidThread(socket).start(); } } } }
工具类:
package com.supan; public class StringToCharArray { public static void main(String[] args) { String str = "123年我们"; StringBuffer sb = new StringBuffer(); for(int i=0;i<str.length();i++){ if(str.charAt(i) > '9' || str.charAt(i) < 0){ System.out.println("不是字符"); }else{ sb.append(str.charAt(i)); } } System.out.println(sb.toString()); } }
发表评论
-
浅谈java接口中定义属性
2015-03-11 22:55 6941package com.supan.reflact; p ... -
JMs 简单实例
2015-01-30 14:00 5061.前一讲简单的介绍了 ... -
java 泛型
2015-01-29 14:04 5591. 概述 在引入范型之前 ... -
配置jkstatus
2015-01-24 00:21 595在已配置完成的 apache 项目中 workers.pro ... -
apache+tomcat架设图片服务器
2015-01-23 22:15 1120apache + 2个tomcat分工指定: apac ... -
apache+tomcat实现负载均衡
2015-01-23 13:03 409所需材料: 1,apache_2.0.55-win32-x86 ... -
java web高并发解决方案
2015-01-23 01:28 849java处理高并发高负载类 ... -
sql 语句优化
2014-12-03 23:50 444一: 尽量挑选自己需要的字段进行查询, 不要随便使用 s ... -
21312
2014-06-30 23:53 465http://supanccy2013.iteye.com/a ... -
java之jxl输入excel文件
2014-05-02 23:37 934注:原创作品,分享以供交流,转载请注明出处。 本博文需要引入 ... -
java虚拟机工作机制
2014-05-02 23:33 894注:原创作品,分享以供交流学习,转载请注明出处。 Java虚 ... -
java算法之 递归
2014-05-01 22:41 794注:原创作品,分享以供交流学习,转载请注明出处。 递 ... -
HttpRequest.getSession(boolean boo)方法注意点
2014-05-01 01:04 2071getSession(boolean create) ... -
java 之 String的那些事儿
2014-04-17 00:05 526equals方法和==的区别 首先大家知道,String既 ... -
java 之递归便利文件夹中的文件
2014-04-16 00:34 788import java.io.File; public ... -
java 之this,super关键字
2014-04-16 00:29 418this关键字的三种用法: 第一、通过this ... -
java 之md5加密
2014-04-16 00:25 583package com.supan.md5; import ... -
java String变量判空 效率
2014-04-09 23:16 1430Java中的String为引用类型,我们经常遇到判空的情况,s ... -
java socket简单写了一个即时通讯工具(代码有待优化。)
2014-02-17 08:42 24611,服务端不断轮训创建socket链接,一旦链接成功,启动两个 ... -
StringBuffer、String、StringBuilder的区别
2014-01-23 21:54 440String,StringBuffer与StringBuild ...
相关推荐
JAVA 实现 jsp sql即时通讯工具(系统源码 + WORD文档) JAVA 实现 jsp sql即时通讯工具(系统源码 + WORD文档) JAVA 实现 jsp sql即时通讯工具(系统源码 + WORD文档) JAVA 实现 jsp sql即时通讯工具(系统源码 + WORD...
java即时通讯工具的设计与实现.doc
该java即时通讯工具核心技术基本实现,主要可以群聊和私聊,查找好友,查找群,添加好友,添加群,注册QQ号,注册群,聊天记录,个人信息查询和修改等功能。
Java即时通信工具源码
此资源集包含了一套完整的Java实现的即时通讯工具项目源代码、相关的毕业论文以及详尽的使用说明。它旨在提供一个全面、深入的学习和研究工具,适用于本科课程设计、毕业设计以及任何希望深入学习Java编程的学习者。...
基于Java EE企业即时通讯工具设计与实现 毕业设计,源码开放。
一个简单的即时通讯工具的设计与开发 即时通讯(Instant Messaging)是目前Internet上最为流行的通讯方式,各种各样的即时通讯软件也层出不穷;服务提供商也提供了越来越丰富的通讯服务功能。Java是当前比较流行的...
(Java毕业设计)java一个简单的即时通讯工具的设计与开发(Java毕业设计)java一个简单的即时通讯工具的设计与开发(Java毕业设计)java一个简单的即时通讯工具的设计与开发(Java毕业设计)java一个简单的即时通讯工具的...
Java实现的即时通信工具
第三代基于Java的校园即时通讯工具的设计与实现.pdf
JSP基于JAVA技术的即时通讯工具(聊天室)的设计与实现
java一个简单的即时通讯工具的设计与开发(源代码+论文)java一个简单的即时通讯工具的设计与开发(源代码+论文)java一个简单的即时通讯工具的设计与开发(源代码+论文)java一个简单的即时通讯工具的设计与开发(源代码+...
java一个简单的即时通讯工具的设计与开发(源代码).zipjava一个简单的即时通讯工具的设计与开发(源代码).zipjava一个简单的即时通讯工具的设计与开发(源代码).zipjava一个简单的即时通讯工具的设计与开发(源代码).zip...
java项目之即时通讯工具源码java项目之即时通讯工具源码java项目之即时通讯工具源码java项目之即时通讯工具源码java项目之即时通讯工具源码
基于java的即时通讯工具,不局限于局域网
基于java的简单即时通讯工具项目设计与实现(源代码+项目报告).zip
java毕业设计——java一个简单的即时通讯工具的设计与开发(源代码+论文).zip java毕业设计——java一个简单的即时通讯工具的设计与开发(源代码+论文).zip java毕业设计——java一个简单的即时通讯工具的设计与开发...
计算机毕业设计成品 JAVA jsp+sql即时通讯工具(系统源码+Word文档) 计算机毕业设计成品 JAVA jsp+sql即时通讯工具(系统源码+Word文档) 计算机毕业设计成品 JAVA jsp+sql即时通讯工具(系统源码+Word文档) 计算机毕业...
基于Java的仿QQ源码即时通讯工具设计与实现:含详细文档与毕业案例设计.rar 基于Java的仿QQ源码即时通讯工具设计与实现:含详细文档与毕业案例设计.rar 基于Java的仿QQ源码即时通讯工具设计与实现:含详细文档与毕业...