`

利用RMI异步调用

    博客分类:
  • Java
 
阅读更多

 

package edu.gmit.rmi;

import static java.lang.System.out;

import java.rmi.RemoteException;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

import edu.gmit.cyhper.Result;


/**
 * <p>
 * <b> Insert description of the classes responsibility/role. NOT what uses it. </b>
 * </p>
 */
public class Client extends Thread {
    
    /**
     * <p>
     * <b> Insert description of the methods responsibility/role. NOT what uses it. </b>
     * </p>
     * 
     * @param args
     * @throws InterruptedException
     */
    public static void main(String[] args) throws InterruptedException {
        
        out.println("Client Begin!");
        
        ApplicationContext ctx = new ClassPathXmlApplicationContext("ClientConfig.xml");
        
        CypherService service = (CypherService) ctx.getBean("clientInvoke");
        try {
            // User inputs the plain text
            String plainText = args[0];
            Result result = service.encrypt(plainText);
            do {
                Thread.sleep(1000);
                
                if (result.isProcessed() == true) {
                    System.out.println("The cypher text is: " + result.getResult());
                } else {
                    System.out.println("Still not get result!");
                }
            } while (!result.isProcessed());
            
        } catch (RemoteException e) {
            e.printStackTrace();
        }
        
        out.println("Client End!");
    }
}
 

 

分享到:
评论

相关推荐

    Spring-RMI (RMI调用, HTTP调用)

    Spring通过提供RMI集成,简化了RMI服务的创建和调用。以下是一些关键点: 1. **服务接口定义**:首先,你需要定义一个远程服务接口,这个接口将包含你希望在远程进程中执行的方法。 2. **服务实现**:接着,创建该...

    java rmi 远程方法调用 服务端

    1. 异步调用:通过使用`java.rmi.activation`包中的机制,可以支持异步远程方法调用,提高系统性能。 2. 连接池:为了减少远程方法调用的开销,可以使用连接池管理RMI连接。 3. 负载均衡:通过RMI负载均衡器,可以...

    EJB 基于Java的远程方法调用(RMI)技术

    ### EJB 基于Java的远程方法调用(RMI)技术 #### 一、EJB概述 **Enterprise JavaBeans (EJB)** 是一种基于Java的组件模型,旨在为开发分布式企业级应用提供标准化的方法。它相当于DCOM(Distributed Component ...

    RMI 远程方法调用.zip

    Java RMI(Remote Method Invocation,远程方法调用)是Java平台提供的一种用于在不同Java虚拟机之间进行通信的技术,主要用于构建分布式系统。它允许一个Java对象调用在另一个网络上运行的Java对象的方法,就像调用...

    java_rmi.rar_RMI java_java.rmi

    这些方法必须是public并且没有void返回类型,因为RMI会异步调用它们。 2. **实现远程接口**:然后,创建一个实现远程接口的类,该类通常需要继承自`java.rmi.Remote`接口,并且抛出`java.rmi.RemoteException`。在...

    分布式调用RMI例子程序

    分布式调用RMI(Remote Method Invocation)是Java平台...然而,需要注意的是,RMI也有其局限性,比如不支持异步调用、安全性较弱等,因此在实际项目中,可能会结合其他技术如Web服务、RPC框架等来增强其功能和安全性。

    RMI.rar_rmi

    6. **异步调用**:通过实现回调机制,使得调用者不必阻塞等待远程方法的执行结果,提高了系统效率。 7. **回调函数**:在远程方法执行完成后,调用客户端提供的回调函数,传递执行结果或者异常信息。 在实际应用中...

    dwr实例操作+rmi实例操作

    通过DWR和RMI的实例操作,我们可以构建出一个具有动态交互特性的Web应用,其中DWR负责前端与后端的异步通信,而RMI则处理后台的分布式计算和数据交换。这两个技术的结合可以为复杂的Web应用提供高效且灵活的解决方案...

    C++远程方法调用框架 RMI for C++ 附加boost库

    在这个场景中,我们讨论的是一个专门针对C++的RMI实现,并且它利用了Boost库来增强其功能和可靠性。 Boost库是C++社区广泛使用的开源库集合,提供了大量实用的工具和组件,包括智能指针、多线程支持、正则表达式、...

    rmi.rar_RMI java_basic rmi

    - 不适用于实时系统:RMI的异步调用不直观,不适合实时或低延迟应用。 8. **RMI的替代技术** - Java RMI-IIOP(Java Remote Method Invocation via the Internet Inter-ORB Protocol):支持CORBA标准。 - Java ...

    RMI示例程序,RMI学习

    然而,RMI也有其局限性,如不支持异步调用,性能可能受网络延迟影响等。在实际应用中,根据项目需求和场景选择合适的分布式通信技术是非常重要的。 总之,RMI示例展示了如何在Java中创建、部署和调用远程服务。通过...

    RMI.zip_Java RMI_rmi

    这些方法必须是public并且没有void返回类型,因为RMI需要返回一个Future对象来跟踪异步调用。 2. **远程实现(Implementation)**:实现了远程接口的类提供了具体的功能。这个类需要标记为`java.rmi.Remote`的子类,...

    java的RMI

    RMI虽然强大,但也有其局限性,比如不支持异步调用,性能可能不如其他现代的远程调用框架(如gRPC或RESTful API)。不过,对于简单的Java分布式系统,RMI提供了一个直观且易于理解的解决方案。 在学习RMI的过程中,...

    RMI.rar_Java RMI

    Java Remote Method Invocation (RMI) 是Java平台中用于构建分布式应用程序的一种关键技术。RMI允许Java对象在不同的Java...实践中,结合这些知识,可以进一步探索RMI的高级特性,如异步调用、异常处理和安全控制等。

    JAVA RMI

    **JAVA RMI(远程方法调用)详解** Java RMI(Remote Method Invocation)是Java平台上的一个核心特性,它允许Java程序在不同的JVM(Java虚拟机)之间进行分布式计算,实现了对象间的远程调用。RMI使得开发者可以像...

    RMI应用实例及实验报告

    然而,RMI也存在一些限制,如不支持异步调用,且性能可能受到网络延迟的影响。 在这个实验中,我们不仅学习了如何创建和使用RMI服务,还了解了Java的序列化机制,因为RMI在传递对象时需要将其序列化为字节流。此外...

    C++ RMI代码

    - 分布式计算:RMI使应用程序可以利用网络上的多台机器进行并行计算。 - 多层架构:在客户端-服务器架构中,RMI常用于构建中间层,如业务逻辑层,以实现远程服务调用。 - 跨语言通信:通过接口定义语言(IDL),...

    RMI远程下载文件

    - 异步调用:RMI支持同步和异步调用,提供了更灵活的编程模型。 8. **RMI的局限性**: - 性能:由于网络通信的开销,RMI可能不如本地方法调用快。 - 安全性:如果不正确配置,RMI可能会暴露系统的敏感信息或成为...

    java分布式之RMI简介及实例

    远程方法调用(Remote Method Invocation,简称RMI)是Java平台提供的一种分布式计算框架,它允许开发者创建可以在网络上跨多台计算机运行的对象。RMI的目标是使得网络上的对象能够像本地对象一样被调用,从而简化了...

Global site tag (gtag.js) - Google Analytics