一、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表达式的更多相关文章

  1. jsp篇 之 Jsp中的内置对象和范围对象

    Jsp中的内置对象: 在jsp页面代码中不需要声明,直接可以使用的对象. 一共有[9个内置对象]可以直接使用. 对象类型           名字 PageContext          pageC ...

  2. JSP中的内置对象和Struts中的Web资源的详解

    JSP中的内置对象有如下几种: request :继承于HttpServletRequest, HttpServletRequest继承ServletRequest, 获得的Request对象的方法: ...

  3. jsp中的内置对象(9个)、作用

    jsp内置对象 定义:可以不加声明就在JSP页面脚本(Java程序片和Java表达式)中使用的成员变量 JSP共有以下9种基本内置组件(可与ASP的6种内部组件相对应): 1.request对象 客户 ...

  4. JSP学习 三大指令、九个内置对象、JavaBean、EL表达式

    1.page-->最复杂:<%@page language="java" info="xxx"...%> * pageEncoding和con ...

  5. JAVAWEB开发之Session的追踪创建和销毁、JSP具体解释(指令,标签,内置对象,动作即转发和包括)、JavaBean及内省技术以及EL表达式获取内容的使用

    Session的追踪技术 已知Session是利用cookie机制的server端技术.当client第一次訪问资源时 假设调用request.getSession() 就会在server端创建一个由 ...

  6. JavaWeb笔记——Jsp的指令、内置对象和动作标签

    JSP三大指令   一个jsp页面中,可以有0~N个指令的定义! 1. page --> 最复杂:<%@page language="java" info=" ...

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

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

  8. Spring,SpringMVC,MyBatis,Hibernate,Servlet的生命周期,jsp有哪些内置对象,Tomcat,Cookie和Session的作用以及区别,oracle,MYSQL等面试题总结

    1. 什么是Spring,谈谈你对Spring的理解 Spring是我们JAVA开发人员在搭建后台时选用的一个轻量级的开源框架,Spring框架目前也是功能丰富,十分优秀企业级采用最多的一个框架. S ...

  9. JSP有哪些内置对象

    JSP有哪些内置对象? 1.page:JSP网页本身; 2.request:用户端请求,此请求会包含来自GET/POST请求的参数; 3.session:请求有关的会话; 4.application: ...

随机推荐

  1. Request URI Too Long

    如上图所示,URL传參长度限制,改为Post参数提交就好了.

  2. PDF截取矢量图

    PDF截取矢量图 觉得有用的话,欢迎一起讨论相互学习~Follow Me 方法与步骤 下载并安装 Adobe Acrobat X Pro 软件 点击右侧按钮(工具)-页面-裁剪-单击并选择区域-双击实 ...

  3. Spring RedisTemplate操作-HyperLogLog操作(7)

    @Autowired @Resource(name="redisTemplate") private RedisTemplate<String, String> rt; ...

  4. javascript设计模式开篇:Javascript 接口的实现

    javascript语言不像java. c#. c++等面向对象语言那样有完备的接口支持,在javascript中,接口的实现有三种方式,分别为注释描述.属性检查.鸭式变形.注释描述实现起来最为简单, ...

  5. 20155226 2016-2017-2 《Java程序设计》第6周学习总结

    20155226 2016-2017-2 <Java程序设计>第6周学习总结 教材学习内容总结 第十章 输入/输出 10.1 InputStream与OutputStream 1 . 串流 ...

  6. MFC笔记(DN)

    01:MFC应用程序编程 02:MFC菜单.工具栏.状态栏 03:视图窗口

  7. 训练赛第二场E题 Cottage Village

    题目大意:在一条X轴上,有若干个正方形,并且保证这些正方形的中心都在X轴上,然后输入n个正方形的中心的X坐标,和正方形的边长,现在要再插入一个正方形,要求是,新插入的正方形至少要有一条边与原来的正方形 ...

  8. Spark笔记之数据本地性(data locality)

    一.什么是数据本地性(data locality) 大数据中有一个很有名的概念就是"移动数据不如移动计算",之所以有数据本地性就是因为数据在网络中传输会有不小的I/O消耗,如果能够 ...

  9. 01 workerman之GatewayWorker框架简单使用

    1.GatewayWorker框架是什么? GatewayWorker基于Workerman开发的一个项目框架,用于快速开发TCP长连接应用,例如app推送服务端.即时IM服务端.游戏服务端.物联网. ...

  10. eclipse中可以导入其它工具编写的RobotFramework脚本吗?

    在Robotframework的官方网站中,提供了非常多的编辑RF的工具.比如Ride,eclipse,sublime,notepad++等. 网上查到的资料,大部分都是Ride这个编辑工具的使用.在 ...