jsp动作是一组jsp内置的标签,用来控制jsp的行为,执行一些常用的jsp页面动作。通过jsp动作实现使用多行java代码能够实现的效果,即对常用的jsp功能进行抽象与封装。

jsp共有七种标准的“动作元素”:<jsp:include>、<jsp:forward>、<jsp:param>、<jsp:plugin>、<jsp:useBean>、<jsp:getProperty>、<jsp:setProperty>

一、include动作

1、概念:用于运行时包含某个文件。若包含jsp文件,则先执行文件再包含结果。

<jsp:include>动作可以包含动态或静态文件,但包含过程不同。若文件是动态的,需要经过jsp引擎编译执行,否则只是简单地把文件内容加到主jsp页面中,虽然不能从文件名上判断文件的静态性或动态性,但是<jsp:include>能同时处理这两类文件,所以不需要在包含时判断静动性。

2、语法:<jsp:include page="relative URL | <%=expression %>" flush="true" />

(1)page:指明被包含文件的相对路径,必须为当前web项目内的文件

(2)flush:指读入被包含文件前是否刷新缓冲区,一般设置为true(默认是false)。

项目ch04案例:

step1:创建静态static.jsp页面

                    

step2:创建动态dynamic.jsp页面

      

step3:创建include页面包含静态和动态页面

               

结果:http://localhost:8080/ch04/includejingdong.jsp

二、forward动作

1、概念:用于将用户的请求重定向到其他页面,即停止当前jsp页面的执行,将客户端的请求转交给另一个jsp页面。

jsp<jsp:forward>动作把当前A页面重新导向到另一个B页面上,客户端看到的地址是A页面的地址,而显示的内容是B页面的内容

2、语法:<jsp:forward page="重定向页面的URL">

page:页面相对地址,其值可以是静态的字符串,也可以是计算类型。

项目ch04案例:

创建forward.jsp页面,如下。已知:includejingdong.jsp页面在上述案例中已创建。

结果:http://localhost:8080/ch04/forward.jsp

注意:在使用forward之前不能有任何内容已输出到客户端,否则会发生异常。

三、param动作

1、概念:用来提供参数信息。<jsp:param>经常和<jsp:include>、<jsp:forward>、<jsp:param>及<jsp:plugin>一起使用。

2、语法:<jsp:param name=参数名"" value="参数值">

name:参数的名称

value: 参数值,可以用于页面间的数据传递

项目ch04案例:

step1:创建param.jsp页面

                    

step2:创建sum.jsp页面

结果:http://localhost:8080/ch04/param.jsp

四、plugin动作

<jsp:plugin>动作是用于在客户端浏览器中执行一个Bean或显示一个Applet,而这种显示需要浏览器的java插件。当jsp页面被编译并响应至浏览器执行时,<jsp:plugin>会根据浏览器的版本替换为<object>或<embed>标记。

jsp基础语言-jsp动作的更多相关文章

  1. jsp基础语言-jsp指令

    jsp编译指令用于设置jsp程序的属性以及由jsp生成的servlet中的属性. jsp常用的编译指令有3个:include指令.page指令.taglib指令. 一.page指令 1.概念:用来设置 ...

  2. jsp基础语言-jsp注释

    JSP注释可分为客户端注释和服务器端注释. 客户端注释:用户可通过浏览器中的源代码查看,且这种注释可以加入JSP表达式. 语法:<!-- 客户端注释[<%=表达式%>] --> ...

  3. jsp基础语言-jsp代码段

    jsp代码段:是放在<% %>标记之间符合java语言规范的代码片段 格式:<% 代码段 %>  代码段中可以包含用于jsp变量和方法的声明.显示表达式.HTML以及调用Jav ...

  4. jsp基础语言-jsp异常

    JSP异常 jsp页面执行时会出现两种异常,实际是javax.servlet.jsp包中的两类异常JsError和JspException. 1.JsError 在jsp文件转换成servlet文件时 ...

  5. jsp基础语言-jsp表达式

    1.jsp表达式作用:将动态信息显示在页面中. 2.jsp表达式语法:<%=变量或表达式%> 变量:要在页面显示的值的变量名 表达式:其值由服务器计算,计算结果以字符串的形式发送到客户端 ...

  6. jsp基础语言-jsp声明

    jsp声明的语法格式:<%! 声明代码 %> jsp声明的意义:用来定义在程序中使用到的变量.方法等.最后要以“:”结尾. jsp声明举例: <%! int a=100,b=200; ...

  7. JSP基础:JSP指令、JSP注释、JSP脚本、JSP声明、JSP表达式

    JSP指令分为:page指令.include指令.taglib指令. page指令:通常位于JSP页面的顶端,同一个页面可以有多个页面指令. 语法:<%@ page language=" ...

  8. JavaWeb基础-Jsp基础语法

    jsp基础语法 JSP的组成 静态内容.指令.表达式.小脚本.声明.注释 JSP的生命周期 用户发出index.jsp ,服务端判断是否是第一次请求,若是第一次请求,则tomcat中的JSP引擎中的文 ...

  9. JSP-Runoob:JSP 表达式语言

    ylbtech-JSP-Runoob:JSP 表达式语言 1.返回顶部 1. JSP 表达式语言 JSP表达式语言(EL)使得访问存储在JavaBean中的数据变得非常简单.JSP EL既可以用来创建 ...

随机推荐

  1. Hibernate4集成spring4报错----No Session found for current thread

    在编写一个Hibernate4集成spring4的小demo的时候出现了该错误: org.hibernate.HibernateException: No Session found for curr ...

  2. FCC(ES6写法) Make a Person

    用下面给定的方法构造一个对象. 方法有 getFirstName(), getLastName(), getFullName(), setFirstName(first), setLastName(l ...

  3. 原生javascript实现 下拉框搜索功能

    由于业务需求,要实现 一个下拉框搜索功能.这个下拉功能和百度的还是有点区别的,百度的是时时与服务器交互的,而这个只是模拟.技术点在于实现 了搜索功能. 未搜索前如下图: 搜索后: <!DOCTY ...

  4. Java软件工程师面试常见问题集锦之一

    1.面向对象的特征有哪些方面 1.抽象: 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节.抽象 ...

  5. FFmpeg 结构体学习(一): AVFormatContext 分析

    在 FFmpeg 学习(六):FFmpeg 核心模块 libavformat 与 libavcodec 分析 中,我们分析了FFmpeg中最重要的两个模块以及重要的结构体之间的关系. 后面的文章,我们 ...

  6. [Swift]LeetCode126. 单词接龙 II | Word Ladder II

    Given two words (beginWord and endWord), and a dictionary's word list, find all shortest transformat ...

  7. [SQL]LeetCode176. 第二高的薪水 | Second Highest Salary

    Write a SQL query to get the second highest salary from the Employee table. +----+--------+ | Id | S ...

  8. [Swift]LeetCode273. 整数转换英文表示 | Integer to English Words

    Convert a non-negative integer to its english words representation. Given input is guaranteed to be ...

  9. [Swift]LeetCode876. 链表的中间结点 | Middle of the Linked List

    Given a non-empty, singly linked list with head node head, return a middle node of linked list. If t ...

  10. 面试题:合并2个有序数组(leetcode88)

    给定两个有序整数数组 nums1 和 nums2,将 nums2 合并到 nums1 中,使得 num1 成为一个有序数组. 说明: 初始化 nums1 和 nums2 的元素数量分别为 m 和 n. ...