- 浏览: 129294 次
- 性别:
- 来自: 广州
文章分类
最新评论
-
newhxj:
03-21 10:56:35.850: E/Web Conso ...
Android简易Flash播放器[转] -
roiz:
谢谢 很好正需要这资料
精确监听AbsListView滚动至底部[转]
第二步 多个客户同时连接
在实际的网络环境里,同一时间只对一个用户服务是不可行的。一个优秀的网络服务程序除了能处理用户的输入信息,还必须能够同时响应多个客户端的连接请求。在java中,实现以上功能特点是非常容易的。
设计原理:
主程序监听一端口,等待客户接入;同时构造一个线程类,准备接管会话。当一个Socket会话产生后,将这个会话交给线程处理,然后主程序继续监听。运用Thread类或Runnable接口来实现是不错的办法。
{实现消息共享}
import java.io.*; import java.net.*; public class Server extends ServerSocket { private static final int SERVER_PORT = 10000; public Server() throws IOException { super(SERVER_PORT); try { while (true) { Socket socket = accept(); new CreateServerThread(socket); } } catch (IOException e) {} finally { close(); } } //--- CreateServerThread class CreateServerThread extends Thread { private Socket client; private BufferedReader in; private PrintWriter out; public CreateServerThread(Socket s) throws IOException { client = s; in = new BufferedReader(new InputStreamReader(client.getInputStream(), "GB2312")); out = new PrintWriter(client.getOutputStream(), true); out.println("--- Welcome ---"); start(); } public void run() { try { String line = in.readLine(); while (!line.equals("bye")) { String msg = createMessage(line); out.println(msg); line = in.readLine(); } out.println("--- See you, bye! ---"); client.close(); } catch (IOException e) {} } private String createMessage(String line) { xxxxxxxxx; } } public static void main(String[] args) throws IOException { new Server(); } }
这个程序监听10000端口,并将接入交给CreateServerThread线程运行。CreateServerThread线程接受输入,并将输入回应客户,直到客户输入"bye",线程结束。我们可以在createMessage方法中,对输入进行处理,并产生结果,然后把结果返回给客户。
转至:http://tech.163.com/06/0410/09/2EBABUD20009159T_2.html
发表评论
-
Java基于Socket文件传输示例[转]
2012-11-21 17:58 715最近需要进行网络传输大文件,于是对基于socket的文件传输作 ... -
Java基础:三步学会Java Socket编程3[转]
2012-11-21 17:17 791第三步 实现信息共享:在Socket上的实时交流 网络的 ... -
Java基础:三步学会Java Socket编程1[转]
2012-11-21 17:12 797第一步 充分理解Socket ... -
一步步优化JVM七:其他[转]
2012-11-10 23:37 993边缘问题 在某 ... -
一步步优化JVM六:优化吞吐量[转]
2012-11-07 00:23 6987如果你已经进行 ... -
一步步优化JVM五:优化延迟或者响应时间(3)[转]
2012-11-07 00:20 6661CMS垃圾回收器周期 一旦young的空 ... -
一步步优化JVM五:优化延迟或者响应时间(2)[转]
2012-11-07 00:13 1563优化CMS(concurrent garbage col ... -
一步步优化JVM五:优化延迟或者响应时间(1)[转]
2012-11-06 23:35 1101本节的目标是做 ... -
一步步优化JVM四:决定Java堆的大小和内存占用[转]
2012-11-06 19:21 1095到目前为止,还没有做明确的优化工作。只是做了初始 ... -
一步步优化JVM三:GC优化基础[转]
2012-11-06 18:52 1115本节主要描述关于垃圾回收器性能的三个指标,三 ... -
一步步优化JVM二:JVM部署模型和JVM Runtime[转]
2012-11-06 18:27 1198选择JVM部署模型 JVM部署模型的选择总体来说 ... -
一步步优化JVM(一)——概述[转]
2012-11-06 18:04 1231现代JVM是一个具有灵活适应各种应用能力的软件,尽 ... -
Filter的用法[转]
2012-10-03 22:01 851filter过滤器主要使用于前台向后台传递数据是的过滤操 ... -
Spring Aop 日志管理[转]
2012-07-14 01:54 1810Spring Aop 日志管理 Sp ... -
Spring中的用于格式化的annotation[转]
2012-06-28 21:51 1996转至http://linksc.iteye.com/blog/ ... -
Hibernate的ID生成策略/联合主键解决方案[转]
2012-06-27 00:22 856转至http://blog.163.com/fengz ... -
HibernateTemplate Callback 2
2012-06-26 23:46 683package com.bee.common.hiber ... -
HibernateTemplate Callback
2012-06-26 23:45 815package com.bee.common.hiber ... -
Spring管理Hibernate事务[转]
2012-06-26 22:56 8261.TransactionProxyFactoryBean ... -
OpenSessionInViewFilter、Session、HibernateTemplate[转]
2012-06-26 22:51 2653从书上我了解到Session接 ...
相关推荐
很不错的java学习内容!!!三步学会Java_Socket,有心人请学习!!!
想学socket通信的,这是一个好东西啊
Java源码:Socket编程
三步学会Java Socket编程 是基于socket网络编程
《Java TCP/IP Socket编程(原书第2版)》基于TCP/IP Socket相关原理,对如何在Java中进行Socket编程作了深入浅出的介绍。《Java TCP/IP Socket编程(原书第2版)》内容简明扼要,条理清晰,并在讲解相应的概念或编程...
很不错的学习资源啊!!!!在实际的网络环境里,同一时间只对一个用户服务是不可行的。一个优秀的网络服务程序除了能处理用户的输入信息,还必须能够同时响应多个客户端的...在java中,实现以上功能特点是非常容易的。
三步学会Java Socket编程.doc (word版)
Java Socket编程.pdf Java Socket编程.pdf Java Socket编程.pdf
使用JAVA编写网络通信程序 .doc Java网络编程 MulticastSocket类的使用 .doc Java网络编程---IO部分学习笔记整理 .doc Java网络编程基础 Datagram类使用方法 (1) .doc ...Java基础 三步学会Java Socket编程(三).doc
java3d socket编程 java3d socket编程 java3d socket编程 java3d socket编程 java3d socket编程
想学习在Java端Socket编程的兄弟们看过来了 Java_TCP_IP_Socket编程(原书第2版)
浅谈Socket编程及Java实现,学习java socket编程
Socket编程 QQ实现 JAVA
Java Socket网络编程.pdf 学习资料 复习资料 教学资源
java socket编程 java网络编程 课件 java socket编程 java网络编程 课件