- 浏览: 1277059 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (608)
- 数据结构 (2)
- AJAX (3)
- 设计模式 (3)
- java (117)
- js (14)
- css (9)
- jsp (10)
- 杂文 (49)
- htmlparser (6)
- 数据库 (29)
- 算法 (14)
- 数据挖掘 (11)
- 电脑杂症 (12)
- 网络爬虫 (7)
- 应用服务器 (9)
- PHP (2)
- C# (14)
- 测试 (3)
- WEB高性能开发 (3)
- swt (1)
- 搜索引擎 (16)
- HttpClient (4)
- Lite (1)
- EXT (1)
- python (1)
- lucene (4)
- sphinx (9)
- Xapian (0)
- linux (44)
- 问题归类 (1)
- Android (6)
- ubuntu (7)
- SEO (18)
- 数学 (0)
- 农业资讯 (12)
- 游戏 (3)
- nginx (1)
- TeamViewer (1)
- swing (1)
- Web前 端 (1)
- 主页 (0)
- 阿萨德发首发身份 (0)
- 软件设计师 (0)
- hibernate (5)
- spring3.0 (5)
- elastic (1)
- SSH (3)
- ff (0)
- oracle 10g (9)
- 神经网络 (1)
- struts2.0 (2)
- maven (1)
- nexus (1)
- 辅助工具 (3)
- Shiro (1)
- 联通项目 (0)
- 2014年专业选择 (0)
- freemarker (1)
- struts1.2 (8)
- adfasdfasfasf (0)
- TortoiseSVN (1)
- jstl (1)
- jquery (1)
- eclipse plugin (0)
- 游戏外挂 (1)
- 推广 (0)
- 按键精灵 (1)
- ibatis3.0 (1)
最新评论
-
水野哲也:
不不不, 这个您真错了!其实是你引用的那个jsp和本身的jsp ...
解析关于jsp页面指令冲突问题contentType="text/html;charset=UTF-8" -
caobo_cb:
import xx.cn.weibo.Util;
[ java版]新浪微博之ruquest_token篇 -
caobo_cb:
你好 Util包没有
[ java版]新浪微博之ruquest_token篇 -
小桔子:
你好!我遇到个问题 max_allowed_packet值总是 ...
mysql查询占用内存,优化的技巧 -
donghustone:
谢谢大神!
用JSmooth制作java jar文件的可执行exe文件教程(图文)
今天要用异地访问java某个类,用到了Java RMI,到网络中搜索了一些资料,搜索不到关于异地的实例,都是关于本地的,乘着这个机会,写一下关于异地访问java某个类的实例。
步骤一:
1.定义一个远程接口的接口,该接口中的每一个方法必须声明它将产生一个RemoteException异常。
import java.rmi.Remote; import java.rmi.RemoteException; public interface myProject extends java.rmi.Remote //需要从Remote继承 { public String myLongDistanceInterface() throws RemoteException; //需要抛出remote异常 }
2、定义一个实现该接口的类。
import java.io.PrintStream; import java.rmi.*; import java.rmi.server.UnicastRemoteObject; public class actualizeMyProject extends UnicastRemoteObject //必须从UnicastRemoteObject implements myProject { public actualizeMyProject() throws RemoteException //需要一个抛出Remote异常的默认初始化方法 { } public String myLongDistanceInterface() //这个是实现myProject接口的方法 { return "恭喜你,我被你抓到了!"; } }
在执行第三个步骤之前,先理解一下以下概念:
在RMI中,客户机上生成的调动调用参数和反调动返回值的代码称为残根。有的书上称这部分代码为“主干”。
服务器上生成的反调动调用参数和进行实际方法调用调动返回值的代码称为框架。
3、使用RMIC程序生成远程实现所需的残根Stub 和 框架。
2中的
actualizeMyProject
编译好以后,我们就可以用RMIC命令来生成残根Stub
在Dos窗口里,到actualizeMyProject.class 所在目录,运行以下命令:
rmic actualizeMyProject
4、创建一个服务器。
dsf
sdsdf
dsf
import java.rmi.*; public class RMI_Server { public static void main(String[] args) { try { actualizeMyProject actualizeMyProject = new actualizeMyProject (); //实例化要发布的类 Naming.rebind("RMI_actualizeMyProject ", actualizeMyProject ); //绑定RMI名称 进行发布 System.out.println(">>>>> RMI_Server Ready <<<<< "); } catch(Exception exception) { exception.printStackTrace(); } } }
5. 创建一个客户程序进行RMI调用。
import java.rmi.*; public class RMI_Client { public static void main(String[] args) { try { myProject myProject = (myProject) Naming.lookup("rmi://192.168.1.158:1099/RMI_actualizeMyProject"); //通过RMI名称查找远程对象 System.out.println(myProject.myLongDistanceInterface()); //调用远程对象的方法 } catch (Exception e) { e.printStackTrace(); } } }
程序到这里基本上已经完成了,下面的步骤也不能轻易略过,不然程序是跑不起来。
6.服务端的工作。
先在DOS下运行 rmiregistry 这个命令是开启RMI的注册服务。接下来,运行我们的RMI_Server类才能调用rebing方法发布我们的类。运行我们的server程序 RMI_Server 这里是最容易出错的,参见下面注意事项。
注意:
如果提示找不到Stub类,这个需要用下面的命令来运行
java.exe -Djava.rmi.server.codebase=file:/C:\
/ RMI_Server
(有时候有Stub类,就是找不到,我也不知道为什么,呵呵)
蓝字部分指定了stub类的路径。
7.客户端的工作。
如果是在本地调用的话,直接启动就行啦,在这里,我主要说一下异地调用的注意几点。
把接口类、客户端类和生成的Stub类复制到客户机。运行客户端类。在控制台会出现“
恭喜你,我被你抓到了!
”。表示你已经成功调用到。
完毕!
发表评论
-
tomcat was unable to start within 45 seconds
2013-11-11 15:59 842原因一: -
Apache Commons Lang
2013-10-15 12:10 3170ArrayUtils public class Tes ... -
htmlunit form
2013-06-25 11:13 931Form提交 对于WEB应用,有着大量的表单,所以Html ... -
QQ微博登录步骤
2013-05-28 12:14 0QQ微博登录步骤: 1、验证帐号时,会访问一个地址。如下: ... -
jsoup
2013-05-22 23:37 1148import org.jsoup.Jsoup; import ... -
java 加密解密
2013-05-21 23:00 851import java.security.InvalidKey ... -
freemarket 对象应用篇(一)
2013-05-19 18:18 1049freemarket应用. 1.1:创建web工程testF ... -
中文数字转阿拉伯数字
2012-11-30 14:24 1804/** * @author loiy * ... -
标记:伪原创标题思路
2012-01-11 16:34 1299采用填词的办法进行伪 ... -
用JSmooth制作java jar文件的可执行exe文件教程(图文)
2012-01-05 01:09 8200下载完程序之后,运行 jsmoothgen.exe 1.进入“ ... -
多线程 Java.util.ConcurrentModificationException异常
2011-12-29 13:43 1531Iterator<Entry<String,B ... -
java 反序列化 抛出EOFException
2011-12-19 17:21 2260抛出这样的异常,一般情况下,是因为业务逻辑的问题。 如: 在没 ... -
一键安装双击运行——Java安装程序制作
2011-12-09 02:39 1336对于Java桌面应用来说,比较烦琐的就是安装部署问题,如:客户 ... -
只针对中英文混合分词的中文分词器
2011-12-02 17:28 4879该版本说明 1、只针对中英文混合分词 需要一些中文和英文连在 ... -
Java开源运行分析工具
2011-11-15 15:10 1890FProfiler FProfiler是一个非常快的Java ... -
cwss 按照指定的字符进行切词
2011-11-15 09:37 1241cwss 按照指定的字符进行切词 在 Utility.SEPE ... -
cwss bug 修复
2011-11-07 09:50 894修复的BUG有如下: 1、当只有中文、字母和数字,没有任何其他 ... -
java 怎么读取细胞词库scel
2011-10-24 14:28 3124private void sogou(String pa ... -
今天遇到一个奇怪的问题
2011-04-28 11:55 1190想实现一个用户访问页面,得到用户的外网地址 在公司上。程序是没 ... -
在myeclipse6.5下统一全部JSP编码更改
2011-04-07 14:47 1467在平时我们新建一个JSP页面默认编码是"ISO885 ...
相关推荐
最近在学习代理模式,用到了java rmi远程调用,包含服务端和客户端,之前一直没有接触过,学习了java rmi远程调用,一方面可以了解代理模式,一方面熟悉java低层的远程
Java远程调用(Remote Method Invocation,RMI)是Java平台中一种重要的分布式计算技术,它允许在不同网络环境中的Java对象之间进行透明的交互。在本文中,我们将深入探讨三种不同的RMI实现方法:原始方式、Spring...
Java RMI(Remote Method Invocation,远程方法调用)是Java平台提供的一种分布式计算技术,它允许在不同的Java虚拟机之间透明地调用对象的方法。在RMI架构中,客户端能够像调用本地对象一样调用远程服务器上的对象...
Java RMI 提供了一种透明的远程调用方式,使得开发者可以像操作本地对象一样操作远程对象。 在Java RMI应用开发中,有几个关键点需要注意: 1. **远程服务接口定义**: - 接口是RMI的核心,它定义了可供远程调用...
Java RMI(Remote Method Invocation,远程方法调用)是Java平台提供的一种用于分布式计算的技术,它允许一个Java对象调用另一个在不同JVM上的对象的方法。这个简单的例子将引导我们了解如何利用Java RMI实现远程...
1. **RMI概念**:RMI是一种基于对象的远程调用机制,它允许Java对象像调用本地方法一样调用远程对象的方法。RMI系统包括客户端和服务器两部分,客户端通过接口与服务器交互,服务器则提供具体实现。 2. **RMI架构**...
1. 性能:由于RMI涉及到对象的序列化和反序列化,相比本地方法调用,其性能会有所下降。 2. 安全性:RMI允许任意客户端访问远程对象,可能引发安全问题,需要采取适当的安全措施。 3. 依赖JVM:RMI是Java特有的,不...
Java RMI(Remote Method Invocation,远程方法调用)是Java平台提供的一种用于分布式计算的技术,它允许一个Java对象调用另一个在不同Java虚拟机(JVM)上的对象的方法。RMI使得开发分布式应用变得更加简单,因为...
RMI使得开发者可以像调用本地对象一样调用网络上的对象,极大地简化了分布式应用程序的开发。本项目提供的“java RMI实现代码”包括客户端和服务器端的示例,通过清晰的代码注释帮助理解RMI的工作原理。 一、RMI的...
RMI允许Java对象在不同的Java虚拟机之间进行方法调用,就像是在同一台机器上操作本地对象一样。它包括三个主要组件:远程接口、远程对象和RMI注册表。远程接口定义了可以在远程对象上调用的方法,远程对象实现了这些...
Java RMI(Remote Method Invocation,远程方法调用)是Java平台提供的一种分布式计算技术,它允许Java对象在不同的网络环境中进行交互,就像它们在同一个进程内一样。RMI是Java在分布式系统领域的核心特性,极大地...
Java RMI(Remote Method Invocation,远程方法调用)是Java平台提供的一种分布式计算技术,它允许在不同的Java虚拟机之间进行方法调用,仿佛这些方法是在本地对象上执行一样。这个技术极大地简化了构建分布式应用的...
Java Remote Method Invocation (RMI) 是Java平台提供的一种用于创建分布式应用程序的技术,它允许对象在不同的JVM(Java虚拟机)之间通过网络进行方法调用。RMI的主要优点是其透明性,即开发者可以像调用本地方法...
通过RMI,一个Java程序能够调用位于另一台计算机上的Java对象的方法,就好像它们在同一台机器上一样。这种能力使得RMI成为构建分布式系统的强大工具之一。 ### Java分布式对象模型 在RMI中,通常涉及两个独立的...
6. **序列化(Serialization)**:RMI依赖于Java的序列化机制来传输对象和方法调用。所有需要在网络间传递的对象都必须实现Serializable接口。 在Java RMI的Demo中,通常会包含以下步骤: 1. **创建远程接口**:...
Java RMI(Remote Method Invocation,远程方法调用)是一种Java技术,允许在分布式环境中执行远程对象的方法。这个技术的核心是序列化和反序列化过程,它使得对象可以在网络上进行传输。然而,这个特性也可能引入...
Java RMI(Remote Method Invocation,远程方法调用)是Java平台提供的一种分布式计算技术,它允许Java对象在不同的网络环境中进行交互,就像调用本地方法一样。RMI系统的核心概念是客户端可以调用服务器端的对象上...
实现java RMI 远程调用,包括 RMIServer RMIClient源码,测试用例。
Java RMI提供了一种简便的方式来进行分布式系统间的通信,它使得开发人员能够在不同JVM之间像调用本地方法一样调用远程方法。通过理解RMI的基本概念、核心组件及对象类型,开发人员能够更加高效地构建分布式应用。
Java RMI(Remote Method Invocation,远程方法调用)是Java平台提供的一种分布式计算技术,它允许在不同网络节点上的Java对象之间进行透明的交互。在Java RMI中,一个对象可以调用另一个位于不同JVM(Java虚拟机)...