分享
 
 
 

JBOSS4.0概览

王朝java/jsp·作者佚名  2006-01-08
窄屏简体版  字體: |||超大  

JBOSS4.0概览

开放源代码应用服务器简化复杂操作,AOP的新特性

译者语:

本人对JBOSS4.0还不是很熟悉,所以一些新的概念和知识理解也难免有误,尤其是AOP方面的知识。本文翻译的过程中,有些概念和语义把握的确实不是很准,希望在这方面有经验和了解的朋友批评指正,欢迎多提意见。

序言

JBOSS 4.0,是一个安装简单,包含EJB2.0容器、Java消息服务等等功能的应用服务器,但是他的面向方面设计(AOP)是它真正突出的部分。JBOSS4.0的优点很多。它不但是一个开放源代码、平台独立、全面的J2EE支持应用服务器而且安装也非常简单。

JBOSS包括web服务器(servlet/JSP容器,HTML服务器)、EJB2.0容器。完整的纯Java的数据库引擎,(Java消息服务)JMS,JavaMail,和Java事务处理API/Java事务处理服务(JTA/JTS)支持。早期的JBOSS使用了Apache Tomcat Web服务器,但在JBOSS4.0中已经吧Apache Tomcat内嵌到JBOSS中了。

JBOSS4.0在今年的JavaOne大会上发布。JBOSS组织把这个版本的JBOSS作为一个开发版,以便进行开发代码的测试。正式的产品级的版本预计要到今年的第四季度发布。新增的功能包括,集成Java数据对象(JDO),对于JMS多点传送机制支持的修补,对J2EE1.4的完全实现和分布式事务机制。

安装JBOSS4.0非常简单:先解压缩JBOSS打包文件在配置一些环境变量就可以了。 假设我现在有一个WAR文件并且这个文件已经使用JDBC进行了测试。当JBOSS已经正常运行,我把这个WAR文件放到JBOSS的部署目录下,这时JBOSS的热部署功能就可以自动部署这个WAR。从下载JBOSS到安装并运行我的应用程序大概花不了10分钟。

JBOSS的应用服务器控制和配置-JMX机制,运行一次可以部署所有的组件和服务。资源属性和可配置参数可以通过MBeans(可控制beans)映射和更改,这些控制可以在JBOSS的控制台进行设置。一旦我们的servlet-based的应用程序被部署,JBOSS就自动安装一个部署MBeans,这个MBeans会被添加到JMX控制台的导航菜单中。通过这个MBean就可以部署或卸载WAR应用程序,或查看应用程序相关的属性。

不可否认,JBOSS的控制台在图形话方面比起IBM's WebSphere 或BEA's WebLogic要显得简单的多,但效果是一样的完全可以满足工作的需要。另外,由于JBOSS是开发源代码的所以你可以根据需要扩展控制台加上你想要的东西。

aspects 介绍

JBOSS4.0的的新特性体现在面向方面设计(AOP)方面。通过适当的扩展,AOP可以使你描述类似共享自父类的类。在JBOSS中,AOP特性有许多好处。最重要的一个特性是它可以向你的类中“注入”一个行为而无需更改类的源代码。这一特性允许你维护对象的持久行,使对象的方法“有目的的处理”("transaction aware,")并使一个类能够多集成。

JBOSS的AOP架构负责处理AOP,使用了一组命名概念,比如"interceptor," "pointcut," 和“introduction”。

一个interceptors编码“拦截器”(intercepts),它把一个对象放到一个被拦截的类中。JBOSS允许你定义拦截器,这个拦截器被hook到构造方法和存取字段上。一个由pointcut定义的点被插入到拦截器类内部,他是一段定义在一个specific.xml文件中的XML代码,这也是一个像上面讲到的热部署的过程。

一个pointcut定义了已经拦截的(intercepted )和正在拦截的类的规范,它是一个可选项,可以通过XML文件中的过滤机制来选择它,所以只有规范的字段和方法会被拦截。拦截类扩展了一个invoke()方法,只

要拦截类的方法或字段被访问这个方法就会被JBOSS AOP架构调用。结果抢菇卣呖床坏酵獠肯低澈屠菇乩嘀浔徊迦肓耸裁础?lt;BR

JBOSS在引导时通过拦截类的类文件实现了这一切。当一个拦截类被引导,ClassLoader通过类文件向类中加入字节代码。在运行之后字节代码把控制传输到一个控制类中并且扮演一个交换器的角色,把拦截发送到适当的处理类。

JBOSS4.0 AOP架构超出了简单的向一个类中注入行为的操作。它提出了引言的概念,这个引言是一个特定的拦截它在引导时把一个新的接口存储到类中。另外,引言提供了类的接口的实现。

如果你觉得多重继承还不够,JBOSS还使用AOP来把类和类的方法与元数据关联起来。实际上,JBOSS参照了JSR1.75中的元数据机制。这使得今后JBOSS可以透明的向一个已有的Java对象添加所有的持久行机制和传输控制。

如果对AOP的方面的知识很感兴趣,但是你又不想通过一个应用服务器来体验他的特性,你可以从jboss.org上下载一个分离的AOP架构单独使用。

复杂,但却很有用

我必须承认我对JBOSS AOP的担心。它非常像FastObjects 的oop ,我也非常喜欢FastObjects。JBOSS的AOP很先进但也很麻烦,它在类装载时处理,所以没有外在的附加的编辑步骤,对于向类中插入方法不需要改变源代码。

当我重新考量JBOSS的简单安装和优秀的热部署功能后,我打消了上述对JBOSS的担心。现在只剩下对JBOSS4.0的另一个看法那就是他的文档,JBOSS站点上发布的免费文档好像是原来的旧文档。 除了这些,再没什么了。

资源

JBoss:

http://www.jboss.org

AOP-相关文章:

"I Want My AOP," Ramnivas Laddad:

Part 1: Separate software concerns with aspect-oriented programming (January 2002)

Part 2: Learn AspectJ to better understand aspect-oriented programming (March 2002)

Part 3: Use AspectJ to modularize crosscutting concerns in real-world problems (April 2002)

"Add a JAC to Your Toolshed," Renaud Pawlak (March 2003):

http://www.javaworld.com/javaworld/jw-03-2003/jw-0307-jac.html

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有