设置JSP页面指令

开发 后端
本文介绍JSP页面最佳实践,包括设置页面指令,基于模板进行开发和使用正确的包含机制等。

1、始终把会话页面指令设置为False,除非希望在JSP页面中使用会话信息,False设置不会删除现有的会话,但是true设置将创建一个会话,但也许不是有意的。了解使用request.getSession(true)时警告,为了避免这种调用带来的安全问题,应该确保限制了带有页面指令sesion = true的JSP页面的使用。

2、设置页面指令
“防弹的”应用程序使用页面指令重写Session和errorPage的默认值。应始终把会话页面指令设为False,除非希望在JSP页面中使用会话的信息。False设置不会删除任何现有的会话,但是true设置会创建一个会话(或许是无心的)。为了避免request.getSession(true)调用引入的安全问题,应确保使用页面指令Session="true"限制了JSP页面的使用。只有在确认会话后,对这些受限制的页面的直接请求才确实存在。可以限制对JSP的访问,具体做法是把它们放在web应用程序的web-inf目录中。可以在web-inf目录中包含或转发资源,但是外部用户无法直接访问这些资源。此外,我们无法知道应用程序何时会抛出异常。使用errorPage页面指令把这些失败的请求重定向到一个用户友好的错误页面。

3、基于模板进行开发
 没有理由重头开始编写应用程序组件。更好的办法是采用一个与计划开发的应用程序相近的应用程序,对它进行修改,直到满足需要为止。设计 WebAuction应用程序的目的就是如此,此外,sun公司发行的j2ee Blueprints为应用程序开发提供了一个极好的起点。

4、注意大写和空格
xml编码格式的j2ee部署文件的出现意味着需要注意大写和空格。开发人员可能花费了大量时间来调试一个应用程序,最后却发现,原来是一个错误使用空格或括号导致了错误。

5、使用正确的包含机制
使用包含指令模块化页面。如果站点定期重用组件,比如横跨web站点顶部的导航栏或标题,考虑把用于生成这些组件的代码放入单独的JSP页面中。接着,使用JSP包含指令把上述代码包含到每个页面中。包含指令是一种高效的操作。如果又特殊的需要,想动态选择被包含的资源,或者需要对字符编码进行高级控制,就开一个使用包含动作。

6、在JSP中尽量少使用Java
混合使用JSP和Java代码很可能导致二者都显示的晦涩。应利用JavaBean和定制标签库的优点,尽可能地少自傲JSP页面中使用Java代码,最理想的情况是完全不使用Java代码。

7、把业务逻辑放在JavaBean中
JSP设计的一个好处是能够避免把敏感的代码放在web页面中,业务逻辑可以在web应用程序、服务器操作和Java客户端应用程序中应用程序。可以在整个J2EE平台上广泛使用JavaBean,所以JavaBean是定义应用程序业务逻辑的好地方。

8、标签库中的表示逻辑
定制标签库提供了一种方式,允许使用JSP标签来替换表示层逻辑。然而,标签库处理程序类与JSP紧密相关,不能在其他上下文中被重用。同样,定制标签是定义表示逻辑的好地方,但是不适合定义业务逻辑。

9、使用现有的标签库
没有必要重复发明轮子。又大量多种用途的标签库已经存在。如jstl

【编辑推荐】

  1. 解决JSP开发Web程序中文显示三种方法
  2. 如何从MIDlet中调用JSP页面
  3. JSP开发环境的搭建
  4. Java JSP利用Google的Translate开发API
  5. 构造JSP JavaBean开发和发布环境简介
责任编辑:佚名 来源: CSDN
相关推荐

2009-07-02 11:34:42

JSP指令JSP开发

2009-07-02 11:25:33

JSP课程

2009-07-03 18:12:49

JSP页面

2009-07-01 18:50:29

Dreamweaver

2009-07-01 15:08:50

JSP指令和脚本元素

2009-07-06 10:00:31

JSP页面传值

2009-03-16 15:07:20

JSP分页window.openJSP表单

2009-06-30 11:27:25

JSP include

2009-07-02 10:13:47

ASP和JSPJSP页面

2009-07-06 18:23:56

Struts和JSPJSP页面

2009-07-03 17:48:34

JSP页面翻译

2009-07-07 13:42:57

Servlet JSP

2009-02-25 10:55:29

FCKeditor控件JSP

2009-07-07 18:20:54

JSP页面显示乱码

2009-07-02 09:25:41

JSP实现页面跳转

2009-07-07 16:49:43

JSP数据库配置

2009-02-23 14:17:00

include指令动作

2009-07-02 13:36:24

动态页面JSP技术

2009-09-04 16:10:49

JSP页面间传递参数

2009-06-25 14:05:01

JavaBean实现J
点赞
收藏

51CTO技术栈公众号