JSP动作元素

1、  动作元素分类

用来动态的包含文件、网页跳转及使用JavaBean组件等。

语法:<jsp:XXX />或者<jsp:XXX></jsp:XXX>

第一类是与存取JavaBean有关的,包括<jsp:useBean>、<jsp:setProperty>  <jsp:getProperty>

第二类是基本动作元素,包括<jsp:include>、<jsp:forward>、<jsp:param>、<jsp:plugin>、<jsp:params>、<jsp:fallback>

第三类是主要与JSP document有关,包括如下几个动作元素,<jsp:root>、<jsp:declaration>、<jsp:scriptlet>、<jsp:expression>、<jsp:text>、<jsp:output>

第四类主要用来动态的生成xml元素标签的值,包括<jsp:attribute>、<jsp:body>、<jsp:element>

第五类主要用于Tag File,包括<jsp:invoke>、<jsp:doBody>

2、<jsp:include>动作元素

语法格式<jsp:include page=”包含文件url地址” flush=”true|false” >

属性page用来指定包含文件的url地址,属性flush用来指定缓冲区满时,是否进行清空。

如果包含的文件为静态文件,那么就是单纯的加到JSP页面中,不会进行任何处理;如果被包含的文件为动态的文件,那么会先进行处理,再将处理的结果加到JSP页面。

3、<jsp:forward>动作元素

用来转移用户的请求,使得用户请求的页面跳转到另一个页面。这种跳转为服务器端跳转,所以用户的地址栏不会发生任何变化。语法格式如下:

<jsp:forward page=”跳转文件URL地址”>

4、<jsp:param>动作元素

用来传递参数,一般与<jsp:include>、<jsp:forward>联合使用,其语法格式如下:

<jsp:param name=”参数名” value=”参数值”/>

5、<jsp:plugin>动作元素

用来在JSP中嵌入Java插件,如Applet。语法格式如下:

<jsp:plugin

Type=”bean | applet”

name=”Applet name”

code=”Java class name”

codebase=”Javal class Cat”

align=”对齐方式”

height=”高度”

width=”宽度”

hspace=”水平间距”

vspace=”垂直间距”

archive=”预先加载的类列表”

jreversion=”JRE版本”

iepluginurl=”url”

nspluginurl=”url”>

</jsp:plugin>

6、<jsp:params>动作元素

用来给Bean或Applet传递参数,一般为多个参数。

<jsp:params>

<jsp:param name=”” value=””/>

<jsp:param name=”” value=””/>

</jsp:params>

7、<jsp:fallback>动作元素

用来指定当浏览器不支持或无法启动Bean或Applet时,在页面上打印输出错误提示信息。其语法格式如下:

<jsp:fallback>错误信息</jsp:fallback>

JSP内置对象

9种内置对象,可以直接引用,不用进行显式的声明。

与Servlet有关的内置对象,包括page和config两个对象。

与Input/Output有关的内置对象,包括out、request和response三个对象。

与Context有关的内置对象,包括session、application和pageContext三个对象。

与Error有关的内置对象,仅包括exception这一个对象。

1、属性保存范围

1)page范围,指设置的属性只在当前页面有效。通过使用pageContext的setAttribute()方法来设置属性,并通过pageContext的个体Attribute()方法来取得属性。

2)request范围,指属性在一次请求范围内有效。如果页面从一个页面跳转到另一个页面,那么该属性就失效了。这里的跳转指客户端跳转。通过使用request的setAtrribute()方法来设置属性,并通过request的getAttribute()方法来取得属性。

3)sessiion范围,指客户浏览器与服务器一次会话范围内,如果和服务器断开连接,那么这个属性也就失效了。通过使用session的setAtrribute()方法来设置属性,并通过session的getAttribute()方法来取得属性。

4)application范围,指在整个服务器范围,直到服务器停止以后才会失效。通过通过使用application的setAtrribute()方法来设置属性,并通过application的getAttribute()方法来取得属性。

2、  移除属性

只需调用相应对象的removeAttribute()方法就可以移除指定属性。

3、  request对象

不但可以用来设置和取得request范围变量,还可以用来获得客户端请求参数、请求的来源、表头、cookies等。

获得客户端请求参数,

getParameter(String name),获得参数名为name的参数值

/getParameterNames(),获得所有参数的名称

/getParameterValues(String name),获得参数名为name的所有参数

