Jsp最佳实践_第1页
Jsp最佳实践_第2页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

沈阳航空工业学院毕业设计(论文)Jsp最佳实践Jsp技术是servlet技术的扩展,结合html、java代码于一个文件。Java servlet技术关注于利用PrintWriter.println()语句产生html输出的java类,Jsp将这个概念抽象到一个更高的层次。使用jsp,web开发者可以写静态的html和将java代码片段加入到需要动态产生的页面中,从而,这种灵活的技术使简单web应用的快速开发成为可能。然而它能被滥用,从而形成难以维护、重用和改进的不必要的复杂的应用软件。遵循以下提示的技巧可以避免这种不必要的复杂应用。1、 分离html和java2、 将业务逻辑放在javaBean中3、 从标签定制管理器类中分离出常用行为4、 较之java代码在jsps中,更倾向于html在java管理器类中5、 使用适当的包含机制6、 使用jsp模版机制7、 使用CSS样式表8、 使用MVC模式9、 使用有效的标签定制库。10、 尽可能多使用jsp注释11、 遵循html最佳实践12、 利用jsp异常机制这些可帮助你写出可重用、易维护的jsp一、分离html和java将一个web页的所有必须的java、html代码放入一个jsp文件中是诱人的。这种方法使初学者定位相关联的代码和理解它们如何相互作用变的容易。然而,当应用变的更加复杂、开发者变的更加棘手时,这样方式将变的更加繁重和昂贵。结合html和java在同一的代码来源使程序变的非常不可读。为增强可读性,很多开发者使用缩排格式,但是混合html和java片段的文件使有益的缩排格式变的极其难以维护。许多web开发方法和机制强调html和java代码的分离,从而不同的开发者可以将精力集中在他们擅长的方面。适当地将java代码和包括jsp标签、定制标签在内的html分离,可以使web设计者、html编写者工作在html(表述)方面,而java开发者工作在应用的逻辑处理部分。当Java开发者实现jsp定制标签后的行为时关注的是业务逻辑,web设计者则象使用普通html标签一样使用这些定制标签。二、将业务逻辑放在JavaBean中直接包含在jsp中的java代码并不象包含在JavaBean中的java代码那样容易被其他jsp页面理解,通用行为和业务逻辑放在JavaBean中不仅可以被其它jsp,也可以被应用的其它部分使用,这是因为JavaBean仅仅是满足一些基本约定(比如不含参数的构造器,为private类属性设置set/get方法)的java类,也能作为任意其它类使用。值得注意的是,ejb在封装针对应用中所有组件通用的行为和数据时也是有用的。三、从标签定制管理器类中分离出常用行为作为定制标签管理器类的java类实现定制标签,并不象JavaBean,它不能如普通java工具类一样易于使用,而是,定制标签管理器类实现特定的接口或继承提供这些接口基本实现的类。由于它们不易于在jsp外使用,定制标签管理器类应当仅包含那些不能在定制标签之外、jsp之外使用的特定行为。定制标签常常需要针对通用行为和业务逻辑的支撑,并利用提供通用行为的JavaBeans和EJBs四、较之java代码在jsp中,更倾向于html在java管理器类中有时从java中分离html、jsp标签和如定制标签的html会需要不必要的令人费解的代码,基于此,你要么将java片段和表述放入jsp中,要么将html代码放入java标签管理器类。较之看到在jsp中作为脚本的java,我更愿意看到在java类中的一小部分html代码。由于定制标签管理器针对它们所实现的定制标签是特定的(同时也不能在jsp之外使用),放入一些html代码不会有什么麻烦,SUN的J2EE蓝皮书对此有更深入的讨论。对此标准也有例外:如果在jsp中包含一行或两行java代码片段和在java管理器类中包含许多行html代码解决的问题一样,那么允许在jsp中存在java代码应该是明智的。五、使用适当的包含机制包含机制在代码重用方面是少有的好的设计。从多个页面中分离出通用的jsp和html代码放入一个文件可以提高可维护性(仅需要在一处改变)和可重用性。有两种包含机制缩小了代码冗余促进了代码重用。为确保能够使用适当的包含机制,理解它们二者间的不同是重要的。除非我可以证明需要include 动作是正当的,一般地情况下我使用include指令。在蓝皮书“web 层”部分中的第七个问题,对理解两种包含机制的不同和确定在一特定情况使用哪一种提供了很好的资源。六、使用jsp模版机制一个模版机制允许一个公用的文件来控制web页、jsp、页面布局。于是,当你想改变页面布局时,你仅仅需要修改一个文件,所有其它的页面将反映出页面布局的改变。这不仅是使代码更加具有可维护性,页面布局模版机制对那些看到所有应用软件页面都协调一致的用户来说,使web页面显得更加美观和友好。七、使用CSS样式表正如模版可以使开发者将页面布局控制放于一处,样式表可以使开发者将外观控制放于一处。我使用CSS样式表来控制诸如字体格式、尺寸,表特征等项目。象模版一样,样式表允许开发者在一处改变,这些改变会立刻映射到所有外观页面,从而促进可维护性和给用户一致的外观。八、使用MVC设计模式当然、其它设计模式可以在jsp中有效的使用,而我经常使用模型?视图?控制器(MVC)的体系机构。MVC可以使应用的开发的建立、测试、维护、改进变得更为容易。在jsp术语中,MVC体系结构的现实经常被作为Model2(来自早期的jsp规范)提起。J2EE蓝皮书的例子就是基于MVC模式的。九、使用有效的标签定制库当标签库可以容易、有效地使用在多种用途时,开发者为什么还要为重复开发、担心测试、调试而花费时间呢?一些卖方以免费或单独购买的方式为他们的客户提供定制标签。但是很多定制标签库可以在网上找到,这些资源为找到一个潜在的有用的标签库提供一个很好的起点。当然这些第三方标签库有时候含有bug,自许多开发者在他们的应用开发中使用、测试这些标签时,绝大多数这样的问题极有可能被发现,同时很多定制标签是开源的,你可以根据自己的需要修改它们。我发现花时间广泛了解定制标签是值得的,因为这些标签库通常提供了大多数web应用的通用功能,而学习这些标签只需要很少的时间投资,重用已有、有效的定制标签可以节约编写、调试、测试自己的定制标签的时间。正如以上所说,许多标签库是开源,由于这些原因,我可以很容易的使通用的行为适应我特定项目的情况。十、尽可能多使用jsp注释适当的注释好象是对软件开发者的挑战。Jsp或其它代码理应包含注释以描述复杂特别的功能、页面用途和其它基本信息。由于jsp允许开发者将java、jsp标签、html标签混合在一个页面中,所以就有了多种注释jsp页面的方法,开发者应谨慎地考虑使用哪一种注释方式。Html注释在经由jsp编译而成的html源代码中是可见的,同时浏览器是我们很容易地看到这些。另一方面,jsp注释并不放在由jsp编译过程创建的html文档中,这些注释不能作为页面源代码的一部分通过浏览器看到。Java注释也可以出现在jsp文件中的java程序段中,它在浏览器中也是不可见的。但是,在jsp中包含java注释违反了分离java、html代码的原则。注释通常是对写或维护代码的开发者才有意义的。因此,除非有非得需要在浏览器中显示出来得情况,应该使用jsp注释。十一、遵循html最佳实践当java从jsp中分解出放入javaBean和定制标签管理器中时,jsp大部分由jsp标签(包括定制标签)和html标签组成。遵循和html开发有关的最佳实践方法以使jsp更易于理解和维护。十二、使用jsp异常机制对调试代码的开发者来说,一个抛出的异常堆栈痕迹是极其重要的,而和软件使用者共享一个完整的异常堆栈信息是极其少有的。冗长的堆栈信息是不美观的,同时由于暴漏了不必要释放的信息而增加了安全风险。Jsp允许开发者在代码中捕获和处理异常。除堆栈痕迹外的异常信息更为有用。Jsp能使用一个session变量保存当前正在执行的页面和操作的信息。接着,若一个异常产生,异常页面将被调用,它将同时访问抛出的异常信息和产生异常的起始页面的信息。异常页面可以使用接下来的在javaBean或ejb中的java代码将完全的异常信息、会话信息、异常的日期时间信息存入数据库中

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论