RPC远程过程调用之Hessian 基于HTTP
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相关推荐
- 微服务之RPC(远程过程调用)的四种方式
微服务思想 微服务思想-注册中心zookeeper 微服务: 架构设计采用分布式思想,当服务器发生故障时,可以实现自动化的故障迁移.无需人为干预. 注册中心实现原理: ZK工作原理说明 Zookeep ...
- spring-boot重头再来 6 分布式理论 RPC远程过程调用 Zookeeper安装 Dubbo SpringBoot + Dubbo + zookeeper Spring Security
spring-boot重头再来 6 文章目录 spring-boot重头再来 6 分布式理论 RPC远程过程调用 Zookeeper安装 Dubbo dubbo-admin安装 dubbo-admin ...
- rpc远程过程调用_什么是远程过程调用(RPC)?
rpc远程过程调用 Remote Procedure Call (RPC) is a protocol or architecture which is used to run programmes ...
- RPC Demo(二) 基于 Zookeeper 的服务发现
RPC Demo(二) 基于 Zookeeper 的服务发现 简介 基于上篇的:RPC Demo(一) Netty RPC Demo 实现 第二部分来实现使用Zookeeper作为服务 ...
- RPC远程过程调用简介
1. 什么是RPC 远程过程调用(英语:Remote Procedure Call,缩写为 RPC,也叫远程程序调用)是一个计算机通信协议.该协议允许运行于一台计算机的程序调用另一台计算机的子程序,而 ...
- RPC(远程过程调用协议)介绍
RPC框架解释 谁能用通俗的语言解释一下什么是RPC框架? -远程过程调用协议RPC(Remote Procedure Call Protocol) 首先了解什么叫RPC,为什么要RPC,RPC是指远 ...
- RPC远程过程调用详解
RPC概念解析 首先要知道RPC是什么,以及RPC能做什么.RPC是指远程过程调用,也就是说两台服务器A,B,一个应用部署在A服务器上,想要调用B服务器上应用提供的函数/方法,由于不在一个内存空间,不 ...
- RPC远程过程调用概念及实现
什么是RPC RPC 的全称是 Remote Procedure Call 是一种进程间通信方式. 它允许程序调用另一个地址空间(通常是共享网络的另一台机器上)的过程或函数,而不用程序员显式编码这个远 ...
- RPC 远程过程调用(Remote Procedure Call)
是RPC框架,首先了解什么叫RPC,为什么要RPC,RPC是指远程过程调用,也就是说两台服务器A,B,一个应用部署在A服务器上,想要调用B服务器上应用提供的函数/方法,由于不在一个内存空间,不能直接调 ...
最新文章
- 英特尔10纳米处理器再度跳票,或收缩芯片代工业务
- FD.io/VPP — IPSec
- 完善vim bccalc_linux插件
- MySQL配置文件优化
- 东南大学计算机学院方效林,方效林
- 窗口句柄、窗口类对象的关系
- macbook图形化编程_如何判断MacBook使用的是哪种图形芯片(并进行切换)
- 太赞了!谷歌、DeepMind提出高效Transformer评估基准
- (109)FPGA面试题-Verilog实现4位Johnson Counter
- 小程序服务器1兆宽带够用,宽带经验 篇一:200M宽带,真的适合你吗?
- Vue+Vue Router+Webpack打包网站基础页面
- 中科大 EPC课程 爬虫(最新,效果良好)
- EhCache初体验
- jQuery计算时间差和阴阳历转换
- 长序列测序数据分析的机遇与挑战
- 利用ajax实现excel报表导出(解决乱码问题)
- Java Web课程体系
- 笔记本 服务器 性能,笔记本CPU性能天梯图2021最新6月
- 北邮智能车仿真培训(一)—— 安装仿真环境
- 在cmd 中输入了错误mysql命令后,如何退出?
热门文章
- Python--第2次平时作业
- C语言用循环结构算平均值,C语言循环结构选择题().doc
- Linux 用户和组
- Java LinkedList双向链表源码分析
- 数列递推(牛客练习赛83)(数学、分块)
- CF1237F Balanced Domino Placements(组合计数,dp)
- Codeforces Round #688 (Div. 2)
- Alice and Bob
- I - Washing clothes
- CodeForces 1396E Distance Matching(构造+树的重心+dfs+set)