`

Java RMI用法小例子

    博客分类:
  • J2SE
 
阅读更多
部署
public class StartService {
	private static final String IP = "127.0.0.1";
	private static final int PORT = 9999;
	private static final String REMOTE_NAME = "userDao";
	private static final String REMOTE_URL = "rmi://" + IP + ":" + PORT + "/" + REMOTE_NAME;

	public static void main(String[] args) {
		try {
			UserDao userDao = new UserDaoImpl(); // 实例化对象
			LocateRegistry.createRegistry(PORT); // 注册端口
			Naming.bind(REMOTE_URL, userDao); // 绑定远程服务对象
			System.out.println("远程" + REMOTE_NAME + "启动成功....");
		} catch (RemoteException e) {
			System.err.println("远程对象出错");
			e.printStackTrace();
		} catch (MalformedURLException e) {
			System.err.println("URL出错了");
			e.printStackTrace();
		} catch (AlreadyBoundException e) {
			System.err.println("绑定的对象已经存在了");
			e.printStackTrace();
		}
	}
}

/**
 * 远程接口 必须继承与Remote对象
 */
interface UserDao extends Remote {
	/**
	 * 简单的测试方法
	 * 
	 * @param name
	 */
	public void sayName(String name) throws RemoteException;
}

/**
 * 
 * 接口的实现类 必须继承UnicastRemoteObject(单一远程对象) 实现UserDao自己的接口
 */
class UserDaoImpl extends UnicastRemoteObject implements UserDao {

	public UserDaoImpl() throws RemoteException {
	}

	@Override
	public void sayName(String name) {
		if (name != null && !name.equals("")) {
			System.out.println("我的名字是:" + name);
		} else {
			System.err.println("名字不为空....");
		}
	}

}

测试调用
public class TestRemote {
	public static void main(String[] args) {
		try {
			// 在rmi服务中查询userdao的对象
			UserDao userDao = (UserDao) Naming.lookup("rmi://127.0.0.1:9999/userDao");
			// 调用远程服务的方法
			userDao.sayName("spring sky");
		} catch (MalformedURLException e) {
			System.err.println("URL出错");
			e.printStackTrace();
		} catch (RemoteException e) {
			System.err.println("远程对象出错");
			e.printStackTrace();
		} catch (NotBoundException e) {
			System.err.println("没有找到绑定的对象");
			e.printStackTrace();
		}
	}
}
分享到:
评论

相关推荐

    JAVA RMI简单例子

    Java RMI(Remote Method Invocation,远程方法调用)是Java平台提供的一种分布式计算技术,它允许在不同的Java虚拟机之间进行方法调用,仿佛这些方法都在本地对象上执行一样。这个"JAVA RMI简单例子"旨在帮助我们...

    一个完整的Java RMI通讯的例子

    通过这个完整的Java RMI通信例子,我们可以学习如何在实际项目中利用RMI来构建分布式系统,提升应用的可扩展性和灵活性。同时,理解RMI的工作原理也有助于我们更好地设计和实现其他分布式技术,如EJB、Web服务等。

    Java RMI的简单例子

    远程方法调用(Remote Method Invocation,简称RMI)是Java平台提供的一种用于实现分布式应用的技术。它允许对象在不同的JVM之间通过网络相互调用对方的方法,就像调用本地对象一样。通过RMI,开发人员可以轻松构建...

    Java RMI远程方法调用详解-例子代码

    这个简单的例子展示了RMI的基本使用方式。实际应用中,可能会涉及到更复杂的网络交互、多线程、安全性控制等话题。理解RMI的工作原理和实践,对于开发分布式Java应用至关重要。同时,由于RMI依赖于Java序列化,因此...

    java rmi java rmi

    通过RMI,一个Java程序能够调用位于另一台计算机上的Java对象的方法,就好像它们在同一台机器上一样。这种能力使得RMI成为构建分布式系统的强大工具之一。 ### Java分布式对象模型 在RMI中,通常涉及两个独立的...

    java RMI 例子

    4. **客户端调用**:在客户端,创建一个主类(如`RmiClient.java`),使用`Naming.lookup()`获取远程对象的引用,然后调用其方法: ```java MyRemoteInterface remote = (MyRemoteInterface) Naming.lookup("rmi:/...

    通过Java RMI实现远程调用的一个简单例子

    这个简单的例子展示了Java RMI的基本用法。通过RMI,开发者可以在网络环境中透明地调用远程对象的方法,使得分布式系统的开发变得简单。然而,实际应用中还需要考虑线程安全、异常处理、安全性、性能优化等复杂问题...

    java RMI简单例子

    了解并掌握这些基本概念和操作,你就可以开始尝试"java RMI简单例子",逐步深入理解RMI的使用。在实践中,你可以创建一个简单的远程服务,例如一个远程计算器,体验RMI如何让不同JVM上的代码协同工作。这将有助于你...

    JavaRMI.pdf

    - JRMP(Java Remote Message Protocol):这是Java RMI的原始实现,它使用Java特有的协议进行通信。 - RMI-IIOP(RMI over IIOP):RMI与CORBA(Common Object Request Broker Architecture)的结合,允许RMI系统与...

    Java RMI 简单示例

    Java RMI(Remote Method Invocation,远程方法调用)是Java平台提供的一种用于分布式计算的技术,它允许一个Java对象调用另一个在不同 JVM...通过实践这个简单的示例,你可以更好地掌握Java RMI的工作原理和使用方法。

    java RMI入门例子

    这个"java RMI入门例子"将带你深入理解RMI的工作原理和主要组件。 RMI的核心概念包括: 1. **远程接口**:这是定义远程方法的接口,通常继承自java.rmi.Remote。这些方法声明抛出java.rmi.RemoteException,表示...

    java rmi HelloWorld版(源码)

    4. **注册远程对象**:在服务器端创建`HelloWorldImpl`的实例,然后使用`java.rmi.Naming.bind()`方法将其绑定到RMI注册表的一个特定名称。 5. **导出远程对象**:使用`java.rmi.server.UnicastRemoteObject.export...

    rmi.rar_Java RMI_RMI java_RMI policy.all_rmi

    描述中提到的"java rmi例子"表明其中可能包含了一个或多个实际的RMI应用实例,这对于学习和理解RMI的工作原理非常有帮助。 首先,让我们详细了解Java RMI的核心概念和组件: 1. **远程接口(Remote Interface)**...

    java 简单RMI 会议功能实现

    在这个"java简单RMI会议功能实现"的例子中,我们将探讨如何构建一个基于RMI的分布式会议议程服务,提供会议查询、增加和删除的接口。 首先,让我们了解RMI的基本组件和工作原理: 1. **远程接口(Remote Interface...

    一个简单的RMI例子Java源代码,用于学习理解RMI

    学习这个简单的RMI示例,可以帮助你了解如何在Java中设置和使用RMI,包括创建远程接口,实现远程对象,注册到RMI注册表,以及在客户端进行远程方法调用。这将为你构建更复杂的分布式系统打下基础。

    Java RMI 例子 和一些常见问题

    Java Remote Method Invocation(RMI)是Java平台中用于分布式计算的一种技术。它允许Java对象在不同的JVM(Java虚拟机)之间进行交互,仿佛它们都在同一个JVM内运行。RMI使得开发分布式应用程序变得更加简单,尤其...

    spring rmi 小例子

    Spring Remote Method Invocation (RMI) 是Java平台上的一个远程对象调用框架,它允许你在分布式环境中调用对象...通过理解并实践这个小例子,你将能够更好地掌握Spring RMI的用法,为构建更复杂的分布式系统打下基础。

    Spring RMI小例子

    通过这个小例子,我们可以学习到Spring RMI的基本用法,理解其工作原理,这对于构建分布式系统非常有帮助。实践中,还可以进一步探索如何结合Spring的其他特性,如AOP和事务管理,来增强RMI应用的功能和健壮性。

    java rmi 简单易懂的实例

    本实例旨在提供一个易于理解的Java RMI应用,帮助初学者快速掌握其基本概念和使用方法。完整的例子包括以下几个关键组成部分: 1. **接口定义**:在RMI中,远程对象需要实现一个接口,这个接口定义了可供远程调用的...

    RMI.zip_Java RMI_rmi

    在"Java RMI Calculator"的例子中,我们可以想象有一个计算器应用,其中包含一个定义了加、减、乘、除等操作的远程接口`Calculator`。实现`Calculator`接口的远程对象可能部署在服务器JVM上,而客户端则通过RMI调用...

Global site tag (gtag.js) - Google Analytics