自己总结的C标签 可以做为标签字典使用
从给定的文件信息来看,这是一段包含了JSP页面代码和Struts框架下的C标签使用的示例。C标签是JavaServer Pages Standard Tag Library(JSTL)的一部分,用于简化JSP页面中的Java代码,提高页面的可读性和可维护性。下面将详细解释文件中涉及的关键知识点。 ### C标签简介 C标签是JSTL的核心标签库,它提供了处理条件逻辑、迭代、URL操作、国际化等常用功能的一系列标签,使得开发者在JSP页面中可以更简洁地进行逻辑控制和数据操作。 ### 标签库指令 在JSP页面顶部可以看到`<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>`这条指令,这是JSP的标签库指令,用于指定要使用的标签库的URI以及在JSP页面中调用该库时的前缀。在这个例子中,`core`是JSTL的核心标签库,`c`是调用这些标签时的前缀。 ### 数据结构遍历:`<c:forEach>` `<c:forEach>`是JSTL中最常用的标签之一,用于遍历集合或数组。在这段代码中,`<c:forEach>`被用来遍历一个ArrayList、一个HashMap和一个Bean的列表。 #### ArrayList遍历示例: ```jsp <c:forEach var="li" items="${li}"> ${li}<br><br> </c:forEach> ``` 这里`${li}`是从JSP页面传入的一个ArrayList对象,`var`属性定义了一个循环变量`li`,在每次迭代时,这个变量会被赋值为集合中的下一个元素。 #### Map遍历示例: ```jsp <c:forEach var="li" items="${map}"> ${li.key}${li.value}<br><br> </c:forEach> ``` 当遍历Map时,`items`属性指向的是Map对象,但是需要注意,由于JSP页面中无法直接访问Map的key-value对,因此这里实际上是在遍历Map的entrySet(),而循环变量`li`是一个Map.Entry对象,通过`li.key`和`li.value`可以访问到对应的键值对。 #### Bean List遍历示例: ```jsp <c:forEach var="li" items="${nlist}"> ${li.id}${li.name}<br><br> </c:forEach> ``` 这里的`nlist`是一个包含多个Bean的列表,每个Bean可能有多个属性,如id、name等,可以通过`li.id`、`li.name`等方式访问。 ### 分隔字符串遍历:`<c:forTokens>` 除了遍历集合和数组,`<c:forTokens>`标签可以用于根据分隔符来分割字符串并遍历其中的token。 ```jsp <c:forTokens var="li" items="${movie}" delims=","> ${li}<br><br> </c:forTokens> ``` 这里`items`属性指向的是一个字符串,`delims`属性指定了分隔符(逗号),`var`属性定义了循环变量`li`,用于存储每次分割出的token。 ### 条件判断:`<c:if>` `<c:if>`标签用于在JSP页面中执行简单的条件判断。 ```jsp <c:forEach var="li" items="${nlist}" varStatus="ls"> <c:if test="${ls.first}"> ${li.id}${li.name}${li.addtime}<br><br> </c:if> ${li.id}${li.name}<br><br> </c:forEach> ``` 在遍历`nlist`的过程中,`varStatus="ls"`会为每次迭代提供额外的状态信息,例如`ls.first`表示当前项是否是列表的第一项。结合`<c:if>`标签,可以根据状态信息做出不同的显示。 通过以上分析,我们可以看到JSP和C标签的结合使用,能够极大地提升Web开发的效率和代码的整洁度。理解并熟练掌握C标签的使用,对于从事基于Java的Web开发工作而言是非常重要的。
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ page language="java" import="org.springframework.core.io.Resource"%>
<%@ page language="java" import="org.springframework.core.io.ClassPathResource"%>
<%@ page language="java" import="com.zb.entity.NewObj,com.zb.dao.NewObjDAO"%>
<%@ page language="java" import="org.springframework.beans.factory.xml.XmlBeanFactory"%>
<%@ page language="java" import="org.springframework.core.io.FileSystemResource"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>标签测试</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
</head>
<body>
<%
//测试数组
List li=new ArrayList();
li.add("123");
li.add("234");
li.add("456");
request.setAttribute("li",li);
//测试map
HashMap map=new HashMap();
map.put("1","111");
map.put("2","222");
map.put("3","333");
request.setAttribute("map",map);
- 粉丝: 0
- 资源: 35
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助