java Socket 编程 简例

来源:互联网 发布:java调用unity3d接口 编辑:程序博客网 时间:2024/05/10 05:29
package com.huawei.sockets;import java.io.ObjectInputStream;import java.net.ServerSocket;import java.net.Socket;import com.huawei.entity.Person;public class Servers extends Thread {private Socket socket; // 包含客户端信息的 套接字 对象public Servers(Socket socket) {this.socket = socket;this.start();}public static void main(String[] args) {try {ServerSocket server = new ServerSocket(2226); // 创建服务器端监听器while (true) {System.out.println("监听中...");Socket client = server.accept(); // 阻塞 监听 客户端信息 当接受到信息 就执行下面的代码new Servers(client);// 开启一个线程处理客户端信息}} catch (Exception e) {System.out.println("服务器端异常:" + e.getMessage());}}@Overridepublic void run() {try {// 获取输入流 并 读取信息ObjectInputStream in = new ObjectInputStream(this.socket.getInputStream());Person p = (Person) in.readObject();System.out.println("获取客户端信息:" + p);} catch (Exception e) {System.out.println("读取客户端信息异常:" + e.getMessage());}}}


服务器端负责 监听端口信息

 

 

package com.huawei.sockets;import java.io.ObjectOutputStream;import java.net.Socket;import com.huawei.entity.Person;public class Client {public static void main(String[] args) {Socket client = null;try {client = new Socket("localhost", 2226);// 创建客户端 套接字 对象ObjectOutputStream out = new ObjectOutputStream(client.getOutputStream());out.writeObject(new Person("socket test", 20, "7.gif"));// 向服务器 发送 信息} catch (Exception e) {System.out.println("客户端异常:" + e.getMessage());} finally {if (null != client){try {client.close();} catch (Exception e2) {System.out.println("客户端资源释放异常:" + e2.getMessage());}}}}}


客户端 发送信息

 

Person 类 一个简单的 javabean  这里省略代码

原创粉丝点击