`

hessian远程框架使用

阅读更多
     hessian远程框架的使用简述

hessian是个简单好用的java远程调用框架,其不与spring结合使用,比结合spring使用更为简单,所以我一般直接采用不与spring整合配置的使用方式,当然,在具体的服务类里,还是会去调用spring容器的服务类来执行数据库访问。这样我觉得更方便。

   下面,我就讲一下不整合spring的调用方式:

   只要引入hessian的jar包便可,不需要依赖别的jar包,我用的hessian-4.0.7.jar;
hessian会自己序列化与反序列化参数,开发者无需关注这些。
  1.  在web.xml中增加如下配置:

<servlet>
   <servlet-name>remote</servlet-name>
   <servlet-class>com.caucho.hessian.server.HessianServlet</servlet-class>
       <init-param>
      <param-name>service-class</param-name>
      <param-value>com.zlwh.member.remote.BulletinService</param-value>
    </init-param>
   <load-on-startup>1</load-on-startup>
  </servlet>
       <servlet-mapping>
    <servlet-name>remote</servlet-name>
    <url-pattern>/remote/*</url-pattern>
  </servlet-mapping>

注意service-class参数配置替换成你自己的服务类便可以。

2. 服务类及接口:

public interface IBulletinService {
   public String addBulletin(Bulletin entity);  
   public int getUserNoReadCount(Long userId)throws Exception; 
}

实现类:
public class BulletinService implements IBulletinService{
@Override
public String addBulletin(Bulletin entity) {
String result="OK";
BulletinManager bulletinManager=ApplicationContextUtils.getBean("bulletinManager");
entity.setCreateTime(new Timestamp(System.currentTimeMillis()));
result=this.validateInfo(entity);
try{
    bulletinManager.save(entity);
}catch(Exception e){
result="FAILED";
}
return result;
}

@Override
public int getUserNoReadCount(Long userId)throws Exception{
BulletinManager bulletinManager=ApplicationContextUtils.getBean("bulletinManager");
return bulletinManager.getUserNoReadCount(userId);
}
}

3.客户端调用:

客户端需要引入服务的接口类IBulletinService ,hessian的jar包,如果参数不是本地对象,需要引入参数对象。


public class TestRemote {

/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
String url = "http://127.0.0.1:8080/uc-backend/remote";
        HessianProxyFactory factory = new HessianProxyFactory();
        factory.setOverloadEnabled(true);
IBulletinService hessianServer =(IBulletinService)factory.create(IBulletinService.class, url);
Bulletin bulletin=new bulletin();
hessianServer.addBulletin(bulletin);
System.out.println("success!");
int num=hessianServer.getUserNoReadCount(1L);
System.out.println("没有阅读的数量:"+num);
}

}

  
分享到:
评论

相关推荐

    Hessian远程调用框架学习一

    Hessian远程调用框架学习一,第一个JAVA使用hessian的入门demo,简单实用易理解

    java+hessian 远程调用

    java项目中使用hessian框架实现远程调用,该资源内附hessian服务端,hessian客户端和使用说明文档,以供使用参考,轻松教会你hessian远程调用!

    hessian框架应用,实现远程调用,分布式开发

    一个简单实用的hessian框架的应用实例,用于实现分布式开发远程调用!

    远程调用服务框架

    给予spring的框架。 封装了xfire、rmi、hessian、httpinvoker 客户端可以统一调用,省略了远程调用的编码。 服务通过服务ID和服务接口来调用。

    snake-rpc:基于 Hessian 的增强型 RPC 框架,能够重用方法调用返回的远程对象

    蛇形rpc 一个基于 Hessian 的 RPC 框架( ) “蛇”这个名字来自中国蛇的动物年(2013年)。 与hessian相比,snake-rpc有几个新特点: 能够序列化 InputStream/OutputStream; 无限的 InputStream/OutputStream 参数...

    qhessian:hessian 协议的 Qt && C++ 实现

    这意味着您只需要 qt 框架即可使用 hessian 的所有功能。 无需生成代码即可使用 qhessian。 C++ 实现的比较: 项目 代码生成 图书馆 是的 卷曲 不 SSLPP 切森 不 Qt 准备项目 使用命令获取 qhessian 存储库的...

    理解RESTful架构、Hessian简介、机制、Webservice及cxf介绍

    RESTful架构: (1)每一个URI代表一种资源; (2)客户端和服务器之间,传递这种资源的某种表现层(Representation); ... Hessian: 是由caucho提供的一个基于...在java领域,webservice框架很多,axis,xfire,cxf

    Java远程通讯可选技术及原理

    在分布式服务框架中,一个最基础的问题就是远程服务是怎么通讯的,在Java领域中有很多可实现远程通讯的技术,例如:RMI、MINA、ESB、 Burlap、Hessian、SOAP、EJB和JMS 等,这些名词之间到底是些什么关系呢,它们...

    开源框架 Spring Gossip

    远程(Remoting) Spring 提供了一致的使用方式,即使所采用的远程服务技术不尽相同,在 Spring 中运用它们的方式却是一致的。 RMI Hessian、 Burlap Http Invoker &lt;br&gt;邮件 对于邮件发送...

    Hprose 全名是高性能远程对象服务引擎.rar

    1. 什么是 rpc RPC 全称为 Remote Procedure Call,翻译过来为 “远程过程调用”。 目前,主流的平台中都支持各种远程调用技术,以满足...RPC 在使用形式上像调用本地函数(或方法)一样去调用远程的函数(或方法)。

    技术选型分享:JAVA中几种常用的RPC框架介绍.docx

    Java中的RPC框架比较多,各有特色,广泛使用的有RMI、Hessian、Dubbo等。RPC还有一个特点就是能够跨语言,本资源只以JAVA语言里的RPC为例。其他的框架结构也类似,区别在于对象的序列化方法,传输对象的通讯协议,...

    word源码java-fleet-spring-boot:SpringBoot教程,SpringBoot的各种简单示例,快速入门使用Sprin

    word源码java fleet-spring-boot ...远程调用框架 :Spring Boot Hessian 远程调用框架 :Spring Boot Forest Http 请求 :Spring Boot HTTP 访问控制 :Spring Boot GraphQL 构建 API :Spring Boot

    dubbo_demo.zip

    Java中的RPC框架比较多,广泛使用的有RMI、Hessian、Dubbo等。 Dubbo官网地址:http://dubbo.apache.org Dubbo提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现。

    【JeeSpringCloud v3.2.4】后台权限管理系统+互联网云快速开发框架+微服务分布式代码生成

    微服务/集群(nignx) 支持REST风格远程调用(HTTP + JSON/XML):基于非常成熟的Spring Boot框架,在Spring Boot Spring Cloud中实现了REST风格(HTTP + JSON/XML)的远程调用,以显着简化企业内部的跨语言交互,同时...

    Dubbo服务框架面试题及答案.pdf

    Serializable 接口,使用 java 标准序列化机制,使用阻塞式短连接,传输数 据包大小混合,消费者和提供者个数差不多,可传文件,传输协议 TCP。 多个短连接,TCP 协议传输,同步传输,适用常规的远程服务调用和 ...

    Dubbo面试试题集合.rar

    - Dubbo由阿里巴巴集团开发并开源,最早是作为阿里中间件团队内部的一个RPC框架使用。 - Dubbo的目标是提供一个高性能的分布式服务框架,使得应用程序可以通过远程调用快速、安全地通信,并提供完善的服务治理能力。...

    hessdroid.jar

    hessdroid 是Resin 的Hessian二进制远程调用框架在Android上非官方移植版本。

    分布式服务架构之java远程调用技术浅析

    在分布式服务框架中,一个最基础的问题就是远程服务是怎么通讯的,在Java领域中有很多可实现远程通讯的技术,例如:RMI、MINA、ESB、Burlap、Hessian、SOAP、EJB和JMS等,这些名词之间到底是些什么关系呢,它们背后...

    spring in action英文版

     6.3 使用Hessian和Burlap的远程调用  6.3.1 访问Hessian/Burlap服务  6.3.2 用Hessian或Burlap公开Bean的功能  6.4 使用HTTP invoker  6.4.1 通过HTTP访问服务  6.4.2 把Bean作为HTTP服务公开  ...

    hessdroid-android

    hessdroid 是 Resin 的 Hessian 二进制远程调用框架在 Android 上的移植版本。非官方。 示例代码: String webServiceUrl = "https://localhost/testAPI"; HessianProxyFactory proxyFactory = new ...

Global site tag (gtag.js) - Google Analytics