JSP基础解析
EL表达式 https://www.cnblogs.com/zhouguanglin/p/8117406.html
EL(Expression Language) 是为了使JSP写起来更加简单。表达式语言的灵感来自于 ECMAScript 和 XPath 表达式语言,它提供了在 JSP 中简化表达式的方法,让Jsp的代码更加简化
JSP中的注释(<%-- 内容 -- %>),指令(<%@ 指令名 %>),脚本(<% 脚本 %>),表达式(<%= 赋值结果 %>),声明(<%! 声明 %>),动作(<jsp:useBean />)
C标签
首先需要引入标签库和jar包
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
1.基本语法:${标识符}
2.基本运算符:

empty运算符:检查对象是否为null(空)
二元表达式:${user!=null?“yes” :"no"}
3.常用标签
|
标签 |
描述 |
|
用于在JSP中显示数据,就像<%= ... > |
|
|
用于保存数据 |
|
|
用于删除数据 |
|
|
用来处理产生错误的异常状况,并且将错误信息储存起来 |
|
|
与我们在一般程序中用的if一样 |
|
|
本身只当做<c:when>和<c:otherwise>的父标签 |
|
|
<c:choose>的子标签,用来判断条件是否成立 |
|
|
<c:choose>的子标签,接在<c:when>标签后,当<c:when>标签判断为false时被执行 |
|
|
检索一个绝对或相对 URL,然后将其内容暴露给页面 |
|
|
基础迭代标签,接受多种集合类型 |
|
|
根据指定的分隔符来分隔内容并迭代输出 |
|
|
用来给包含或重定向的页面传递参数 |
|
|
重定向至一个新的URL. |
|
|
使用可选的查询参数来创造一个URL |
一.条件运算符
${user.gender==1?'男':'女'}
二.if()
<c:if test="${2>1}">code..</c:if>
code会在test属性为true时执行
三.if()-else{}
<c:choose>
<c:when test="${2>1}">code..</c:when>
<c:otherwise>code..</c:otherwise>
</c:choose>
四.if()-else if()-else{}
<c:choose>
<c:when test="${2>1}">code..</c:when>
<c:when test="${2>3}">code..</c:when>
<c:otherwise>code..</c:otherwise>
</c:choose>
五.<c:forEach>标签具有以下一些属性:
l var:迭代参数的名称。在迭代体中可以使用的变量的名称,用来表示每一个迭代变量。类型为String。
l items:要进行迭代的集合。对于它所支持的类型将在下面进行讲解。
l varStatus:迭代变量的名称,用来表示迭代的状态,可以访问到迭代自身的信息。
l begin:如果指定了items,那么迭代就从items[begin]开始进行迭代;如果没有指定items,那么就从begin开始迭代。它的类型为整数。
l end:如果指定了items,那么就在items[end]结束迭代;如果没有指定items,那么就在end结束迭代。它的类型也为整数。
l step:迭代的步长。
支持Java中的Map、List、Set、Iterator(迭代器)、Enumeration(枚举类型)、数组、用逗号定界的String(分割后的子字符串)、Result(SQL查询所获得的行)对List的取值
1.使用${list1[1]}获取值
2.使用jstl的<forEach>标签取值
<c:forEach items="${list}" var="item">
<c:out value="${item}"></c:out>
</c:forEach>
4、获得web开发常用对象
EL表达式语言中定义了11个隐含对象,使用这些隐含对象可以很方便地获取web开发中的一些常见对象,并读取这些对象的数据。
语法:${隐式对象名称}:获得对象的引用
|
序号 |
隐含对象名称 |
描 述 |
|
1 |
pageContext |
对应于JSP页面中的pageContext对象(注意:取的是pageContext对象。) |
|
2 |
pageScope |
代表page域中用于保存属性的Map对象 |
|
3 |
requestScope |
代表request域中用于保存属性的Map对象 |
|
4 |
sessionScope |
代表session域中用于保存属性的Map对象 |
|
5 |
applicationScope |
代表application域中用于保存属性的Map对象 |
|
6 |
param |
表示一个保存了所有请求参数的Map对象 |
|
7 |
paramValues |
表示一个保存了所有请求参数的Map对象,它对于某个请求参数,返回的是一个string[] |
|
8 |
header |
表示一个保存了所有http请求头字段的Map对象,注意:如果头里面有“-” ,例Accept-Encoding,则要header[“Accept-Encoding”] |
|
9 |
headerValues |
表示一个保存了所有http请求头字段的Map对象,它对于某个请求参数,返回的是一个string[]数组。注意:如果头里面有“-” ,例Accept-Encoding,则要headerValues[“Accept-Encoding”] |
|
10 |
cookie |
表示一个保存了所有cookie的Map对象 |
|
11 |
initParam |
表示一个保存了所有web应用初始化参数的map对象 |
格式化标签
JSTL格式化标签用来格式化并输出文本、日期、时间、数字。引用格式化标签库的语法如下
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
|
标签 |
描述 |
|
使用指定的格式或精度格式化数字 |
|
|
解析一个代表着数字,货币或百分比的字符串 |
|
|
使用指定的风格或模式格式化日期和时间 |
|
|
解析一个代表着日期或时间的字符串 |
|
|
绑定资源 |
|
|
指定地区 |
|
|
绑定资源 |
|
|
指定时区 |
|
|
指定时区 |
|
|
显示资源配置文件信息 |
|
|
设置request的字符编码 |
SQL标签
JSTL SQL标签库提供了与关系型数据库(Oracle,MySQL,SQL Server等等)进行交互的标签。引用SQL标签库的语法如下:
<%@ taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql" %>
|
标签 |
描述 |
|
指定数据源 |
|
|
运行SQL查询语句 |
|
|
运行SQL更新语句 |
|
|
将SQL语句中的参数设为指定值 |
|
|
将SQL语句中的日期参数设为指定的java.util.Date 对象值 |
|
|
在共享数据库连接中提供嵌套的数据库行为元素,将所有语句以一个事务的形式来运行 |
参考资料: http://www.runoob.com/jsp/jsp-tutorial.html
JSP基础解析的更多相关文章
- 解读JSP的解析过程
解读JSP的解析过程 互联网上,这方面的资料实在太少了,故把自己研究的一些结果公布出来. 首先,问大家几个问题,看大家能不能回答出来,或者在网上能不能找到答案: 1.page.include.tagl ...
- JavaWeb基础-Jsp基础语法
jsp基础语法 JSP的组成 静态内容.指令.表达式.小脚本.声明.注释 JSP的生命周期 用户发出index.jsp ,服务端判断是否是第一次请求,若是第一次请求,则tomcat中的JSP引擎中的文 ...
- Jsp基础语法(由简入杂)
JSP基础语法 一,JSP简介 Jsp是一个简化的Servlet设计,是在服务器端执行,他实现了再Java中使用HTML标签. Jsp是一种动态网页技术标准也是JAVAEE的标准 二,常见动态网站开发 ...
- Java学习-033-JavaWeb_002 -- 网页标记语言JSP基础知识
JSP 是 Sun 公司提倡的一门网页技术标准.在 HTML 文件中,加入 Java 代码就构成了 JSP 网页,当 Web 服务器访问 JSP 请求的时候,首先执行其中的 Java 程序源码,然后以 ...
- Servlet&jsp基础:第五部分
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- 解决JSP 不解析EL表达式
解决JSP 不解析EL表达式,jsp在使用EL表达式的时候发现它不被解析,而是直接以字符串的形式显示了出来,经过查阅资料和实践,终于得知了原因并找到了解决方案 原因是:在默认情况下,Servlet 2 ...
- JavaEE系列之(一)JSP基础知识详解
一.JSP基础语法 1.JSP简介 JSP(Java Server Pages),其根本是一个简化的Servlet设计,它实现了在Java中使用HTML标签.JSP是一种动态网页 ...
- JSP基础笔记
主要内容:1. JSP基础2. Cookie3. HttpSession ================================ JSP基础 1. jsp的作用: * Servlet: &g ...
- javaEE与JSP基础
JSP基础 1. jsp的作用: * Servlet: > 缺点:不适合设置html响应体,需要大量的response.getWriter().print("<html ...
随机推荐
- scala函数等号省略
例1: 此时没有写返回值,但是有等号,函数会自己推断返回值,此时的返回值是Int def add(x:Int, y:Int) = { x+y} 例2: 此时没有写返回值,也没有等号,无论函数内部有没有 ...
- nakadi-ui nakadi event broker 的可视化UI工具
nakadi 是一款很不错的基于fafka 开发的event broker ,我们只需要使用http 请求就可以调用kafka 方便的发布订阅功能 环境准备 docker-compose 文件 ver ...
- HDOJ 1297 Children’s Queue
版权声明:来自: 码代码的猿猿的AC之路 http://blog.csdn.net/ck_boss https://blog.csdn.net/u012797220/article/details/3 ...
- Python基础_私有变量访问限制
Python内置了一些特殊变量,以前后上下划线标注,同时我们自己要想定义一些变量,不想让外部访问,又该怎么做呢?更多内容请参考:Python学习指南 访问限制 在class内部,可以有属性和方法,而外 ...
- 常用gui软件使用技巧
xmind powerdesinger notepad++ firefox office ========================================= win10企业版安装 xm ...
- 编写一个函数 reverse_string(char * string)实现:将参数字符串中的字符反向排列 。(递归实现)
要求:不能使用C函数库中的字符串操作函数. 思路:在递归函数的调用时,先应该定义一个指针型char字符串.函数内部应先调用自己,在打印,这样才能保证字符串是从最后一个开始输出. #include< ...
- mydumper安装、原理介绍
一.安装 安装依赖包: yum install glib2-devel mysql-devel zlib-devel pcre-devel openssl-devel cmake 下载二进制包: ...
- NET设计模式 第二部分 结构性模式(12):享元模式(Flyweight Pattern)
享元模式(Flyweight Pattern) ——.NET设计模式系列之十三 Terrylee,2006年3月 摘要:面向对象的思想很好地解决了抽象性的问题,一般也不会出现性能上的问题.但是在某些情 ...
- 【转】jumpserver 堡垒机环境搭建(图文详解)
jumpserver 堡垒机环境搭建(图文详解) 摘要: Jumpserver 是一款由python编写开源的跳板机(堡垒机)系统,实现了跳板机应有的功能.基于ssh协议来管理,客户端无需安装ag ...
- ubuntu--Supervisor进程管理工具
安装,这个程序使用python写的 sudo apt-get install supervisor 配置一个你需要的配置文件 //进入 /etc/supervisor/conf.d文件目录,配置一个r ...