JavaWeb学习之JSP常用标签、EL表达式的运算符、JSTL标签库(6)
1、JSP常用标签
* 只要支持JSP文件,常用标签有可以直接使用
* 格式: jsp:xxxx
* jsp:forward ,完成jsp页面的转发
* page属性:转发的地址
<% request.setCharacterEncoding("UTF-8"); %>
<jsp:forward page="/index.jsp">
<jsp:param value="张三" name="userName"/>
</jsp:forward>
浏览这个页面会跳转到index.jsp页面,浏览器地址不变
${param.userName}
* 运行原理
JSP引擎,处理JSP文件,自己解析特定的标签,然后将其编译成java代码
jsp:forward -- application.getRequestDispatcher("/forward.jsp");
* 注意:在JSP页面中可以不用斜杠开头
* String path = getAbsolutePathRelativeToContext(relativeUrlPath);自己单独处理,如果不是/开头,自动添加 * jsp:include ,动态包含,在执行当前servlet时才进行文件的合并
* page属性:包含的页面
* 执行原理
* org.apache.jasper.runtime.JspRuntimeLibrary.include
* request.getRequestDispatcher.include
* jsp:param,设置参数,与jsp:forward或jsp:include一起使用
* name属性:指定参数的名称
* value属性:指定参数的值 * jsp:useBean标签:创建class指定的类,并将此类添加到作用域中
* class属性:指定类的完整路径名
* id属性:确定对象的实例对象
<jsp:useBean id="cal" class="cn.itcast.domain.Calculator"></jsp:useBean> * jsp:setProperty标签:给指定的Javabean对象设置属性值
* name属性:已有的JavaBean在web域中的对象
* property属性:确定需要使用的Javabean的属性
* value属性:确定设置的具体的内容
* param属性:获得指定参数的内容
* 注意:当内容是null时,将不会赋值
<jsp:setProperty property="*" name="cal" param=""/>获取所有cal值
param为获取某个参数的值,比如获取<input type="text" name="firstNum"/>,可以这样写<jsp:setProperty property="*" name="cal" param="firstNum"/>
如果param和property的值相同,可以省略不写
<jsp:setProperty property="firstNum" name="cal" value="1"/>给cal对象的firstNum属性设置值为1 2、EL表达式的运算符
* 执行运算
* .
* 获得当前对象的属性的值
* []
* 书写数字及获得下标所对应的值
* 书写属性名称,获得相应的值
* 转义字符:
* \
* 使EL表达式失效
* 算术运算符、逻辑运算符、关系运算符
* empty 三目运算符
${empty user}返回true或false 3.JSTL标签库
1、使用标签库的流程
* 导包(Myeclipse自带)
* 在当前的JSP页面头部声明引用
* <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
* taglib指令:确定所使用的标签库
* uri:确定使用的标签库,具体的名称
* prefix:为当前标签库起一个别名
* 使用
* <prefix:xxx或者<别名:xxx
2、域对象操作
* set:给web域设置值的
var 属性:属性的名称
value属性:属性的值
scope属性:确定作用域
* page
* request
* session
* application
<c:set var="gf" value="fengjie" scope="page"></c:set>
<c:set var="gf" value="fengjie" scope="request"></c:set>
<c:set var="gf" value="fengjie" scope="session"></c:set>
<c:set var="gf" value="fengjie" scope="application"></c:set>
\${gf} -- ${requestScope.gf}<br/>
\${gf} -- ${requestScope.gf}<br/>
\${gf} -- ${sessionScope.gf}<br/>
\${gf} -- ${applicationScope.gf}<br/>
* remove:删除指定名称的web域的值
* var属性:确定名称
* 注意:删除所有作用域的内容
<c:remove var="gf"/>
* out:将内容输出
* value:指定内容
* 注意:可以使用EL表达式
* escapeXml:是否转义html规定的字符
* 默认值true,转义
* default:当前输出内容为空时,显示默认值
<c:set var="gf" value="<a href='#'>fengjieout</a>" scope="page"></c:set>
<c:out value="${gf2}" default="没有值"></c:out> 3、数据操作
* if标签:逻辑判断
* test属性:逻辑值true|false
* 支持EL表达式
<c:set var="user" value="xx"></c:set>
<c:if test="${empty user}">
user对象是null <br/>
</c:if>
* choose标签:确定一组可以进行选择的显示结果
* 必须放置when标签
* 子标签
* when标签:逻辑判断
* test属性:填写逻辑值
* otherwise标签:处理没有处理项,默认项
<c:choose>
<c:when test="${empty user}">
when:user null
</c:when>
<c:when test="${!empty user2}">
when:user not null
</c:when>
<c:otherwise>
没有任何处理项
</c:otherwise>
</c:choose>
* forEach标签:进行迭代,每一条信息将显示在标签体
* items属性:确定遍历的对象
* 支持EL表达式
或
* begin属性:
* end属性:
* 共有
* var属性:确定遍历变量
* step属性:步长 i+=2 i++ -- i+=1
<c:forEach items="${headerValues}" var="hvs">
\${hvs} -- ${hvs.key}:
<c:forEach items="${hvs.value}" var="h">
${h} *****
</c:forEach>
<br/>
</c:forEach>
*url标签:生成当前响应的相对于web站点的完成路径
* value属性:指定的页面的位置
* 注意:内容如果/开头,相对于当前web项目
<c:url var="demoUrl" value="/demo1/calculator.jsp"></c:url>
JavaWeb学习之JSP常用标签、EL表达式的运算符、JSTL标签库(6)的更多相关文章
- JavaWeb学习笔记(八)—— EL表达式
一.EL表达式概述 在JSP开发中,为了获取Servlet域对象中存储的数据,经常需要书写很多Java代码,这样的做法会使JSP页面混乱,难以维护.为此,在JSP2.0规范中提供了EL表达式.EL全名 ...
- javaweb学习总结(二十九)——EL表达式
一.EL表达式简介 EL 全名为Expression Language.EL主要作用: 1.获取数据 EL表达式主要用于替换JSP页面中的脚本表达式,以从各种类型的web域 中检索java对象.获取数 ...
- javaWeb学习总结(10)- EL表达式
一.EL表达式简介 EL 全名为Expression Language.EL主要作用: 1.获取数据 EL表达式主要用于替换JSP页面中的脚本表达式,以从各种类型的web域 中检索java对象.获取数 ...
- [转]javaweb学习总结(二十九)——EL表达式
原文地址:https://www.cnblogs.com/xdp-gacl/p/3938361.html 一.EL表达式简介 EL 全名为Expression Language.EL主要作用: 1.获 ...
- JavaWeb学习总结(十七)EL表达式
语法格式: ${expression} 1. 表达式支持算术运算符合逻辑运算符 <%@ page language="java" contentType="text ...
- JavaWeb(七)Cookie,EL表达式,标准标签库
Cookie Cookie概述 Cookie译为小型文本文件或小甜饼,Web应用程序利用Cookie在客户端缓存服务器端文件.Cookie是以键值对形式存储在客户端主机硬盘中,由服务器端发送给客户端, ...
- JavaWeb -- Jsp中的 EL表达式
lEL 全名为Expression Language.EL主要作用: l获取数据: •EL表达式主要用于替换JSP页面中的脚本表达式,以从各种类型的web域 中检索java对象.获取数据.(某个web ...
- jsp页面使用EL表达式 使用Jstl标签库中的标签,需要引入jstl.jar和standard.jar
spring boot 中使用jstl 首先在pom中加入 <dependency> <groupId>jstl</groupId> <artifactId& ...
- jsp不解析el表达式,不识别jstl标签,找不到http://java.sun.com/jsp/jstl/core
问题描述: jsp页面中el表达式,例如:${pageContext.request.contextPath},原样呈现,未被解析. 解决方案: 为jsp页添加page指令如下: <%@ pag ...
随机推荐
- r-cnn学习(二)
faster r-cnn 1.问题 在fast r-cnn中,proposals已经成为速度提高的瓶颈.在本文中,使用深度网络来计算proposals, 使得与检测网络的计算量相比,proposals ...
- log4j 配置
给java项目添加log4j日志: 1.下载log4j jar包,放入lib目录, 导入项目中 2.创建log4j.properties 文件 目录 Src 3.在需要使用输出的类中使用 priva ...
- linux回收站设计
linux回收站设计 在windows下有一个很好的东西,那就是回收站,虽然有很多人批评它.linux不是没有回收站,很多桌面环境都可以看到是有回收站的. 这里是讨论如何设计一个回收站,而不是有没有的 ...
- 用Kibana和logstash快速搭建实时日志查询、收集与分析系统
Logstash是一个完全开源的工具,他可以对你的日志进行收集.分析,并将其存储供以后使用(如,搜索),您可以使用它.说到搜索,logstash带有一个web界面,搜索和展示所有日志. kibana ...
- Nunit-Writing Tests
Nunit 测试可以被任意支持attributes的.net语言使用 Attributes被用于去标识测试类和测试方法,然后通过不同的方式修改他们的行为 Assertions针对一个或多个约束,测试一 ...
- Routing in ASP.NET Web API和配置文件的设定读取
Routing Tables In ASP.NET Web API, a controller is a class that handles HTTP requests. The public me ...
- C++构造函数初始化顺序
[本文链接] http://www.cnblogs.com/hellogiser/p/constructor-order.html 1.构造函数.析构函数与拷贝构造函数介绍 构造函数 构造函数不能有返 ...
- iOS AES加密解密实现方法
使用方法 先导入头文件 #import "NSData+AES.h" //AES测试 //用来密钥 NSString *key = "; //用来发送的原始数据 NSSt ...
- The certificate used to sign "XXX" has either expired or has been revoked
在Xcode真机调试开发过程中,无论是使用个人证书或者是企业证书,经常会遇到这样的问题:The certificate used to sign "XXX" has either ...
- cocos2d-x 第一篇 环境搭建
官网:http://www.cocos2d-x.org/ 下载一个稳定版的cocos2d-x (网址:http://download.cocos2d-x.org/ Github Repository ...