/getParameterMap(),获得所有参数封装的Map实例。

4、  response对象

可以用来给客户端传送输出信息。

addCookie(Cookie cookie),添加cookie

addDateHeader(String name, long date),添加一个标题名称为name标头,其值为日期类型。

addHeader(String name, String value),添加一个标题名称为name标头,其值为字符串类型。

addIntHeader(String name, Int value),添加一个标题名称为name标头,其值为整数类型。

setDateHeader(String name, long date),设置一个标题名称为name标头,其值为日期类型。

setHeader(String name, String value),设置一个标题名称为name标头,其值为字符串类型。

setIntHeader(String name, Int value),设置一个标题名称为name标头,其值为整数类型。

sendError(int sc),传递状态码

sendError(int sc, String msg),传送状态码和错误信息

setStatus(int sc),设置状态码

sendRedirect(URL),页面重定向,用来实现页面跳转。

5、  out对象

用来向网页输出信息

clear(),清楚网页上输出内容

clearBuffer(),清楚缓冲区内容

close(),关闭缓冲区,清楚所有内容

getBufferSize(),取得缓冲区大小

isAutoFlush(),获得缓冲区是否进行自动清除的信息

print(String str),进行页面输出

println(String str),进行页面输出并换行

6、  session对象

用来表示用户的会话状况,一边用于保存用户的各种信息,直到生命周期超时或者被释放掉为止。

getId(),获得session的ID

getCreationTime(),获得session生成的时间

getLastAccessedTime(),获得用户最后通过session发送请求时间

getMaxInactiveInterval,设置session生命周期,如果超过这个时间则失效。、

7、  application对象

用来取得和设置Servlet的相关信息。

getMajorVersion(),获得主要的Servlet API版本

getMinorVersion(),获得次要的Servlet API版本

getServerInfo(),获得服务器版本

getMimeType,获得指定文件的MIME类型

getContext,获得指定Local的Application context

getRealPath,获得指定path的绝对路径

JSP和JavaBean

1、  在JSP中调用JavaBean

语法格式为:

<jsp:useBean id=”对象名称” scope=”存储范围” class=”类名” ></jsp:useBean>

id属性表示该JavaBean实例化后的对象名称。scope属性用来指定该JavaBean的范围,也就是指JavaBean实例化后的对象存储范围。范围的取值为page、request、session和application。class属性用来指定JavaBean的类名,包括包名和类名。

2、  设置JavaBean属性

<jsp:setProperty name=”实例化对象名” property=”*” />

*表示按照表单传递的所有参数来设置JavaBean的属性。

<jsp:setProperty name=”实例化对象名” property=”属性名称” />

根据指定参数设置JavaBean属性。

<jsp:setProperty name=”实例化对象名” property=”属性名称”  param=”参数名称” />

相比上面方法,可以通过其指定需要设置的JavaBean属性。

<jsp:setProperty name=”实例化对象名” property=”属性名称”  value=”属性值” />

可以根据需要动态地设置JavaBean属性值。

EL表达式

EL即为Expression Language。

1、  算术运算符

${1+1}        ${1-1}        ${1*1}       ${1/1}       ${1%1}

2、  关系运算符

同样的,${表达式}。

关系运算符,==,!=,<,>,<=,>=。

3、  逻辑运算符,&&,||,!。

4、  条件运算符,${A?B:C}。

