简化JSP表达式中代码

开发 后端
本文介绍简化JSP表达式中代码,包括request,response,session和application等。

JSP表达式中”预定义变量”的使用

为了简化JSP表达式和scriptlets中的代码,提供了8种自动定义的变量,有时称做implicit objects(固有对象)。它们是:request,response,out,session,application,config,pageContext,和 page。下面我们来详细的了解它们。

request

与request相联系的是HttpServletRequest类,使您可以得到request的参数(通过getParameter方法),request 的类型(GET,POST,HEAD,等等),和引入的HTTP头(cookies,Referer,等等)。严格来说,request是类 ServletRequest的一个子类而不是HttpServletRequest类的,事实上,如果request的协议不是HTTP,那麽它几乎不会工作。

response

 对客户端的response与HttpServletResponse 相连。请注意,因为输出流是放入缓冲的,所以可以设置HTTP状态码和response头,尽管在标准的servlets中不允许将之发送到客户端。

out

这里使用PrintWriter类来发送输出到客户端。然而,为了使response对象有效,可使用一个PrintWrite类的使用缓冲的版本JspWriter。使用session的属性page directive,您可以自己定义缓冲的大小,甚至可以在使用了buffer属性后关闭缓冲。也请注意,out仅用于scriptlets之中,因为JSP表达式自动的放入输出流,所以极少需要明确的声明out。

session

应用与request相联系的HttpSession类。因为session是自动创建的,即使没有一个引入的session,这种变量仍可绑定。有一个例外是,如果您用page directive关闭session,再试图使用session时将导致错误(在JSP页面向servlet转换时)。

application

使用ServeletContext类,通过使用getServletConfig().getContext()得到。

config

是一个ServletConfig类的对象。

pageContext

这是JSP中的一个新的类PageContext,用于精练特定服务器的特点时使用,如提高JspWriters的执行效率。如果您通过这个类访问而不是直接的,您的代码将仍然运行在“规则”的JSP /servlet引擎。

page

在JAVA JSP表达式中不是很有用,它仅仅是用来保存在脚本的语言不是JAVA时的时间。HTML,scripting elements,directives,和 actions。

【编辑推荐】

  1. 浅析JSP服务器
  2. 监视JSP中JVM可用内存
  3. JSP的Init和Destory函数提高工作效率
  4. 浅析JSP编译器基本语法
  5. 浅析编写JSP Tag
责任编辑:佚名 来源: IT168
相关推荐

2009-07-03 18:31:04

JSP表达式

2021-09-13 18:39:50

ServeltELJSP

2009-10-27 10:14:54

VB.NET正则表达式

2009-08-13 09:47:57

调用JSP EL表达式带参数方法

2014-01-05 17:41:09

PostgreSQL表达式

2019-03-13 08:56:07

JavaSpEL表达式注入

2009-07-03 17:52:17

JSP2.0

2024-03-25 13:46:12

C#Lambda编程

2010-03-12 17:44:21

Python正则表达式

2009-09-11 12:32:33

LINQ表达式

2009-09-10 15:35:07

LINQ查询表达式

2011-10-28 16:34:13

LINQ

2022-12-05 09:31:51

接口lambda表达式

2009-09-15 15:18:00

Linq Lambda

2009-09-09 13:01:33

LINQ Lambda

2018-09-27 15:25:08

正则表达式前端

2020-09-04 09:16:04

Python正则表达式虚拟机

2009-09-17 14:21:19

LINQ表达式

2009-09-11 09:48:27

Linq Lambda

2009-09-09 17:45:07

Linq表达式
点赞
收藏

51CTO技术栈公众号