仓酷云

标题: 来看Enterprise JavaBeans组件慨述之一 [打印本页]

作者: 爱飞    时间: 2015-1-18 11:24
标题: 来看Enterprise JavaBeans组件慨述之一
先谈谈我对java的一些认识。我选择java,是因为他语法简单,功能强大,从web,到桌面,到嵌入式,无所不能。但当我进一步了解了java后,感叹,java原来也有许多缺点。
本文概述EnterpriseJavaBeans(EJB)手艺,旨在让读者疾速了解基础观点。第1部分报告EJB手艺的汗青和某些方针、长处和手艺。为了简便了然,有选择地报告EJB手艺的一些关头要素。请注重,固然EJB组件依附于一些基本的Java服务(如JavaTransactionService),但利用EJB组件及熟悉这些组件的优点其实不必要把握这些相干手艺的常识。
EnterpriseJavaBeans手艺自1998年3月问世以来很受好评。上面这段话就是一个例子:
“自从两年多之前问世以来,EnterpriseJavaBeanstm手艺在平台供给商和企业的开辟小组中,一样都坚持着绝后的开展势头。这是由于EJBtm的服务器端组件模子简化了两头件组件的开辟,这些两头组件都是事件性的、可伸缩的和可移植的。EnterpriseJavaBeans服务器经由过程为两头件服务(如事件处置、平安性、数据库毗连及其他)供应主动撑持,下降了开辟两头件的庞大水平。”(SunMicrosystems网站)
EnterpriseJavaBeans这一位称使用了Javabean—这类可移植、可重用的Java软件组件的名誉。EnterpriseJavaBeans手艺把Java组件的观点从客户机域扩大到了服务器域:这是Java手艺发展过程当中有严重意义的一步,它使Java手艺开展成为一种健旺的、可伸缩的情况,可以撑持以义务为关头的企业信息体系。
服务器上的Java使用程序
Java编程言语最后在Web开辟职员中取得好评的一个缘故原由是,它撑持称为applet的可下载Java程序。对Applet的撑持以Applet类的情势内置到了1.0版的JavaDevelopmentKit(JDK)中。依照1.0版的工夫框架,Java开辟是以applet和使用程序作为中央的。基于JDK1.0版的Java读物都是从applet和使用程序的角度来形貌Java编程的:
“Java程序由更多的类界说中的某一个构成,每一个类界说均已编译成它自已的Java假造机对象代码的.class文件。这些类之一必需界说一个叫做main()的办法,程序就是从这个办法入手下手运转的。想挪用一个Java程序,必要运转Java注释器java,并指定包括main()办法的类的称号。请注重Javaapplet并非一个使用程序—它是一个由已在运转的Java使用程序(如Web扫瞄器或applet检察器)装进并运转的Java类。”(见Flanagan所著的JavainaNutshell)
Java使用程序能够在服务器上运转,可是不论是在客户机-服务器情况下,仍是在基于Web的情况下,JDK中都没有供应让Java使用程序公用于服务器呆板的接口或包。熟悉到Java在Web情况下作为一种服务器言语的潜力,SunMicrosystems编写了JavaServlet标准。servlet在很多方面与applet类似,它是专门为在Web服务器呆板上运转而计划的Java程序:
“servlet是由容器办理的Web组件,可发生静态内容。servlet是一种小型的、与平台有关的Java类,被编译成系统布局中立的字节代码,这类代码能够静态地加载到一个web服务器上,并由此web服务器运转。servlet经由过程一种由servlet容器完成的哀求-呼应模子与Web客户机举行交互。这类哀求-呼应模子创建在超文本传输协定(HTTP)举动的基本之上。”(见JavaSoft的“JavaServletAPISpecification”)
在一台Web服务器把持下,在多台服务器上运转多少小型用户程序,这类设法其实不奇怪—一段工夫以来,大众网关接口(CGI)程序(常被称为CGI剧本)一向起着这类感化,并推进了Web的提高。但Javaservlet能够以更高的效力和可移植性来完成这一目标,因此可看终极会代替CGI程序。为servlet供应运转时情况的软件(一般被称为servlet引擎)能够增加到现有的、自己其实不撑持Java可实行程序的Web服务器上。
Javaservlet的呈现,为使用程序员利用Java来创立Web使用程序启示了新的路子。可是,唯一servlet还不克不及为真实的企业盘算供应完全的模子。CGI使用程序自己常常不是完全的使用程序,在处置吸收自Web扫瞄器上用户的信息哀求时,CGI只是全部处置过程当中的一其中间步骤。比方,CGI使用程序的一种罕见用处是会见数据库。将它用于这类义务时,CGI程序供应一种办法,将用户的数据哀求毗连到能满意这类哀求的企业数据库。CGI程序经常充任一种两头软件,从Web扫瞄器吸收哀求,决意必需挪用哪些盘算资本来满意这些哀求,并向扫瞄器发还呼应。Javaservlet与CGI程序一样,最合适充任毗连前端Web哀求与后端数据资本的两头层组件。
三层系统布局
Web编程向服务器端Java使用程序的演变,也带来了系统布局的演变,使它离开了惯例的客户机-服务器两层模子,而向一种三层办法开展。两层模子事先已经具有立异意义,由于它将一些盘算义务从主处置器上卸载到乖巧的客户机。惯例的基于LAN的数据库使用程序就是一个例子,个中数据库办理器服务器软件驻留在一个公用的服务器呆板上,而用户则经由过程他们的事情站上的客户机代码来会见数据库。跟着客户机-服务器模子发展到能付诸利用,就呈现了对服务器可伸缩性和对客户机代码巨细和庞大性的存眷。因而提出了一种三层的系统布局,以免在两层模子中已发觉到的缺点,使Web能成为一个盘算平台:
“很多人...断言,传统的客户机/服务器两层系统布局不会有好的可伸缩性,由于用户毗连和数据会见的数目没法展望,并且在一些体系办理上也存在成绩。为处置两层系统布局的限定,很多开辟个人都在转向三层系统布局。这类系统布局大抵能够界说为:客户机层上的暗示层、两头的服务器和后真个某种数据库。这类假想的目标就是和缓客户机或数据库服务器上的代码收缩,会合办理营业逻辑,更天真地利用数据库,而不但是利用所存储的历程和触发器。”(见Kim的“Lookingfora3-TierAppBuilder?”)
一个三层布局模子一般被想像成有一个Web扫瞄器作为客户层。Web扫瞄器因为有大概成为一种真实的通用客户机,使它从看法上代替了两层布局的“胖客户机”。假如扫瞄器作为Web使用程序系统布局的尺度瘦客户机取得承认,那末之前驻留在两层模子的胖客户机中的功效会怎样呢?如今,使用程序公用的功效其实不移植回服务器(比方数据库办理器),而是成心将它驻留在一个新的两头层上。两头层撑持使用程序服务器软件,这类软件是两头件的一种情势,它处于第一层上瘦客户机的最小功效和第三层上服务器端营业体系的丰厚功效之间。因为三层系统布局与Web处置模子有亲切干系,以是两头层使用程序服务器常被视为Web服务器的一种功效扩大。现有的Web使用程序使用CGI程序,未来自Web扫瞄器的用户哀求传送到不基于Web的营业体系,并向扫瞄器前往呼应,就是三层模子的一种完成。这些使用程序渐渐向servlet手艺的转移申明三层模子正在加强。
<p>
其实产生见解的过程就是训练自己发现问题,分析问题的能力。根据以上的认识我想谈下传统的学习与通过视频独立学习的优缺点:
作者: 活着的死人    时间: 2015-1-20 23:59
有时间再研究一下MVC结构(把Model-View-Control分离开的设计思想)
作者: 谁可相欹    时间: 2015-1-30 08:09
至于JDBC,就不用我多说了,你如果用java编过存取数据库的程序,就应该很熟悉。还有,如果你要用Java编发送电子邮件的程序,你就得看看Javamail 了。
作者: 海妖    时间: 2015-2-3 19:51
一直感觉JAVA很大,很杂,找不到学习方向,前两天在网上找到了这篇文章,感觉不错,给没有方向的我指了一个方向,先不管对不对,做下来再说。
作者: 仓酷云    时间: 2015-2-6 21:52
Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台
作者: 莫相离    时间: 2015-2-14 05:16
任职于太阳微系统的詹姆斯·高斯林等人于1990年代初开发Java语言的雏形,最初被命名为Oak,目标设置在家用电器等小型系统的程序语言
作者: 金色的骷髅    时间: 2015-3-4 04:45
不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。
作者: 飘飘悠悠    时间: 2015-3-11 16:54
科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。
作者: 第二个灵魂    时间: 2015-3-19 01:47
让你能够真正掌握接口或抽象类的应用,从而在原来的Java语言基础上跃进一步,更重要的是,设计模式反复向你强调一个宗旨:要让你的程序尽可能的可重用。
作者: admin    时间: 2015-3-26 23:42
是一种将安全性(Security)列为第一优先考虑的语言




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2