jsp中核心标签使用
<%@ page language="java" import="java.util.*, java.lang.*" pageEncoding="UTF-8"%>
<%@ page import="entity.Student" %>
<%--导入核心标签库 --%>
<%--
uri: 表示需要导入的标签库的uri名称。每个标签库都会有一个tld后缀名的标签声明文件,在tld文件中都有唯一的uri的名称。这个uri的名称就是当前标签库的名称。
prefix: 使用标签库的前缀,通用和tld文件的short-name名称相同
--%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>核心标签库</title>
</head>
<body>
<%
String name = "mzy";
pageContext.setAttribute("name", name);
%>
<%--
(1) <c:set></c:set>给域对象赋值
var: 数据的名称
value: 保存的数值
scope:保存到哪个域
page -> page域
request -> request域
session -> session域
application -> application域
--%>
<c:set var="name" value="jack" scope="request"/>
<%--
(2) <c:out/> 获取域对象的数据
value:代表获取域中的某个名称内容。
如果数据在域中,必须使用EL表达式去获取
default:默认值。当前需要获取的内容为null,
那么使用默认值代替。
escapeXml:
默认情况为true,out标签会把输入的内容进行转义。
(及里面有特殊字符进行转义输出)
如果不需要转义,则设置为false即可!
--%>
<c:out value="${name }"></c:out><br> ${name }
<c:out value="${pageScope.name }"></c:out><br>
<c:out value="${requestScope.name }" default="<h3>标题</h3>" escapeXml="false"></c:out><br>
<hr/>
<%--
(3) <c:if/>:单条件判断
test:
条件表达式。返回true的时候,就会执行if标签体内容,
否则,不执行。
--%>
<c:if test="${10>8 }">
<input type="submit" value="提交"/>
</c:if>
<%--
(4)
<c:choose/>+<c:when/>+<c:otherwise/>
多条件判断
登录之后,一定会把数据存放到session域,user名称
模拟登录:
session.setAttribute("user", user);
--%>
<%-- 模拟登录 --%>
<c:set var="user" value="mzy" scope="session"></c:set>
<c:choose>
<c:when test="${!empty sessionScope.user }">
欢迎回来,您的用户名是:${sessionScope.user }
<a href="">【退出登录】</a>
</c:when>
<c:otherwise>
请先<a href="www.baidu.com">注册</a>
或<a href="">登录</a>
</c:otherwise>
</c:choose>
<%--
(5)
<c:forEach/> 用于迭代或循环
begin:从哪个元素位置开始遍历,从0开始
end:到哪个元素位置
step:增加步长。默认step为 1
items:需要遍历的数据。(数组、List集合 或者 Map集合)
如果是获取域数据,那么使用EL表达式获取
var:每个元素名称
varStatus:当前状态对象。该对象封装当前元素状态信息。
例如:count属性:表示当前遍历的是哪个元素,从1开始的
--%>
<%
List<Student> list = new ArrayList<Student>();
list.add(new Student("aaa", "111111"));
list.add(new Student("bbb", "222222"));
list.add(new Student("ccc", "333333"));
pageContext.setAttribute("list", list);
Map<String,Student> map = new HashMap<String,Student>();
map.put("001", new Student("aaa", "111111"));
map.put("002", new Student("bbb", "222222"));
map.put("003", new Student("ccc", "333333"));
pageContext.setAttribute("map",map);
%>
<hr>
List集合:<br>
<c:forEach items="${list }" var="stu" varStatus="varSta">
序号:${varSta.count } -
姓名:${stu.name } -
密码:${stu.id }
<br/>
</c:forEach>
<hr>
Map集合:<br>
<%--
注意:
forEach标签遍历Map集合时,把每个Map的对象
使用Entry封装:
Entry封装键对象和值对象,通过getKey()
获取键对象,通过getValue()获取值对象
--%>
<c:forEach items="${map }" var="entry">
编号:${entry.key } -
姓名:${entry.value.name } -
学号:${entry.value.id }<br/>
</c:forEach>
<%--
(6) <c:forTokens> 遍历特殊字符串
items:需要遍历的字符串
delims:指定分割符号
var:每个内容的名称
--%>
<%-- 不写scope默认的就是pageScope --%>
<c:set var="str" value="java-net-php-平面设计"></c:set>
<%
String str = (String)pageContext.getAttribute("str");
String[] strs = str.split("-");
for(int i=0; i<strs.length; i++) {
// out.write(strs[i]+" ");
}
%>
<c:forTokens items="${str }" delims="-" var="s">
${s }
</c:forTokens>
<%--
(7) <c:redirect/> 重定向标签
--%>
<%
// response.sendRedirect(request.getContextPath()+"/guess.jsp");
%>
<%-- 注意:此标签的重定向是在站内跳转,与我们熟知的重定向服务器行为不同 --%>
<c:redirect url="/guess.jsp"></c:redirect>
</body>
</html>
jsp中核心标签使用的更多相关文章
- [置顶] jsp中c标签的使用
jsp中c标签的使用 核心标签库 它是JSTL中的核心库,为日常任务提供通用支持,如显示和设置变量.重复使用一组项目.测试条件和其他操作(如导入和重定向Web内容).Core标签按功能可分为4种类型: ...
- jsp中c标签的使用
jsp中c标签的使用 核心标签库 它是JSTL中的核心库,为日常任务提供通用支持,如显示和设置变量.重复使用一组项目.测试条件和其他操作(如导入和重定向Web内容).Core标签按功能可分为4种类型: ...
- JSP内置标签 JSP中JavaBean标签 JSP开发模式 EL和JSTL快速入门
2 JSP内置标签(美化+业务逻辑) 1)为了取代<%%>脚本形式,使用JSP标签/JSP动作,目的:与JSP页面的美化,即JSP面页都是由标签组成,不再有其它的内容 2)JSP内 ...
- 关于jsp中jstl-core标签循环遍历的使用
JSP标准标签库(JSTL)是一个JSP标签集合,它封装了JSP应用的通用核心功能. JSTL支持通用的.结构化的任务,比如迭代,条件判断,XML文档操作,国际化标签,SQL标签. 除了这些,它还提供 ...
- jsp中jstl标签的类似 if - else 语句 的语法
在jsp中引入jstl的标签库和函数库 <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c&q ...
- JSP中<img>标签引用本地图片
问题描述: jsp页面中<img>标签如何读取本地文件夹中的图片. 问题起因: 由于上传图片至本地文件夹中,图片路径为: D:/upload/file/image/img.jpg 所以将这 ...
- 转载:jsp中jstl标签的类似 if - else 语句 的语法
原文链接:http://www.cnblogs.com/wanggd/archive/2013/05/27/3101788.html 在jsp中引入jstl的标签库和函数库 <%@ taglib ...
- jsp中<!DOCTYPE>标签
今天写代码时遇到一个问题,定义了如下一个样式: .c_c1:hover td { background-color: #edf5ce;} <tr class="c_c1"&g ...
- jsp中的标签使用
jsp中的变量作用域 表示变量的作用域,一共4种.pageScope: 表示变量只能在本页面使用.requestScope:表示变量能在本次请求中使用.sessionScope:表示变量能在本次会话 ...
随机推荐
- ROS轮椅
- ACM金牌选手讲解LeetCode算法《栈和队列的高级应用》
大家好,我是编程熊,双非逆袭选手,字节跳动.旷视科技前员工,ACM金牌,保研985,<ACM金牌选手讲解LeetCode算法系列>作者. 上一篇文章讲解了<线性表>中的数组.链 ...
- 在Springboot + Mybaitis-plus 项目中利用Jackson实现json对java多态的(反)序列化
Jackson允许配置多态类型处理,当JSON面对的转换对象是一个接口.抽象类或者一个基类的时候,可以通过一定配置实现JSON的转换.在实际项目中,Controller层接收入参以及在Dao层将对象以 ...
- Qt+MPlayer音乐播放器开发笔记(一):ubuntu上编译MPlayer以及Demo演示
前言 在ubuntu上实现MPlayer播放器播放音乐. Demo Mplayer MPlayer是一款开源多媒体播放器,以GNU通用公共许可证发布.此款软件 ...
- 如何使用Scala的ClassTag
Scala官方文档中对于ClassTag的定义如下: ClassTag[T]保存着在运行时被JVM擦除的类型T的信息.当我们在运行时想获得被实例化的Array的类型信息的时候,这个特性会比较有用. 下 ...
- java中的集合类学习(三)
JAVA中有许多的集合,常用的有List,Set,Queue,Map. 1.其中List,Set,Queue都是Collection(集合),其每个元素都是单独的一个对象,如List<Strin ...
- canvas点阵函数波动,类似飘带或水波
canvas动画利用函数波动特点制作水波动画 <canvas id="myCanvas" width="500" height="400&quo ...
- LinkedHashMap 与 LRUcache
LRU 缓存介绍 我们平时总会有一个电话本记录所有朋友的电话,但是,如果有朋友经常联系,那些朋友的电话号码不用翻电话本我们也能记住,但是,如果长时间没有联系了,要再次联系那位朋友的时候,我们又不得不求 ...
- Apache Unomi 远程表达式代码执行漏洞(CVE-2020-13942)
影响版本: Apache Unomi < 1.5.2
- centos7网卡配置文件
HWADDR=00:0c:29:a7:8e:ee TYPE=Ethernet BOOTPROTO=staticDEFROUTE=yes PEERROUTES=yesPEERROUTES=yes IPV ...