一、hessian的maven信息:

  1. <dependency>
  2. <groupId>com.caucho</groupId>
  3. <artifactId>hessian</artifactId>
  4. <version>4.0.38</version>
  5. </dependency>

二、入门示例,以web方式提供对外接口

(1)服务接口:

  1. package com.tianjunwei.hessian.server;
  2. public interface HelloService {
  3. public String helloWorld(String message);
  4. }

(2)接口实现:

  1. package com.tianjunwei.hessian.server;
  2. public class HelloServiceImpl implements HelloService{
  3. @Override
  4. public String helloWorld(String message) {
  5. return "hello," + message;
  6. }
  7. }

(3)web.xml的配置:

  1. <web-app>
  2. <servlet>
  3. <servlet-name>hessian-service</servlet-name>
  4. <servlet-class>
  5. com.caucho.hessian.server.HessianServlet
  6. </servlet-class>
  7. <init-param>
  8. <param-name>home-class</param-name>
  9. <param-value>
  10. <!-- 服务实现类 -->
  11. com.tianjunwei.hessian.server.HelloServiceImpl
  12. </param-value>
  13. </init-param>
  14. <init-param>
  15. <param-name>home-api</param-name>
  16. <!-- 服务接口 -->
  17. <param-value>com.tianjunwei.hessian.server.HelloService</param-value>
  18. </init-param>
  19. </servlet>
  20. <servlet-mapping>
  21. <servlet-name>hessian-service</servlet-name>
  22. <url-pattern>/hessian</url-pattern>
  23. </servlet-mapping>
  24. </web-app>

(4)客户端调用:

第(3)步中,通过配置servlet,这样就可以通过发布的http进行访问,根据Hessian提供的机制,这样就可以通过url进行服务调用。

  1. package com.tianjunwei.hessian.client;
  2. import java.net.MalformedURLException;
  3. import com.caucho.hessian.client.HessianProxyFactory;
  4. import com.tianjunwei.hessian.server.HelloService;
  5. public class HelloServiceMain {
  6. public static void main(String [] args) throws MalformedURLException{
  7. String url = "http://localhost:8080/hessian";
  8. System.out.println(url);
  9. HessianProxyFactory factory = new HessianProxyFactory();
  10. HelloService helloService = (HelloService) factory.create(HelloService.class, url);
  11. System.out.println(helloService.helloWorld("jimmy"));
  12. }
  13. }

运行结果:

http://localhost:8080/hessian

hello,jimmy

Hessian探究(一)Hessian入门示例的更多相关文章

  1. Hessian探究(一)Hessian与springMVC结合

    上一篇博客Hessian探究(一)Hessian入门示例我们初步简单的介绍了一下Hessian的使用入门示例,我们是通过Servlet来暴露Hessian的对外服务的,接下来我们介绍一下通过Sprin ...

  2. Hessian探究(一)Hessian与Spring结合

    上一篇博客Hessian探究(一)Hessian入门示例我们初步简单的介绍了一下Hessian的使用入门示例,由于Spring现在使用的实在是太广泛了,接下来我们介绍一下Hessian和Spring一 ...

  3. 【RPC】使用Hessian构建RPC的简单示例

    服务接口和实现 public interface HelloService { // 服务方法 String sayHello(String name); } public class HelloSe ...

  4. [WCF编程]1.WCF入门示例

    一.WCF是什么? Windows Communication Foundation(WCF)是由微软开发的一系列支持数据通信的应用程序框架,整合了原有的windows通讯的 .net Remotin ...

  5. Maven入门示例(3):自动部署至外部Tomcat

    Maven入门示例(3):自动部署至外部Tomcat 博客分类:  maven 2012原创   Maven入门示例(3):自动部署至外部Tomcat 上一篇,介绍了如何创建Maven项目以及如何在内 ...

  6. 1.【转】spring MVC入门示例(hello world demo)

    1. Spring MVC介绍 Spring Web MVC是一种基于Java的实现了Web MVC设计模式的请求驱动类型的轻量级Web框架,即使用了MVC架构模式的思想,将web层进行职责解耦,基于 ...

  7. 【java开发系列】—— spring简单入门示例

    1 JDK安装 2 Struts2简单入门示例 前言 作为入门级的记录帖,没有过多的技术含量,简单的搭建配置框架而已.这次讲到spring,这个应该是SSH中的重量级框架,它主要包含两个内容:控制反转 ...

  8. Spring MVC 入门示例讲解

    在本例中,我们将使用Spring MVC框架构建一个入门级web应用程序.Spring MVC 是Spring框架最重要的的模块之一.它以强大的Spring IoC容器为基础,并充分利用容器的特性来简 ...

  9. Couchbase之个人描述及入门示例

    本文不打算抄袭官方或者引用他人对Couchbase的各种描述,仅仅是自己对它的一点理解(错误之处,敬请指出),并附上一个入门示例. ASP.NET Web项目(其他web开发平台也一样)应用规模小的时 ...

随机推荐

  1. 安装ipython,使用scrapy shell来验证xpath选择的结果 | How to install iPython and how does it work with Scrapy Shell

    1. scrapy shell 是scrapy包的一个很好的交互性工具,目前我使用它主要用于验证xpath选择的结果.安装好了scrapy之后,就能够直接在cmd上操作scrapy shell了. 具 ...

  2. python实现tab键自动补全

    一.查询python安装路径,一般默认是/usr/lib64/ [root@host2 ~]# python Python (r266:, Jul , ::) [GCC (Red Hat -)] on ...

  3. HTML的基本介绍

    HTML(HyperText Markup Language): 超文本标记语言,超文本就是指页面内可以包含图片.链接,甚至音乐.程序等非文字元素. HTML是标记语言!!!!! HTML是标记语言! ...

  4. 华科机考:a+b

    时间限制:1秒     空间限制:32768K 题目描述 实现一个加法器,使其能够输出a+b的值. 输入描述: 输入包括两个数a和b,其中a和b的位数不超过1000位. 输出描述: 可能有多组测试数据 ...

  5. Java内存分配、管理小结

    转载自:http://java-mzd.iteye.com/blog/848635

  6. java怎样获取CPU占用率和硬盘占用率

    通过jmx可以监控vm内存使用,系统内存使用等,以下是网上某博客代码,特点是通过window和linux命令获得CPU使用率. 利用java程序实现获取计算机cpu利用率和内存使用信息. packag ...

  7. Hibernate中Session之get和load方法的真正区别

    最近在学习SHH框架中的hibernate,对Session的get和load方法,有点混不清楚,不知道区别在哪,或者对它们的区别感触不深.所以百度了一下,结果问题来了.百度的结果和实际测试的结果出入 ...

  8. C++ 程序在运行时不显示dos界面

    在程序最开始处加一句: #pragma comment( linker, "/subsystem:windows /entry:mainCRTStartup" ) PS: 在VS中 ...

  9. 利用JAVA多线程来提高数据处理效率

    肿瘤大数据挖掘中经常需要处理上百亿行的文本文件,这些文件往往高达数百GB,假如文件结构简单统一,那么用sed和awk 处理是非常方便和快速的.但有时候会遇到逻辑较为复杂的处理流程,这样我一般会用JAV ...

  10. ACM Adding Reversed Numbers(summer2017)

    The Antique Comedians of Malidinesia prefer comedies to tragedies. Unfortunately, most of the ancien ...