最近公司里面用到了消息队列,而正如我们知道的是消息队列之间的是通过二进制形式的,下面就分享一下java中字节与对象之间的转换。

 主要是用到了ByteArrayOutputStream和ObjectOutputStream两个输出流,以及ByteArrayInputStream和ObjectInputStream两个输入流。废话不多说了,直接上代码吧!

  1. /**      
  2.  * @FileName: ByteToObject.java    
  3.  * @Package:com.test    
  4.  * @Description: TODO   
  5.  * @author: LUCKY     
  6.  * @date:2015年12月25日 下午12:18:08    
  7.  * @version V1.0      
  8.  */  
  9. package com.test;  
  10.   
  11. import java.io.ByteArrayInputStream;  
  12. import java.io.ByteArrayOutputStream;  
  13. import java.io.ObjectInputStream;  
  14. import java.io.ObjectOutputStream;  
  15. import java.util.HashMap;  
  16. import java.util.Map;  
  17.   
  18. /**   
  19.  * @ClassName: ByteToObject    
  20.  * @Description: 字节与对象之间的转换 
  21.  * @author: LUCKY   
  22.  * @date:2015年12月25日 下午12:18:08      
  23.  */  
  24. public class ByteToObject {  
  25.   
  26.     public static void main(String[] args) throws Exception {  
  27.         Student stu=new Student();  
  28.         stu.setAge("15");  
  29.         stu.setName("张三");  
  30.         Map<String,  String> map=new HashMap<String, String>();  
  31.         map.put("001""001");  
  32.         map.put("002""002");  
  33.         stu.setWage(map);  
  34.           
  35.         ByteArrayOutputStream byt=new ByteArrayOutputStream();  
  36.           
  37.         ObjectOutputStream obj=new ObjectOutputStream(byt);  
  38.       
  39.         obj.writeObject(stu);  
  40.           
  41.         byte[] bytes=byt.toByteArray();  
  42.         System.out.println(bytes);  
  43.           
  44.           
  45.         ByteArrayInputStream byteInt=new ByteArrayInputStream(bytes);  
  46.         ObjectInputStream objInt=new ObjectInputStream(byteInt);  
  47.         Student stu2=new Student();  
  48.         stu2=(Student)objInt.readObject();  
  49.           
  50.         System.out.println(stu2);  
  51.     }  
  52. }  

网友评论

更多精彩分享

游戏论坛模拟-Java培训机构,青岛Java培训,青岛计算机培训,软件编程培训,seo优化培训,网络推广培训,网络营销培训,SEM培训,网络优化,在线营销培训,Java培训游戏论坛模拟