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 ...
随机推荐
- Apache 无法启动
本人是做前端开发的,对后台程序不太熟悉,也就以前学过一点.net.但现在都忘记的差不多了.最近在公司,经理给了我一个管理工具dedecms,我刚开始看的时候完全不懂这是什么东西,之前都没听说过(本人见 ...
- java写文件
randomAccessFile.close(); } e.printStack ...
- VQuery选择器
VQUery elements属性,储存选中的元素 参数 typeof的作用 字符串 class ID tagName 函数 事件绑定 对象 直接插入 $函数 绑定事件 click方法 显示隐藏,- ...
- MY_FIRSH_MODULE
模块描述 将30个字节的内存空间模仿成设备文件.每次读写不超过30个字节. 模块加载成功之后,需建立设备文件 mknod /dev/mydev c 231 0 模块代码 #include <li ...
- ubuntu14.04 server安装gnome-desktop
You can install the default Ubuntu desktop by executing the following: sudo apt-get install ubuntu-d ...
- js apply 和 call
http://www.cnblogs.com/KeenLeung/archive/2012/11/19/2778229.html
- dubbo main方法启动
public static void main(String[] args) { com.alibaba.dubbo.container.Main.main(args); } 以上就可以简单本地启动了
- Appium+Robotframework实现Android应用的自动化测试-6:一个简单的例子
万事具备,只欠编码! 下面看一个简单的示例,这个示例验证Android手机自带的通讯录的添加联系人的操作是否成功.这个例子是Appium官网自带的示例,有兴趣的同学也可以自己下载来研究和学习,下载地址 ...
- Bootstrap modal垂直居中
Bootstrap modal垂直居中 在网上看到有Bootstrap2的Modal dialog垂直居中问题解决方法,这种方法自己试了一下,并不能完全居中,并且窗口的大小不一样的话,每次显示的m ...
- Effective C++ -----条款52:写了placement new 也要写 placement delete
当你写一个placement operator new ,请确定也写出了对应的placement operator delete.如果没有这样做,你的程序可能会发生隐微而时断时续的内存泄漏. 当你声明 ...