package test.bwl;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;
public class SocketManager {
/**
* @param args
* @throws IOException
*/
public static void main(String[] args) {
SocketManager manager = new SocketManager();
manager.doListen();
}
public void doListen() {
ServerSocket server;
try {
server = new ServerSocket(9991);
while (true) {
Socket client = server.accept();
new Thread(new SSocket(client)).start();
}
} catch (IOException e) {
e.printStackTrace();
}
}
//服务器进程
class SSocket implements Runnable {
Socket client;
public SSocket(Socket client) {
this.client = client;
}
public void run() {
DataInputStream input;
DataOutputStream output;
try {
input = new DataInputStream(client.getInputStream());
output = new DataOutputStream(client.getOutputStream());
//
String listMsg = input.readUTF();
output.writeUTF("Recive: " + listMsg + " \r\n Thx...");
System.out.println("Recive: " + listMsg);
listMsg = input.readUTF();
output.writeUTF("Recive Second: " + listMsg + " \r\n Thx...");
System.out.println("Recive Second: " + listMsg);
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.net.Socket;
import java.net.UnknownHostException;
public class SocketClient {
public static void main(String[] args) {
Socket socket = null;
try {
socket = new Socket("127.0.0.1", 9991);
//向服务器端第一次发送字符串
OutputStream netOut = socket.getOutputStream();
DataOutputStream doc = new DataOutputStream(netOut);
DataInputStream in = new DataInputStream(socket.getInputStream());
//向服务器端第二次发送字符串
doc.writeUTF("list");
String res = in.readUTF();
System.out.println(res);
doc.writeUTF("bye");
res = in.readUTF();
System.out.println(res);
doc.close();
in.close();
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
if (socket != null) {
try {
socket.close();
} catch (IOException e) {
}
}
}
}
}
分享到:
相关推荐
Java Socket发送和接收的例子 能正确运行 代码有注释
java Socket通信实现源码示例
本例包含服务器端和客户端,多线程,每线程多次发送,Eclipse工程,启动服务器使用 nu.javafaq.server.NioServer,启动客户端使用 nu.javafaq.client.NioClient。另本例取自javafaq.nv上的程序修改而成
java socket小例子TCP&&UDP
java socket 通讯例子附有源码 希望还不太理解java socket的原理的朋友,通过这3个简单到复杂的例子有锁帮助。 详细说明请下载。
JAVA Socket通信示例,包含单工、半双工、全双工通信示例.zip
一个使用的java socket 客户端和服务端例子,优化了数据传输的中文问题。
java socket udp网络通讯小例子
本例子解析了如何进行JAVA SOCKET 开发 采用CINDY 开源包进行开发
这个是关于刚刚学习Java的人学习Socket编程的一个很好的例子!这个本热就是txt文档写的!很实用!大家有需要的可以下载着学习交流一下!
两者之间使用基于TCP的Socket通信方式。可是,做了一个测试小例子,结果从客户端传过来的都是乱码。于是上网查,希望可以找到解决方法,可是,网上有好多的答案,经过了很多的实验,都不能很好的解决。没办法只能靠...
基于TCP和UDP的socket编程,给出了最简单的示例代码。 相关博文地址: http://blog.csdn.net/wintys/archive/2008/12/15/3525643.aspx http://blog.csdn.net/wintys/archive/2008/12/15/3525619.aspx
例子都可以跑通均已测试通过 com.socket 包中是一个简单的客户端发给服务器的例子 com.socket.complex 使用多线程来模拟通信 com.socket.block 根据客户端传递的参数来返回不同的信息
是一个java在进行socket编程时,关于线程池的介绍,有代码和例子
这个socket通信比较直观,比较容易看懂,实现了Java中的socket的通信问题。是Java网络编程的一个比较不错的例子!
我们上培训时做的一个小例子,用Socket和线程编写的一个局域网聊天的小例子。需要了解线程的知识!是个控制台程序……演示需要在CMD下运行,同时运行两个就好了。关键在于学习代码~嘿嘿
基于多线程实现的JavaSocket客户端-服务端点对点异步通信程序代码
JAVA Socket教程,比较详细的例子,看了就会!
写的一个关于socket的例子,实现了客户端和服务器端的简单交互,客户端给服务端发送命令和jar包由服务端执行后返回结果
本例子是本人编写的JAVA socket编程