RPC远程过程调用之Hessian 基于HTTP
生活随笔
收集整理的這篇文章主要介紹了
RPC远程过程调用之Hessian 基于HTTP
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Hessian使用C/S方式,基于HTTP協(xié)議傳輸,使用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:
執(zhí)行客戶端main方法
執(zhí)行結果::
客戶端調用了服務端sayHello方法?
總結
以上是生活随笔為你收集整理的RPC远程过程调用之Hessian 基于HTTP的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 海来阿木个人资料和他老婆(海来阿木代表作
- 下一篇: 鼠标滚轮没坏却没反应解决方法