仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 396|回复: 9
打印 上一主题 下一主题

[学习教程] 了解下JAVA的用RMI举行远程办法挪用

[复制链接]
小妖女 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:25:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
因为能用到多少功能就用多少,不能用就不用!总的来说:要简单要性能好,可以不用框架。你说java复杂,就是因为你把java(j2ee)与这些框架混在了一起。
远程办法挪用(RMI)机制能够把面向对象的头脑进一步扩大,由于你能够挪用的对象不但能够在本机上,也能够在其余主机上。本文就复杂先容rmi的编程办法。
起首先容一些复杂的rmi的观点。
1,服务器和客户:在rmi中,假如有一个对象举行远程办法挪用,这个对象就叫做客户机对象,而远程对象则被称为服务器对象。
2,创立服务器对象的服务器程序:这个程序用来创立服务器对象,注册这个对象,使得客户能够经由过程注册的称号会见服务器对象。
3,接口(interface),接口可让客户端懂得服务器所能做的事情。更详细的说,就是它列出了能够在服务器上实行的一切办法。客户端程序必需可以找到这个类,不然就不克不及实行对服务器函数的挪用。
4,客户桩(stub),有的书中翻译成为代码存根,它给客户端程序供应一个桩,这个桩上"绑"着服务器对象。当客户程序必要挪用远程对象时,这个桩被下载到客户端(假如客户端有这个类,则不必要下载)。然后客户就能够像挪用当地办法一样挪用远程的办法了。
这个客户桩的感化是将客户向服务器的哀求举行编码、举行传输,服务器实行此次挪用后将了局前往到客户桩,客户桩举行解码,将解码后的了局传送到客户程序中。关于编写客户真个程序员来讲,他不必要晓得个中的详细历程。
客户桩不必要本人编写,前面会申明它的天生办法。它完成了前述的接口(interface)。
上面就经由过程一个例子来讲明编写的历程。
1,编写服务器的接口:这一步是最次要的部分,由于接口是毗连客户机与服务器的关头部分。在这个例子中,接口很复杂,代码以下:
importjava.rmi.*;
publicinterfaceProductextendsRemote
{
 StringgetDescription()throwsRemoteException;
}
在这里应注重的是,远程对象的接口必定要扩大(extend)Java.rmi包的Remote接口。同时接口中的一切的办法都要声明抛出RemoteException非常。这是由于因为收集毗连的不成靠性,远程办法挪用极可能失利。假如不声明非常,在远程办法挪用失利后,使用程序就会没法停止。
2,编写服务器对象:
Java中具有一个能够间接利用的服务器类--UniCastRemoteObject。它存在于Java.rmi.server包中。我们能够间接扩大这个类,使它完成前述的接口。如许就能够使服务器满意我们的必要。
importjava.rmi.server.*;
importjava.rmi.*;
publicclassProductImplextendsUnicastRemoteObjectimplementsProduct
{
 publicProductImpl(Stringname)throwsRemoteException
 {
  Desc=name;
 }
 publicStringgetDescription()throwsRemoteException
 {
  return"Thisis"+Desc+"product";
 }
 privateStringDesc;
}
能够看到,rmi服务器的完成和其他的办法代码没有甚么分歧。
<p>
在1995年5月23日以“Java”的名称正式发布了。
山那边是海 该用户已被删除
沙发
发表于 2015-1-21 06:18:16 | 只看该作者
我大二,Java也只学了一年,觉得还是看thinking in java好,有能力的话看英文原版(中文版翻的不怎么好),还能提高英文文档阅读能力。
愤怒的大鸟 该用户已被删除
板凳
发表于 2015-1-30 09:33:15 | 只看该作者
至于JDBC,就不用我多说了,你如果用java编过存取数据库的程序,就应该很熟悉。还有,如果你要用Java编发送电子邮件的程序,你就得看看Javamail 了。
金色的骷髅 该用户已被删除
地板
发表于 2015-1-30 10:56:58 | 只看该作者
所以现在应用最广泛又最好学的就是J2EE了。 J2EE又包括许多组件,如Jsp,Servlet,JavaBean,EJB,JDBC,JavaMail等。要学习起来可不是一两天的事。那么又该如何学习J2EE呢?当然Java语法得先看一看的,I/O包,Util包,Lang包你都熟悉了吗?然后再从JSP学起。
深爱那片海 该用户已被删除
5#
发表于 2015-2-6 10:15:54 | 只看该作者
你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢?
蒙在股里 该用户已被删除
6#
发表于 2015-2-15 22:51:35 | 只看该作者
Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台
admin 该用户已被删除
7#
发表于 2015-3-2 22:13:26 | 只看该作者
是一种突破用户端机器环境和CPU
莫相离 该用户已被删除
8#
发表于 2015-3-10 19:54:08 | 只看该作者
是一种突破用户端机器环境和CPU
再见西城 该用户已被删除
9#
发表于 2015-3-17 09:22:37 | 只看该作者
多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在 Java 1.5 版本中,Java 又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。
若相依 该用户已被删除
10#
发表于 2015-3-24 06:00:44 | 只看该作者
任职于太阳微系统的詹姆斯·高斯林等人于1990年代初开发Java语言的雏形,最初被命名为Oak,目标设置在家用电器等小型系统的程序语言
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-9-22 18:24

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表