`
zjx2388
  • 浏览: 1306690 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

java,socket编程(短连接)

阅读更多
package com.socket;

import java.net.ServerSocket;

public class TestServerSocket {
	public final static int PORT = 9000;

	public TestServerSocket() {
	}

	public static void main(String[] args) {
		ServerSocket serverSocket = null;
		try {
			serverSocket = new ServerSocket(PORT);
			serverSocket.setSoTimeout(50);
			int i = 0;
			while (true) {
				new ServerThread(serverSocket.accept());
				System.out.println("i= " + ++i);
			}
		} catch (Exception ex) {
			ex.printStackTrace();
			
		} finally {
			
		}
	}
}

 

 

package com.socket;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.net.Socket;

public class ServerThread extends Thread {
	
	Socket socket = null;
	BufferedReader in = null;
	PrintWriter out = null;

	public ServerThread(Socket s) throws IOException {
		socket = s;
		in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
		out = new PrintWriter(new BufferedWriter(new OutputStreamWriter(socket
				.getOutputStream())), true);
		start();
	}

	public void run() {
		try {
			while (true) {
				String str = in.readLine();
				if (str != null && str.equals("end ")) {
					break;
				}
				out.println("From   server= " + str);
				System.out.println("client= " + str);
			} // end while
		} catch (Exception ex) {
			ex.printStackTrace();
		} finally {
			try {
				socket.close();
			} catch (Exception ex) {
				ex.printStackTrace();
			}// end try
		}// end try
	}

}

 

 

package com.socket;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.net.InetAddress;
import java.net.Socket;

public class ClientSocket {
	public ClientSocket() {
	}

	public static void main(String[] args) {
		InetAddress address = null;
		Socket socket = null;
		BufferedReader in = null;
		PrintWriter out = null;
		try {
			address = InetAddress.getLocalHost();
			socket = new Socket(address, 9000);
			in = new BufferedReader(new InputStreamReader(socket
					.getInputStream()));
			out = new PrintWriter(new BufferedWriter(new OutputStreamWriter(
					socket.getOutputStream())), true);
			// input from console
			BufferedReader console = new BufferedReader(new InputStreamReader(
					System.in));
			for (;;) {
				String consoleIn = console.readLine();
				out.write(consoleIn);
				out.flush();
				if (consoleIn != null && consoleIn.equals("end ")) {
					break;
				}
				String read = in.readLine();
				System.out.println("From   server= " + read);
			}// end for
		} catch (Exception ex) {
			ex.printStackTrace();
		} finally {
			try {
				in.close();
				out.close();
				socket.close();
			} catch (Exception ex) {
				ex.printStackTrace();
			}
		}
	}
}

 

分享到:
评论

相关推荐

    java socket 长连接实例

    java socket 的长连接实例,服务器端支持多个客户端连接,服务器端支持客户端的掉线检测。多线程编程

    总结java_socket编程

    java关于socket的编程,如何建立连接,如何通信之类的简短介绍

    三步学会Java Socket编程

    三步学会Java Socket编程  所谓socket通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄。应用程序通常通过"套接字"向网络发出请求或者应答网络请求。  以J2SDK-1.3为例,Socket和ServerSocket...

    JAVA Socket远程执行任务

    写的一个关于socket的例子,实现了客户端和服务器端的简单交互,客户端给服务端发送命令和jar包由服务端执行后返回结果

    java socket编程方案.doc

    本文档主要讲述的是java socket编程方案;网络上的两个程序通过一个双向的通讯连接实现数据的交换,这个双向链路的一端称为一个Socket。Socket通常用来实现客户方和服务方的连接。Socket是TCP/IP协议的一个十分流行...

    基于Socket的java网络编程

    基于Socket的java网络编程, Socket通讯的过程 Server端Listen(监听)某个端口是否有连接请求,Client端向Server 端发出Connect(连接)请求,Server端向Client端发回Accept(接受)消息。一个连接就建立起来了。Server...

    Java TCPIP Socket编程 源码

    一个Socket实例代表了TCP连接的一个客户端,而一个ServerSocket实例代表了TCP连接的一个服务器端,一般在TCP Socket编程中,客户端有多个,而服务器端只有一个,客户端TCP向服务器端TCP发送连接请求,服务器端的...

    Socket编程 目录连接.doc

    关于Java Socket 网络编程的用法和实例,包括聊天室...

    Socket编程.txt

    Socket编程是一种网络编程方式,它通过使用套接字(Socket)这个抽象的概念,允许应用程序在网络上与其他计算机进行通信。Socket编程提供了跨平台的通信能力,使得不同平台上的应用程序能够相互通信。 在Socket编程...

    java Socket 通讯 源代码

    在Java中用socket进行客户/服务器之间的通信编程。Socket是两个实体之间进行通信的有效端点。通过socket可以获得源IP地址和源端口、终点IP地址和终点端口。用户可以将多个socket连入同一个端口,以便对于单个端口...

    java socket通信编程

    Socket和ServerSocket类库位于java.net包中。ServerSocket用于服务器端,Socket是建立网络连接时使用的。在连接成功时,应用程序两端都会产生一个Socket实例,操作这个实例,完成所需的会话。对于一个网络连接来说,...

    基于JAVA SOCKET网络编程的一种新实现

    基 于JAVA SOCKET网 络 编 程 的 一 种 新 实 现

    Java网络Socket编程

    i. 两个Java应用程序可通过一个双向的网络通信的连接实现数据交互,这个双向链接的一端称为一个Socket。 ii. Socket通常用实现client-server连接。 iii. Java.net包中定义了两个类Socket和ServerSocket,分别用来...

    socket长连接demo

    工作遇到的情况, 记录一个简单的保持长连接的方法,希望对自己对需要使用socket编程的童鞋有点用处。

    网络语音通信 socket编程实现

    本科课程设计的程序 实现的是两台在同一局域网内的语音通信 可以做到实时

    java_socket(IBM)

    java socket(IBM) ...1.7 Java socket - 一个带有连接池的示例 . . . .. 35 1.8 Java socket - 现实生活中的套接字 . . . . .. . . 45 1.9 Java socket - 总结 . . . . . . . . . . . . . . . . 50

    单线程Socket编程实现mysql数据读取

    Socket客户端通过Socket服务器读取mysql数据库中的一条记录。

    Android-Socket长连接通信心跳包消息回调Java服务端

    Socket长连接、通信、心跳包、消息回调、Java服务端

Global site tag (gtag.js) - Google Analytics