尊重servlet API 高效开发portlet

日期: 2013-05-26 来源:TechTarget中国 英文

由于一些异乎寻常的原因,当经验老道的软件开发人员跳转到JSR-286 portlet开发时,他们的脑袋就会一阵嗡嗡,而且貌似他们好像抛弃了在JAVA中基于web软件开发的一切基本原则。Portlet和基于门户的应用与标准的servlet和基于JSP的应用的相同点比不同点要多,当应用开发人员着手建立基于portlet的应用时,在他们开发基于web的Java应用时与基于portlet的开发,他们所学的所有基本概念应用的等同性,不能着重强调出来。  

Servlet和JSP开发规则仍在使用

  这里有servlet和JSP开发时,开发人员从未违背的规则,但出于某种原因,当那些web开发人员变成portlet开发人员时,这些规则似乎被抛之脑后了:

  1.不能在servlet中生产新的线程,也不应用在portlet中生产他们。

  门户服务器已经处理了用户调用的线程。产生新的线程只会破坏门户服务器。当然,Java 7提供了所有类型的设施,来进行线程处理,或实现并发程序,但是portlet本身没有合适的地方 ,来安置这些新功能。

  2.不能在Servlet中声明实例变量,也不应该在portlet中声明他们

  至于实例变量的去向,合适时自然会有机会,但是这些时机通常都会涉及到扩展servlet或portlet框架,而不是创建一个portlet或servlet来对于一个用例。当你试图在portlet中安置一个实例变量时,反而要考虑一下变量的变化范围,如PortletSession和PortletContext,可以更适合用于维护数据。

  3.不能同步servlet方法,也不应该同步portlet方法。

  同步方法在portlet中也是一个不良的想法。同步portlet方法会在应用中产生一个瓶颈。使复杂的逻辑离portlet层越远越好,如果你确实需要同步一个方法,在它最远的地方同步,而不是在portlet本身中。

  Portlet开发不是革新一种新方法来开发应用。这更像是进化的更改,这意味着建立在模式和servlet和基于JSP的开发最佳实践的基础之上,而不是回到反模式和不良的网络编程技术上。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

相关推荐