码迷,mamicode.com
首页 > 其他好文 > 详细

序列化之Hessian序列化

时间:2017-08-30 11:00:13      阅读:109      评论:0      收藏:0      [点我收藏+]

标签:java   hessian   

Hessian序列化与Java默认的序列化区别?

    1、 Hessian 支持跨语言串行

    2、 比java序列化具有更好的性能和易用性

    3、 支持的语言比较多

package com.xingej.ser.impl;

import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;

import com.caucho.hessian.io.HessianInput;
import com.caucho.hessian.io.HessianOutput;
import com.xingej.ser.ISerializer;

public class HessianSerializer implements ISerializer {

	@Override
	public <T> byte[] serialize(T obj) {
		// 1、创建字节输出流
		ByteArrayOutputStream bos = new ByteArrayOutputStream();

		// 2、对字节数组流进行再次封装
		HessianOutput hessianOutput = new HessianOutput(bos);

		try {
			// 注意,obj 必须实现Serializable接口
			hessianOutput.writeObject(obj);
		} catch (IOException e) {
			e.printStackTrace();
		}

		return bos.toByteArray();
	}

	@SuppressWarnings("unchecked")
	@Override
	public <T> T deserialize(byte[] data, Class<T> clazz) {
		// 1、将字节数组转换成字节输入流
		ByteArrayInputStream bis = new ByteArrayInputStream(data);

		HessianInput hessianInput = new HessianInput(bis);

		Object object = null;

		try {
			object = hessianInput.readObject();
		} catch (IOException e) {
			e.printStackTrace();
		}

		return (T) object;
	}

}




本文出自 “XEJ分布式工作室” 博客,请务必保留此出处http://xingej.blog.51cto.com/7912529/1960998

序列化之Hessian序列化

标签:java   hessian   

原文地址:http://xingej.blog.51cto.com/7912529/1960998

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