初识 hessian--helloworld

     说实话在这个知识大爆炸的年代里,真心是学无止境的呀,出来工作了见得世面也就广了,关于hessian这个名词是组长在讲入职第一天讲需求的时候提到的,当时都不知道hessian怎么写,通过一个多月对项目的了解,渐渐知道了hessian但是在项目中的运用我还是不很明白,也可见这个框架封装的很好,不过我这么有探索精神的孩子绝对不能就这样放过hessian这个知识点的,这次就来说说hessian这个轻量级的远程调用工具吧。
     其实说到远程调用我并不陌生,因为之前的高校项目就是基于远程调用的,所以了解其hessian来也并不困难,下面就从最简单的开始吧!     
一、hessian简介
     Hessian是一个轻量级的remoting on http工具,使用简单的方法提供了RMI的功能. 相比WebService,Hessian更简单、快捷。采用的是二进制RPC协议,因为采用的是二进制协议,所以它很适合于发送二进制数据。

二、helloworld
      了解一个新的技术点,首先从helloworld开始,下面就通过helloworld来看看hessian的使用吧!
1、首先创建web项目
初识 hessian--helloworld_第1张图片

2、分别创建服务接口和服务的实现,代码如下:
package com.tgb.hessian.service;
public interface HelloService {
    
    /**
     * hellworld 服务类接口
     * @author 陈丽娜
     * @version 2015年7月26日下午6:18:41
     * @return
     */
    public String HellowWorld(String name);
} 

package com.tgb.hessian.service.impl;
import com.tgb.hessian.service.HelloService;
/**
 * 服务实现类
 * @author 陈丽娜
 * @version 2015年7月26日下午9:17:03
 */
public class HelloServiceImpl implements HelloService {
    @Override
    public String HellowWorld(String name) {
        // TODO Auto-generated method stub
        return "hello" + name;
    }
}


3、引入hessian的jar包:
把jar引入到lib下

初识 hessian--helloworld_第2张图片
4、配置web.xml文件
sion="1.0" encoding="UTF-8"?>

  HessianTest
  
 
      
         index.jsp
     
 
     
         hessian-service
         
         
             com.caucho.hessian.server.HessianServlet
         
         
                     
             home-class            
             
                 
                 com.tgb.hessian.service.impl.HelloServiceImpl
             
         
 
                     
             home-api
             
             com.tgb.hessian.service.HelloService
         
 
     
 
     
         hessian-service
         /hessian
     
  


5、接口打成jar包
为了客户端的调用,需要将服务端接口打成jar以便客户端的调用。

初识 hessian--helloworld_第3张图片
初识 hessian--helloworld_第4张图片



6、客户端调用
新建一个java项目,同样引入hessian的jar包,同时还需要引入上一步导出的jar包:


新建一个测试类:
package com.tgb.hessian.test;
import java.net.MalformedURLException;
import org.junit.Test;
import com.caucho.hessian.client.HessianProxyFactory;
import com.tgb.hessian.service.HelloService;
public class TestHessian {
        @Test
        public void  Test1() throws MalformedURLException {
            String url = "http://localhost:8080/HessianTest/hessian";
             System.out.println(url);
                
            HessianProxyFactory factory = new HessianProxyFactory();
            HelloService helloService = (HelloService) factory.create(HelloService.class, url);
            System.out.println(helloService.HellowWorld("陈丽娜"));
        }
}


运行结果如下:
初识 hessian--helloworld_第5张图片


经过这个简单的demo是不是觉得hessian很轻量级,很简单呢,下篇博客就来写写hessian与spring的结合吧!

你可能感兴趣的:(java)