- 浏览: 561633 次
- 性别:
- 来自: 杭州
文章分类
- 全部博客 (478)
- lucene (45)
- oracle (19)
- nutch (2)
- blog (2)
- 垂直搜索 (19)
- java综合 (89)
- spring (15)
- Hibernate (9)
- Struts (9)
- Hadoop (16)
- Mysql (12)
- nosql (10)
- Linux (3)
- MyEclipse (4)
- Ant (1)
- 设计模式 (19)
- JBPM (1)
- JSP (1)
- HtmlParser (5)
- SVN (2)
- 插件 (2)
- 收藏 (7)
- Others (1)
- Heritrix (18)
- Solr (4)
- 主题爬虫 (31)
- 内存数据库 (24)
- 分布式与海量数据 (32)
- httpclient (14)
- Tomcat (1)
- 面试宝典 (6)
- Python (14)
- 数据挖掘 (1)
- 算法 (6)
- 其他 (4)
- JVM (12)
- Redis (18)
最新评论
-
hanjiyun:
本人水平还有待提高,进步空间很大,看这些文章给我有很大的指导作 ...
JVM的内存管理 Ⅲ -
liuxinglanyue:
四年后的自己:这种方法 不靠谱。 使用javaagent的方式 ...
计算Java对象占用内存空间的大小(对于32位虚拟机而言) -
jaysoncn:
附件在哪里啊test.NoCertificationHttps ...
使用HttpClient过程中常见的一些问题 -
231fuchenxi:
你好,有redis,memlink,mysql的测试代码吗?可 ...
MemLink 性能测试 -
guyue1015:
[color=orange][/color][size=lar ...
JAVA同步机制
package com.wangtong.network; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.PrintWriter; import java.net.ServerSocket; import java.net.Socket; public class ServerSocket { public static void main(String[] args) { try { createServerSocket(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } private static void createServerSocket() throws IOException { ServerSocket serverSocket = new ServerSocket( 8189 ); Socket socket = serverSocket.accept(); // wait for client connection while ( true ) { BufferedReader in = new BufferedReader( new InputStreamReader(socket .getInputStream())); PrintWriter out = new PrintWriter(socket.getOutputStream()); while ( true ) { String str = in.readLine(); System.out.println( "server:" + str); out.println( "client receive" + str); out.flush(); if (str.equals( "exit" )) break ; } socket.close(); } } }package com.wangtong.network;
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.PrintWriter; import java.net.Socket; import java.net.UnknownHostException; import java.util.Scanner; public class ClientSocket { private static final String URL = "localhost" ; private static final int PORT = 8189 ; /** * create client socket * * @throws IOException * @throws UnknownHostException * */ private static void createClientSocket() throws UnknownHostException, IOException { Socket clientSocket = new Socket(URL, PORT); BufferedReader in = new BufferedReader( new InputStreamReader( clientSocket.getInputStream())); PrintWriter out = new PrintWriter(clientSocket.getOutputStream()); BufferedReader wt = new BufferedReader( new InputStreamReader(System.in)); while ( true ) { String str = wt.readLine(); out.println( "client send:" + str); out.flush(); if (str.equals( "end" )) { break ; } System.out.println(in.readLine()); } clientSocket.close(); } public static void main(String[] args) { try { createClientSocket(); } catch (UnknownHostException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
转:http://wangtong40.iteye.com/blog/50628
发表评论
-
熔岩的相关文章收藏
2011-02-20 21:57 1357HttpClient4 Post XML到一个服务器上 纯J ... -
我新弄的博客和论坛+新浪微博
2011-02-01 00:05 1721主博客是:http://www.liuxinglany ... -
Java编程思想 (收藏)
2011-01-07 15:34 9381、面向对象的特性 2、内存分配 3、 ... -
Java解惑系列(收藏)
2011-01-07 15:30 11461.1 java解惑你知多少(一) 1.2 jav ... -
2010 iData Forum 演讲幻灯片
2010-12-25 21:44 10002010年iData Forum数据库大会顺利结束,在 ... -
2010年6月的好文推荐
2010-12-20 20:39 851转自:人云亦云 最近发现一个非常不错的博客,叫dbthi ... -
JAVA通过JNI调用本地C语言方法
2010-12-19 20:49 760Java特性深受人们喜爱, ... -
java集合类比较
2010-12-19 20:49 1243Vector(转者注:现在Ve ... -
java对各种文件的操作详解(转)
2010-12-19 20:31 790http://blog.csdn.net/Java2King/ ... -
从一个http请求的详细过程---理解计算机网络
2010-12-18 13:58 1458http://duanple.blog.163.com/b ... -
(转)学习:一个并发的Cache
2010-12-17 17:11 987public class Memoizer implem ... -
Groovy是怎么实现createArray的
2010-12-16 19:57 715Groovy是一个基于 Java虚拟机的敏捷 动态语言。构 ... -
24款较经典的Page翻页分页css代码
2010-12-12 17:52 741<!DOCTYPE html PUBLIC &qu ... -
比较优秀的值得学习的J2EE开源项目
2010-12-12 12:53 981这篇文章写在我研究J2 ... -
J2EE的部分jar的作用
2010-12-05 10:44 1066来自:深沉的船 activation.jar:与javaMa ... -
Java的多线程Socket通信
2010-12-04 21:21 855转:http://wangtong40.iteye.com/b ... -
Servlet 3.0 实战:异步 Servlet 与 Comet 风格应用程序
2010-12-04 21:19 905转自http://www.ibm.com/develope ... -
高效编程之欲擒故纵
2010-12-04 13:36 795转:http://www.aqee.net/2010/11/3 ... -
架构师给程序员的一封信
2010-12-04 13:35 813转:http://www.aqee.net/2010/ ... -
从3个科技公司里学到的57条经验
2010-12-04 13:31 783转:http://www.aqee.net/2010/11/2 ...
相关推荐
首先,我们来详细探讨单线程Socket通信。在单线程模型中,服务器端只有一个线程处理所有客户端的连接请求。当一个客户端发起连接请求时,服务器端创建一个Socket实例,并通过这个Socket实例与客户端进行通信。这种...
Java实现的简单Socket通信是网络编程中的基础技术,主要用于设备间的双向数据传输。在这个场景中,我们有两个窗口,一个作为服务器端,另一个作为客户端,它们通过TCP协议进行通信。TCP是一种面向连接的、可靠的传输...
但是,对于初学者来说,理解单线程阻塞模型是学习网络编程的基础,有助于深入理解Socket通信的工作原理。 此外,源码分析可以帮助我们更好地理解Socket通信的细节,例如异常处理、连接超时、资源管理等。通过阅读和...
Java Socket 多线程是网络编程中的一个重要概念,它结合了Java的并发处理能力和Socket通信技术,使得服务器能够同时处理多个客户端的连接请求。在Java中,Socket是用于在网络环境中进行双向通信的类,而多线程则允许...
在Java中,`java.net.Socket`和`java.net.ServerSocket`类是实现Socket通信的核心类。ServerSocket用于服务器端,监听特定端口,等待客户端的连接请求;Socket则代表客户端,它与服务器建立连接后,可以进行数据的...
在这个场景中,我们关注的是如何使用单线程Socket编程来实现从MySQL数据库中读取数据。首先,我们需要理解Socket的基本概念,然后深入探讨如何构建Socket客户端和服务器,以及如何与MySQL数据库进行交互。 **Socket...
Java多线程Socket通信程序是实现并发网络通信的关键技术,特别是在构建高效、可扩展的服务器端应用时。在这个场景中,我们看到一个用于移动短信接口的解决方案,它利用了Java的多线程特性来处理来自多台电脑的并发...
在Java中,非阻塞式Socket通信基于NIO(Non-blocking Input/Output)机制,它与传统的BIO(Blocking I/O)不同,BIO在等待数据时会阻塞线程,而NIO则允许线程在没有数据可读或可写时继续执行其他任务,从而提高系统...
本文将深入探讨"异步和多线程socket通讯"这一主题,基于提供的描述和标签,我们将讨论如何利用多线程和异步机制来提升socket通信的效率和响应性。 首先,Socket是一种在应用程序与网络服务之间建立连接的接口,它...
在这个“基于java NIO的socket通信demo”中,我们将探讨如何使用NIO进行服务器和客户端的Socket通信,并解决通信过程中的字符集乱码问题。 首先,我们来看`NioServer.java`。这个文件中包含了一个基于NIO的服务器端...
简单大循环 单线程实现通信 1. TCP连接通信 2. Server先监听,等待Client连接 3. 双方都可以发"Stop!"停止通信,但此程序Client只会停止,Server可以一直监听,即断开后,Client可以再次连接 4. 不能一对多通信,...
【Java单线程聊天室】是一个基础的网络通信项目,主要使用了Java的Socket编程来实现客户端与服务器端的交互。对于Java初学者而言,这是一个很好的实践案例,可以帮助理解网络编程的基本原理和Java多线程的基本概念。...
Java中的Socket通信是网络编程的基础,它允许两个应用程序通过TCP/IP进行双向通信。在这个场景下,我们讨论的是一个单交互的Socket通信实现,意味着客户端发送一个请求,服务器响应后,通信结束。以下是对这个主题的...
Java基于Socket的网络通信是Java编程领域中的一个重要知识点,它涉及到如何通过网络在不同设备间交换数据。Socket在计算机网络中扮演着客户端和服务器之间的桥梁角色,使得它们能够相互通信。在这个Java项目中,我们...
在Java中,`java.net.Socket`类和`java.net.ServerSocket`类提供了Socket通信的基础框架。Socket通信通常涉及以下几个步骤: 1. **服务器端**:创建一个`ServerSocket`,监听指定的端口号,等待客户端的连接请求。 ...
本压缩包文件"TCP-socket.zip"包含了一个基于Java实现的TCP Socket通信客户端和服务端,且支持多线程并发连接。这个学习资源可以帮助我们深入了解Java中的TCP Socket编程和多线程技术。 首先,让我们来看看TCP协议...
本示例将介绍如何使用Java Socket实现简单的单线程通信。 首先,我们来看服务器端(Server)的实现。服务器端需要监听特定的端口,等待客户端的连接请求。在Java中,`ServerSocket`类用于创建监听端口的服务器。...
总结来说,Android中的Socket通信涉及网络编程、多线程、数据处理等多个方面,需要综合运用Java和Android的相关知识。理解并熟练掌握Socket通信,对于开发实时交互的应用,如聊天、游戏等,至关重要。通过实践和不断...
Java线程和Socket是两种在Java编程中至关重要的概念,特别是在构建高性能、高并发的网络应用程序时。线程是程序中的执行流,而Socket则提供了在网络间进行进程间通信(IPC)的能力。让我们深入探讨这两个主题及其在...