Hessian使用C/S方式,基于HTTP协议传输,使用Hessian二进制序列化。

添加依赖:

<dependency><groupId>com.caucho</groupId><artifactId>hessian</artifactId><version>4.0.7</version>
</dependency>

服务端使用Web服务tomcat:

<web-app><servlet><servlet-name>HessianServlet</servlet-name><servlet-class>com.caucho.hessian.server.HessianServlet</servlet-class><init-param><param-name>service-class</param-name><param-value>com.itheima.service.impl.UserServiceImpl</param-value></init-param></servlet><servlet-mapping><servlet-name>HessianServlet</servlet-name><url-pattern>/hessianServlet</url-pattern></servlet-mapping></web-app>

注意web-app中的servlet写法

package com.itheima.service;public interface UserService {String sayHello(String name);
}
package com.itheima.service.impl;import com.itheima.service.UserService;public class UserServiceImpl implements UserService {@Overridepublic String sayHello(String name) {return name + "调用了服务端sayHello方法";}
}

Hessian_client

package com.itheima;import com.caucho.hessian.client.HessianProxyFactory;
import com.itheima.service.UserService;import java.net.MalformedURLException;public class HessianMain {public static void main(String[] args) throws MalformedURLException {String url = "http://localhost:8080/hessianServlet";HessianProxyFactory factory = new HessianProxyFactory();UserService service = (UserService) factory.create(UserService.class, url);String hello = service.sayHello("客户端");System.out.println(hello);}
}

注意和RMI一样,都需要将服务端的UserService接口复制到客户端,路径包名要一直,否则报错:

启动Server:

执行客户端main方法

执行结果::

客户端调用了服务端sayHello方法

RPC远程过程调用之Hessian 基于HTTP相关推荐

  1. 微服务之RPC(远程过程调用)的四种方式

    微服务思想 微服务思想-注册中心zookeeper 微服务: 架构设计采用分布式思想,当服务器发生故障时,可以实现自动化的故障迁移.无需人为干预. 注册中心实现原理: ZK工作原理说明 Zookeep ...

  2. spring-boot重头再来 6 分布式理论 RPC远程过程调用 Zookeeper安装 Dubbo SpringBoot + Dubbo + zookeeper Spring Security

    spring-boot重头再来 6 文章目录 spring-boot重头再来 6 分布式理论 RPC远程过程调用 Zookeeper安装 Dubbo dubbo-admin安装 dubbo-admin ...

  3. rpc远程过程调用_什么是远程过程调用(RPC)?

    rpc远程过程调用 Remote Procedure Call (RPC) is a protocol or architecture which is used to run programmes ...

  4. RPC Demo(二) 基于 Zookeeper 的服务发现

    RPC Demo(二) 基于 Zookeeper 的服务发现 简介     基于上篇的:RPC Demo(一) Netty RPC Demo 实现     第二部分来实现使用Zookeeper作为服务 ...

  5. RPC远程过程调用简介

    1. 什么是RPC 远程过程调用(英语:Remote Procedure Call,缩写为 RPC,也叫远程程序调用)是一个计算机通信协议.该协议允许运行于一台计算机的程序调用另一台计算机的子程序,而 ...

  6. RPC(远程过程调用协议)介绍

    RPC框架解释 谁能用通俗的语言解释一下什么是RPC框架? -远程过程调用协议RPC(Remote Procedure Call Protocol) 首先了解什么叫RPC,为什么要RPC,RPC是指远 ...

  7. RPC远程过程调用详解

    RPC概念解析 首先要知道RPC是什么,以及RPC能做什么.RPC是指远程过程调用,也就是说两台服务器A,B,一个应用部署在A服务器上,想要调用B服务器上应用提供的函数/方法,由于不在一个内存空间,不 ...

  8. RPC远程过程调用概念及实现

    什么是RPC RPC 的全称是 Remote Procedure Call 是一种进程间通信方式. 它允许程序调用另一个地址空间(通常是共享网络的另一台机器上)的过程或函数,而不用程序员显式编码这个远 ...

  9. RPC 远程过程调用(Remote Procedure Call)

    是RPC框架,首先了解什么叫RPC,为什么要RPC,RPC是指远程过程调用,也就是说两台服务器A,B,一个应用部署在A服务器上,想要调用B服务器上应用提供的函数/方法,由于不在一个内存空间,不能直接调 ...

最新文章

  1. 英特尔10纳米处理器再度跳票,或收缩芯片代工业务
  2. FD.io/VPP — IPSec
  3. 完善vim bccalc_linux插件
  4. MySQL配置文件优化
  5. 东南大学计算机学院方效林,方效林
  6. 窗口句柄、窗口类对象的关系
  7. macbook图形化编程_如何判断MacBook使用的是哪种图形芯片(并进行切换)
  8. 太赞了!谷歌、DeepMind提出高效Transformer评估基准
  9. (109)FPGA面试题-Verilog实现4位Johnson Counter
  10. 小程序服务器1兆宽带够用,宽带经验 篇一:200M宽带,真的适合你吗?
  11. Vue+Vue Router+Webpack打包网站基础页面
  12. 中科大 EPC课程 爬虫(最新,效果良好)
  13. EhCache初体验
  14. jQuery计算时间差和阴阳历转换
  15. 长序列测序数据分析的机遇与挑战
  16. 利用ajax实现excel报表导出(解决乱码问题)
  17. Java Web课程体系
  18. 笔记本 服务器 性能,笔记本CPU性能天梯图2021最新6月
  19. 北邮智能车仿真培训(一)—— 安装仿真环境
  20. 在cmd 中输入了错误mysql命令后,如何退出?

热门文章

  1. Python--第2次平时作业
  2. C语言用循环结构算平均值,C语言循环结构选择题().doc
  3. Linux 用户和组
  4. Java LinkedList双向链表源码分析
  5. 数列递推(牛客练习赛83)(数学、分块)
  6. CF1237F Balanced Domino Placements(组合计数,dp)
  7. Codeforces Round #688 (Div. 2)
  8. Alice and Bob
  9. I - Washing clothes
  10. CodeForces 1396E Distance Matching(构造+树的重心+dfs+set)