JSP中的内置标记(JSP动作)和 EL表达式
一、JSP的内置标记(JSP动作)
(一)JSP的内置标记都是以<jsp: 开始标记的

一般会用到<jsp:useBean/>,<jsp:setProperty/>,<jsp:getProperty/>,这三种是配合使用的
示例图:

显示效果:

再示例一个include :
静态包含:<%@include%>
动态包含:<jsp:include/>
先定义一个要被包含的文件main.jsp:


显示效果如下:

<jsp:forward/>:跳转——是服务端跳转——请求转发
图画的有点丑,将就将就



二、EL表达式
EL——Expreession Language :表达式语言,来自于ognl,ognl是一个开源项目。
简要的意思就是使用一系列的符号来描述一个表达式
示例图:
注释掉path的定义,你会看到下面会报错,由于在JSP中使用了没有定义变量的path,所以会报一个500的内部错误。
如果使用:${ 表达式 },会有什么变化呢,继续看下面

显示结果:

使用了 ${ 表达式 } :
使用EL表达式的前提是JSP页面的page指令的isELIgnored为false时使用,默认false。如果是使用true,编译器会把${path}原样显示,这里就不截图了,自己试试吧
对了EL表达式不是从页面获取值,而是从几个范围获取,继续看下面。

显示结果:

(一)、${ 表达式 } 就称为EL表达式
1.EL表达式是以 “ ${ ”开始 “ } ”结束,其中就是表达式。
2.主要的作用:用于获取内置范围对象的值。
3.EL表达式取值的原理:
首先从最小的范围去取值,如果没有就到更大的范围I去找值,如果还是没有,一直到applicatiion范围去找值,如果还是没有,不会报错,返回空白(什么都没有),如果是查null值,也返回空白。
4.EL表达式中表示范围对象是
JSP内置对象:application、session、request、pageContext。
EL表达式中范围对象:applicationScope。sessionScope、requestScope、pageScope。
EL表达式中表示范围对象示例:

显示结果:

(二)、EL表达式访问符号:
有两种:
1、使用 " . " 例如:${applicationScope.path}
2、使用” [ ] “ 符号 例如:${applicationScope[ " path " ] },注意中括弧里面是要用引号引起来
(三)、EL表达式中的运算符
1.算术运算符
+ :例如:${6+6} 。注意:在EL表达式中的‘+’只有数学运算的功能,没有连接符的功能,它会试着把运算符两边的操作数转换为数值类型,进而进行数学加法运算,最后把结果输出。若出现${'a'+'b'}则会出现异常。
- :例如:${4-3}
* :例如:${4*3}
/ : 例如:${9/3}
2.EL关系运算符
关系运算符 说明 范例 结果
==或eq 等于 ${5==5}或${5eq5} true
!=或ne 不等于 ${5!=5}或${5ne5} false
<或lt 小于 ${3<5}或${3lt5} true
>或gt 大于 ${3>5}或{3gt5} false
<=或le 小于等于 ${3<=5}或${3le5} true
>=或ge 大于等于 ${3>=5}或${3ge5} false
* 表达式语言不仅可在数字与数字之间比较,还可在字符与字符之间比较,字符串的比较是根据其对应UNICODE值来比较大小的。
注意:在使用EL 关系运算符时,不能够写成:
${param.password1} = = ${param.password2}
或者
${ ${param.password1 } = = ${ param.password2 } }
而应写成
${ param.password1 = = param.password2 }
3.逻辑运算符

