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. 使用VB6制作RTD函数

    以前模仿大神在vs里使用c#实现RTD函数功能.(真是很生僻的东东啊)C#制作RTD参考:大神博客跳转.最近想VB里能不能做?就试着做了做,好像基本成了,整套代码有些毛病,勉强能算个样子,暂时不打算再 ...

  2. Windows Internals学习笔记(七)Image Loader

    参考资料: 1. <Windows Internals> 2. Fibers 知识点: ● 当一个进程在系统上启动时,内核将创建一个进程对象来代表它,并执行各种内核相关的初始化任务.然而, ...

  3. Js获取下拉框选定项的值和文本

    Js获取下拉框的值和文本网上提供了2种方法:但有些人很不负责任,他们根本没考虑到浏览器之间的差异导致的错误,导致很多新手琢磨了半天找不出错误! 下面我总结下Firefox和IE下获取下拉框选定项的值和 ...

  4. requestAnimationFrame 动画

    requestAnimationFrame : 调用这个方法,就是告诉浏览器要执行动画了,从而浏览器自动计算动画时间间隔,从而在恰当的时候刷新UI, 动画更加平滑. 他的用法和setTimeout() ...

  5. table插件实现

    选择.取消.全选.全部取消.获取行ids /** * Created by lizongqiong on 2016/1/8. */ var $ = require('jquery'); var tab ...

  6. hdu3341Lost's revenge(ac自动机+dp)

    链接 类似的dp省赛时就做过了,不过这题卡内存,需要把当前状态hash一下,可以按进制来算出当前的状态,因为所有的状态数是不会超过10*10*10*10的,所以完全可以把这些存下来. 刚开始把trie ...

  7. Nginx 1.10.2 php 7 环境安装

    1.安装编译工具和库文件,红色部分提示在centos镜像站点上查不到包,用yum安装的时候要认真看那些包没有找到,用yum的时候尽量不要使用-y选项 yum install gcc automake ...

  8. Linux nginx日志按天分割实例

    Linux nginx日志按天分割实例   nginx的日志有个小缺点,日志文件一直就是一个,不会自动地进行切割,如果访问量很大的话,将导致日志文件非常大,不便于管理这就需要我们自己来实现了,按日期每 ...

  9. Unsupported major.minor version 51.0解决

    http://blog.csdn.net/justdb/article/details/7850212 解决:项目------>右键------>属性------>Java Comp ...

  10. 51nod 1412 AVL树的种类(dp)

    题目链接:51nod 1412 AVL树的种类 开始做的时候把深度开得过小了结果一直WA,是我天真了.. #include<cstdio> #include<cstring> ...