0
点赞
收藏
分享

微信扫一扫

Kryo 序列化

分湖芝蘭 2023-04-26 阅读 83


磁盘序列化


Kryo kryo =  
  new  
  Kryo(); 
 
 
 
 
  // ... 
 
 
 
 
  Output output =  
  new  
  Output( 
  new  
  FileOutputStream( 
  "file.bin" 
  )); 
 
 
 
 
  SomeClass someObject = ... 
 
 
 
 
  kryo.writeObject(output, someObject); 
 
 
 
 
  output.close(); 
 
 
 
 
  // ... 
 
 
 
 
  Input input =  
  new  
  Input( 
  new  
  FileInputStream( 
  "file.bin" 
  )); 
 
 
 
 
  SomeClass someObject = kryo.readObject(input, SomeClass. 
  class 
  ); 
 
 
 
 
  input.close();


网络序列化



 



import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.InputStream;

import com.esotericsoftware.kryo.Kryo;
import com.esotericsoftware.kryo.io.Input;
import com.esotericsoftware.kryo.io.Output;
import com.taobao.metamorphosis.example.spring.messages.Trade;

public class Test {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Kryo kryo = new Kryo();
		ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
		Output output = new Output(outputStream);

		Trade trade = new Trade();
		trade.setId(1);
		trade.setMoney(12);
		trade.setName("fsdfdsdsfdsfsdfd");
		trade.setAddress("中文");
		kryo.writeObject(output, trade);
		output.close();

		byte[] mesg = outputStream.toByteArray();

		System.out.println(new String(mesg));
		InputStream is = new ByteArrayInputStream(mesg);
		Input input = new Input(is);

		Trade t = kryo.readObject(input, Trade.class);
		input.close();
		String s=t.getAddress();
		System.out.println(s);
	}

}

举报

相关推荐

0 条评论