`
goon
  • 浏览: 184097 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

hessian——客户端动态代理

 
阅读更多

客户端代码:

String urlString = "http://localhost/hessian/testService";
		HessianProxyFactory factory = new HessianProxyFactory();
		TestService testService = (TestService)factory.create(TestService.class,urlString);

 

 public Object create(Class<?> api, URL url, ClassLoader loader)
  {
    if (api == null)
      throw new NullPointerException("api must not be null for HessianProxyFactory.create()");
    InvocationHandler handler = null;

    handler = new HessianProxy(url, this, api);

    return Proxy.newProxyInstance(loader,
                                  new Class[] { api,
                                                HessianRemoteObject.class },
                                  handler);
  }

 handler = new HessianProxy(url, this, api);是关键,利用java动态代理,创建了一个HessianProxy对象来代理对Service对象的方法调用,具体HessianProxy的代理方式就是通过网络连接,调用远程的方法(见

hessian——源码分析(二)------ HessianProxy《转》

分享到:
评论

相关推荐

    使用hessian进行服务器-客户端通讯

    在这个案例中,提供的"压缩包子文件的文件名称列表"——"hessian使用案例",很可能包含了服务器端和客户端的代码示例。这些示例可能包括了服务器端的服务接口和实现、web.xml配置、客户端的HessianProxyFactory使用...

    hessian轻量级 rpc实现

    4. 异常处理:Hessian能将运行时异常直接封装并传递给客户端,简化了错误处理。 5. 简单集成:Hessian可以轻松地与现有的Web服务框架集成,如Spring,无需额外的配置和代码。 四、Hessian的应用 在实际项目中,...

    jinrongjuClient

    然后,配置一个HessianProxyFactoryBean,它是服务消费者端用来创建Hessian客户端代理的对象。HessianProxyFactoryBean通过指定服务URL、服务接口和目标接口类,可以生成一个可以直接调用的远程服务代理。 例如,...

    WebService另一种轻量级实现—Hessian 学习笔记.rar

    2. **客户端调用**:客户端通过HessianProxyFactory创建代理对象,即可像调用本地方法一样调用远程服务。 **五、Hessian的限制** 尽管Hessian有许多优点,但也存在一些限制,例如缺乏官方的WSDL支持,对于复杂的XML...

    基于java的高性能RPC框架 nfs-rpc.zip

    4. 创建客户端:客户端根据服务接口创建代理对象,调用方法就像调用本地方法一样。 5. 发起调用:客户端通过代理对象调用服务,nfs-rpc框架负责实际的网络通信和调用执行。 五、实战应用 在实际项目中,nfs-rpc...

    1000道 互联网大厂Java工程师面试题.pdf

    7. Dao接口的工作原理:MyBatis通过代理生成接口的实现类,利用动态代理机制完成接口与Mapper XML的绑定。 8. Mybatis分页原理及插件:利用limit语句进行分页,插件可以通过拦截器链进行处理。 9. Mybatis如何封装...

    基于Java的实例源码-高性能RPC框架 nfs-rpc.zip

    反射允许在运行时检查类、接口和对象,动态代理则可以在运行时创建符合特定接口的新类,这在构建RPC服务调用时非常有用。 3. **服务注册与发现**:为了支持服务间的通信,nfs-rpc需要一个服务注册中心。服务提供者...

    dubbolearn1_dubbo_

    4. **Proxy组件**:服务代理,允许客户端通过接口调用远程服务,屏蔽了远程调用的复杂性。 5. **Filter组件**:服务拦截器,允许在调用前后添加自定义逻辑,如统计、日志、限流等。 6. **Monitor组件**:监控统计...

    微服务架构面试专题系列:Dubbo+Spring Boot+Spring Cloud.zip

    本专题将深入探讨微服务架构中的重要组件——Dubbo、Spring Boot以及Spring Cloud,这些都是Java开发者在实现微服务过程中不可或缺的工具。让我们逐一解析这些技术及其在面试中可能涉及的知识点。 首先,Dubbo是...

    dubbo provider consumer zookeeper

    Dubbo是阿里巴巴开源的一款高性能、轻量级的Java RPC框架,它提供了面向接口的代理实现,使得服务调用变得简单。在本示例中,“dubbo provider consumer zookeeper”涉及了Dubbo的核心组件——服务提供者(Provider...

    hello-dubbo-entity:起源

    《hello-dubbo-entity:起源——深入理解Dubbo实体框架》 在Java开发领域,Dubbo作为一款高性能、轻量级的开源服务框架,受到了广大开发者的喜爱。它以RPC(远程过程调用)为核心,提供了服务注册、服务发现、负载...

Global site tag (gtag.js) - Google Analytics