码迷,mamicode.com
首页 > 编程语言 > 详细

JAVA SOCKET 序列化反序列化

时间:2017-05-21 12:56:34      阅读:219      评论:0      收藏:0      [点我收藏+]

标签:gen   重启   pre   ctr   tac   cto   serial   客户端   rac   

以下是客户端序列化后将对象发送给服务端

public ResponseBean r(int b)  {
		
		try {
			Socket socket = new Socket(Config.ServerIP,Config.ServerPort);
			
			RequestBean rb = new RequestBean();
			rb.password = this.password;
			rb.ctrl = b;
			OutputStream outputStream = socket.getOutputStream();
			ObjectOutputStream objectOutputStream = new ObjectOutputStream(outputStream);
			
			objectOutputStream.writeObject(rb);
			objectOutputStream.flush();
			objectOutputStream.close();
			//socket.close();
		} catch (UnknownHostException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return null;
	}

  以下是服务端接收到序列化之后进行反序列化

 1 public void r(Socket s){    //进行管理的函数
 2         try {
 3             InputStream inputStream = s.getInputStream();
 4 
 5 
 6             ObjectInputStream objectInputStream = new ObjectInputStream(inputStream);
 7             try {
 8                 RequestBean rb =(RequestBean) objectInputStream.readObject();
 9                 System.out.println(rb.password);
10             } catch (ClassNotFoundException e) {
11                 // TODO Auto-generated catch block
12                 System.out.println("err 收到客户端的请求不能发序列化到RequestBean");
13                 //e.printStackTrace();
14             }
15             
16             
17             
18         } catch (IOException e) {
19             // TODO Auto-generated catch block
20             e.printStackTrace();
21         }
22     }

以下是序列化对象记得要实现Serializable接口,不然会出现unknown source这样的错误

package cn.fucihua.Model.Bean;

import java.io.Serializable;

public class RequestBean implements Serializable{ //序列化之后传给代理池服务的对象
    public String password = "";
    public int ctrl = 0;
        /*
         *  1     开启服务
         *  2    关闭服务
         *  3    重启服务
         *  0    查询状态
         * */
}        

服务端客户端的类包名记得要一致

JAVA SOCKET 序列化反序列化

标签:gen   重启   pre   ctr   tac   cto   serial   客户端   rac   

原文地址:http://www.cnblogs.com/chglory/p/6884447.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!