JSP 动作元素的更多相关文章

  1. JSP动作元素——————理论篇

    JSP动作元素的组成及作用 JSP使用Action来控制Servlet引擎的行为,可重复使用JavaBean组件. 常用Action: jsp:param       在 jsp:include.js ...

  2. JSP动作元素

    JSP动作元素分类 <jsp:include page="content.jsp"></jsp:include> 使用<%@ include%> ...

  3. JSP6(JSP 指令与JSP 动作元素)

    一.JSP指令用来设置整个JSP页面相关的属性 指令可以有很多个属性,它们以键值对的形式存在,并用逗号隔开. JSP中的三种指令标签: Page指令 Page指令为容器提供当前页面的使用说明.一个JS ...

  4. JSP运行过程 JSP脚本 静态动态包含 jsp指令 jsp内置对象jsp四大作用域 jsp动作元素 EL表达式 JSTL 设计模式 JSP开发模式 EL内置对象

    Day38 JSP JSP的运行过程具体如下: (1)客户端发出请求,请求访问JSP文件. (2)JSP容器先将JSP文件转换成一个Java源文件(Java Servlet源程序),在转换过程中,如果 ...

  5. Tip:JSP标签也称之为Jsp Action(JSP动作)元素

    JSP标签也称之为Jsp Action(JSP动作)元素,它用于在Jsp页面中提供业务逻辑功能,避免在JSP页面中直接编写java代码,造成jsp页面难以维护. ================ &l ...

  6. 复习:JSP基本的语法(JSP凝视 + JSP指令 + JSP脚本元素 + JSP动作元素)

    JSP原理: 1.    对于每个请求.jsp容器都会创建一个新的线程来处理它: 2.    Servlet容器载入jsp后转换成的servlet(.class文件)是常驻内存的,所以对应速度一般比較 ...

  7. 【Head First Servlets and JSP】笔记19:JavaBeans与JSP动作元素(<jsp:setProperty.....>、<jsp:getProperty.....>)

    内容来自imooc. 1.什么是JSP动作元素 2.在JSP页面中如何使用Javabeans <jsp:......>表示这是一个JSP动作元素 3.使用JSP动作元素创建JavaBean ...

  8. #1122 JSP动作元素

    JSP动作元素 与JSP指令元素不同的是,JSP动作元素在请求处理阶段起作用.JSP动作元素是用XML语法写成的. 利用JSP动作可以动态地插入文件.重用JavaBean组件.把用户重定向到另外的页面 ...

  9. javabean和jsp动作元素

    model1就是利用了jsp和javabean 的组合来处理问题.jsp页面如果有太多的逻辑代码的话,维护起来和扩展起来是相当的麻烦的.所以jsp的逻辑代码部分都打包到一种java类当中进行编写.这种 ...

随机推荐

  1. iOS开发数据库篇—SQLite的应用

    iOS开发数据库篇—SQLite的应用 一.简单说明 在iOS中使用SQLite3,首先要添加库文件libsqlite3.dylib和导入主头文件. 导入头文件,可以使用库中的函数(是纯C语言的) 二 ...

  2. 小白菜初探nodejs

    记得大四那年实习的时候出去找工作,就常常听见大家说node.从那以后,悄然埋下了一颗学习nodejs的心.不过由于基础太薄弱,一直没有学习.加之工作上没有相关应用,就一直搁置到现在. 年会的时候,老大 ...

  3. Appium自动化测试1 - 安装部署

    主要参考文章“虫师”自动化部署教程,不过结合自己的一些情况记录此博客~ 1.准备安装包 1)jdk; 下载及安装过程省略,我下载的是jdk1.7版本. 2) adt&SDK; SDK下载的是e ...

  4. 火狐浏览器Firefox上DownThemAll插件

    DownThemAll插件支持断点续传.多线程下载,可以大幅度提高下载速度. 在Windows平台上,要下载大量的文件,迅雷自然是首选:但在非Windows平台上,只要安装一个火狐浏览器,再安装Dow ...

  5. 关于JSPatch热修复

    今天和同事聊到JSPatch热修复,我们来看下JSPatch,确实解决了APP升级的痛点. 刚好,已经有这么一个第三方平台实现了后台管理,全套服务(网址是:http://jspatch.com/),先 ...

  6. php 对多维数组排序array_multisort

    php 对多维数组排序array_multisort 排序顺序标志: SORT_ASC - 按照上升顺序排序 SORT_DESC - 按照下降顺序排序 排序类型标志: SORT_REGULAR - 将 ...

  7. javascript中对象的深度克隆

    记录一个常见的面试题,javascript中对象的深度克隆,转载自:http://www.2cto.com/kf/201409/332955.html 今天就聊一下一个常见的笔试.面试题,js中对象的 ...

  8. eclipse改变theme

    https://github.com/eclipse-color-theme/eclipse-color-theme.git https://github.com/eclipse-color-them ...

  9. git push (第一次) (转)

    原地址  http://blog.csdn.net/kazeik/article/details/9113891 下图是github在创建仓库后给的提示:按它一步步操作下去就可以了. 下图是在git命 ...

  10. 4、android BroadcastReceiver详细用法

    BroadcastReceiver也就是“广播接收者”的意思,顾名思义,它就是用来接收来自系统和应用中的广播. 在Android系统中,广播体现在方方面面,例如当开机完成后系统会产生一条广播,接收到这 ...