|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
不得不提一下的是:.net网页编程是看到java红,而开发出来的工具。
使用程序组件应完成针对企业服务的哀求。要完成这些哀求,使用程序组件经常必需变动底层数据存储的形态。这些变动相对不克不及损坏耐久数据存储的完全性。(在有关数据耐久性的第一篇文章中,我们将耐久数据存储界说为自力的数据资本库,即便在服务器溃散或收集失利时,这个数据资本库也能回护个中的数据。)为了确坚持久性,使用程序组件必需能处置并发性、毗连办理、数据完全性和同步。J2EE的三种数据办理手艺都能为开辟职员处置这些功效,只不外每种手艺都有本人的处置办法。
上月我们切磋了实体bean和JDBC的优弱点。本月,我们将检察Java数据对象怎样与无形态会话bean组合,和该办理计划怎样与尺度实体bean使用程序举行对照。因为JDO还是一种相称新的手艺(最新的J2EE耐久性办理计划),以是我们将起首概述其事情道理。
JDO概述
久长以来,Java使用程序和耐久数据办理之间的干系一向是不简单处置的。很多耐久性机制以干系的办法而不是面向对象办法存储数据。即,数据存储在由包括字段的纪录构成的表中,而不是存储为自包括对象(这些对象具有外部数据和对别的对象的援用,而别的对象也具有外部数据和援用)。将面向对象的暗示转换成干系暗示一向就很贫苦、易堕落且会下降使用程序功能。直到比来,多数几个实质上长短干系型的耐久性机制(比方SQLBLOB和Java序列化)利用起来也很贫苦。年夜多半耐久性机制闪开发职员卖力处置耐久性,或利用非Java言语(比方SQL)与后端数据存储举行互相感化。
JDO的长处在于它很复杂。开辟职员利用Java言语耐久存储对象实例并从存储器检索实例。处置逻辑、同步和妨碍转移等均被通明地处置。开辟职员无需利用SQL或Java言语供应的方便的序列化机制,只利用POJO(无格局一般Java对象)便可,使用JDO接口将对象援用传送到存储器中并从存储器检索对象援用。
JDO还接纳了良多JDBC利用的初级系统布局。它利用一种可拔出的系统布局,在这一系统布局中,开辟职员将本人的代码编写成尺度接口集(JDOAPI),而供给商供应这些接口的完成。这同意利用JDO接口的使用程序“拔出”任何撑持JDOAPI的数据存储。和JDBC一样,这可使移植简单,并增进各供给商之间的合作,从而发生更好的产物,由于供给商会力图供应更无效且功效更壮大的完成。
会话bean和JDO
会话bean是任何兼并了EJB手艺的J2EE系统布局的基干。关于无形态会话bean特别云云。正如之前会商的,无形态会话bean的不乱性和可展望性使其出格合适于办理耐久的企业数据。
可是会话bean自己不克不及会见耐久数据存储。它们必需与别的手艺(照实体bean、JDBC或JDO)相分离以创立一种耐久数据办理机制。将会话bean与JDO分离相似于将它们与JDBC分离,但JDO是以更面向对象且更以Java为中央的概念处置该成绩的。
功效壮大的组合
经由过程向EJB容器哀求资本办理器毗连工场,企业bean取得对内部资本的会见权。利用JDBC的EJB组件是如许做的,利用JDO的EJB组件也是如许做的。会话bean必需做的第一件事是经由过程挪用JNDI查询,取得对PersistenceManagerFactory的援用。然后从工场取得PersistenceManager实例。假如会话bean正在利用容器办理的事件,那末每一个营业办法将利用工场来取得新的PersistenceManager实例,以后在加入该办法之前封闭该实例。假如利用的是bean办理的事件,那末开辟职员将断定事件的入手下手前提和停止前提。因而,能够在多个营业办法挪用中利用统一PersistenceManager实例。一样,能够在一个营业办法中翻开并办理多个事件。PersistenceManagerAPI撑持一切这些计划。
与PersistenceManager交互的JDOAPI很复杂且十分直不雅。开辟职员经由过程挪用makePersistent()办法使对象耐久。并且,这个办法特性符被重载,从而同意将各类对象范例视为耐久对象(单个对象、对象数组或对象汇合)。检索对象一样很复杂。getObjectById()办法利用由开辟职员断定的独一值(相似于主键)来区分对象实例。JDO还撑持基于范例的查询,这些查询能基于指定的范例(即,完成大众接口的子类和类)检索单个对象或对象汇合。与JDBC相似,JDO撑持基础的事件性控件:begin()、commit()和rollback(),并能指出PersistenceManager实例应当接纳悲观的仍是失望的事件办理办法。
<p>
windows系统样,他们做了什么事或者留了一些后门程序,谁都不知道,二,java开发是跨平台,任何系统上都可以运行,对于保密型系统和大型系统开发这是必要的 |
|