4.Empty运算符
Empty运算符主要用来判断值是否为空(NULL,空字符串,空集合)。
5.条件运算符
${ A ? B : C}
JSP中的内置标记(JSP动作)和 EL表达式的更多相关文章
- jsp篇 之 Jsp中的内置对象和范围对象
Jsp中的内置对象: 在jsp页面代码中不需要声明,直接可以使用的对象. 一共有[9个内置对象]可以直接使用. 对象类型 名字 PageContext pageC ...
- JSP中的内置对象和Struts中的Web资源的详解
JSP中的内置对象有如下几种: request :继承于HttpServletRequest, HttpServletRequest继承ServletRequest, 获得的Request对象的方法: ...
- jsp中的内置对象(9个)、作用
jsp内置对象 定义:可以不加声明就在JSP页面脚本(Java程序片和Java表达式)中使用的成员变量 JSP共有以下9种基本内置组件(可与ASP的6种内部组件相对应): 1.request对象 客户 ...
- JSP学习 三大指令、九个内置对象、JavaBean、EL表达式
1.page-->最复杂:<%@page language="java" info="xxx"...%> * pageEncoding和con ...
- JAVAWEB开发之Session的追踪创建和销毁、JSP具体解释(指令,标签,内置对象,动作即转发和包括)、JavaBean及内省技术以及EL表达式获取内容的使用
Session的追踪技术 已知Session是利用cookie机制的server端技术.当client第一次訪问资源时 假设调用request.getSession() 就会在server端创建一个由 ...
- JavaWeb笔记——Jsp的指令、内置对象和动作标签
JSP三大指令 一个jsp页面中,可以有0~N个指令的定义! 1. page --> 最复杂:<%@page language="java" info=" ...
- JSP运行过程 JSP脚本 静态动态包含 jsp指令 jsp内置对象jsp四大作用域 jsp动作元素 EL表达式 JSTL 设计模式 JSP开发模式 EL内置对象
Day38 JSP JSP的运行过程具体如下: (1)客户端发出请求,请求访问JSP文件. (2)JSP容器先将JSP文件转换成一个Java源文件(Java Servlet源程序),在转换过程中,如果 ...
- Spring,SpringMVC,MyBatis,Hibernate,Servlet的生命周期,jsp有哪些内置对象,Tomcat,Cookie和Session的作用以及区别,oracle,MYSQL等面试题总结
1. 什么是Spring,谈谈你对Spring的理解 Spring是我们JAVA开发人员在搭建后台时选用的一个轻量级的开源框架,Spring框架目前也是功能丰富,十分优秀企业级采用最多的一个框架. S ...
- JSP有哪些内置对象
JSP有哪些内置对象? 1.page:JSP网页本身; 2.request:用户端请求,此请求会包含来自GET/POST请求的参数; 3.session:请求有关的会话; 4.application: ...
随机推荐
- 界面编程之QT绘图和绘图设备20180728
/*******************************************************************************************/ 一.绘图 整 ...
- 简单的sql分组统计
一个记录员工打卡时间的表,只有两个有效字段 员工名称,打卡时间,现在要统计某一天中,每个员工的打卡次数.最早打卡时间.最晚打卡时间,问sql怎么写? 其实这个sql很简单, 1.首先要明确既然是按每个 ...
- Hadoop生态圈-flume日志收集工具完全分布式部署
Hadoop生态圈-flume日志收集工具完全分布式部署 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 目前为止,Hadoop的一个主流应用就是对于大规模web日志的分析和处理 ...
- JavaScript中作用域回顾(避免使用全局变量)(瀑布流的实现)(scroll事件)以及Django自定义模板函数回顾
页面显示照片样式为瀑布流: 上面的div个数可以按照自己安排进行划分.img的分布可以使用模板标签以及自定义模板函数进行排布: 自定义模板函数实现可以看,最后几列:python---django中模板 ...
- Codeforces 314 E. Sereja and Squares
http://codeforces.com/contest/314/problem/E 题意: 原本有一个合法的括号序列 擦去了所有的右括号和部分左括号 问有多少种填括号的方式使他仍然是合法的括号序列 ...
- ASP.NET MVC学习(二)之控制器Controller
1.控制器 Controller接收用户请求,将Model和View匹配在一起,共同完成用户请求.它是一个分发器,通过选择不同的Model.View,可以决定完成不同的用户请求. 但Controlle ...
- 一些CSS3的乐趣 - 工作也能发现乐的源头
中秋节 translate 前些日子做一个中秋节的专题,主要就是写一个效果,月亮滚动,花瓣飘落.具体代码如下: .icons {z-index:10088; position:absolute; -w ...
- AngularJS -- 代码实例
整理书籍内容(QQ:283125476 发布者:M [重在分享,有建议请联系->QQ号]) ng-change 当文本输入字段中内容发生了变化,就会改变equation.x的值: <bod ...
- 20155227 2016-2017-2 《Java程序设计》第八周学习总结
20155227 2016-2017-2 <Java程序设计>第八周学习总结 教材学习内容总结 NIO与NIO2 NIO即New IO.java从JDK1.4开始提供了NIO,在JAVA ...
- 20155305乔磊2016-2017-2《Java程序设计》第六周学习总结
20155305乔磊2016-2017-2<Java程序设计>第六周学习总结 教材学习内容总结 InputStream与OutputStream 串流设计 1.串流:Java将输入/输出抽 ...