JSP标准标签库:JSTL
2018-06-18 03:26:05来源:未知 阅读 ()
JSTL(JSP Standard Tag Library),JSP标准标签库,可以嵌入在jsp页面中使用标签的形式完成业务逻辑等功能。
jstl出现的目的同el一样也是要代替jsp页面中的脚本代码。
JSTL标准标准标签库有5个子库,但随着发展,目前常使用的是他的核心库
1.JSTL下载与导入
JSTL下载:
从Apache的网站下载JSTL的JAR包。进入
“http://archive.apache.org/dist/jakarta/taglibs/standard/binaries/”网址下载 JSTL的安装包。
jakarta-taglibs-standard-1.1.2.zip,然后将下载好的JSTL安装包 进行解压,此时,在lib目录下可以看到两个JAR文件,分别为jstl.jar和standard.jar。
其中,jstl.jar文件包含JSTL规范中定义的接口和相关类,standard.jar文件包含用于实现JSTL的.class文件以及JSTL中5个标签库描述符文件(TLD)
将两个jar包导入我们工程的lib中
jsp文件导入方式:
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
2.JSTL核心库的常用标签
if标签示例:
<% request.setAttribute("count", 10); %> <!-- jstl标签经常会和el配合使用 --> <!-- test代表的返回boolean的表达式 --> <c:if test="${count==9 }"> xxxx </c:if>
for循环示例:
<!-- forEach模拟 for(int i=0;i<=5;i++){ System.out.println(i) } --> <c:forEach begin="0" end="5" var="i"> ${i }<br/> </c:forEach>
增强for循环:
<!-- 模拟增强for productList---List<Product> for(Product product : productList){ System.out.println(product.getPname()); } --> <!-- items:一个集合或数组 var:代表集合中的某一个元素--> <c:forEach items="${productList }" var="pro"> ${pro.pname } </c:forEach>
if标签的简单应用:
根据用户是否登录而显示不同的信息:
<% //模拟用户已经登录成功 User user = new User(); user.setId(100); user.setName("张三"); user.setPassword("123"); session.setAttribute("user", user); %>
<!-- 用户没有登录 --> <c:if test="${empty user}"> <li><a href="login.jsp">登录</a></li> <li><a href="register.jsp">注册</a></li> </c:if> <!-- 用户已经登录 --> <c:if test="${!empty user}"> <li>${user.name }</li> <li><a href="#">退出</a></li> </c:if>
for循环(forEach)标签示例:
<% //模拟List<String> strList List<String> strList = new ArrayList<String>(); strList.add("qwer"); strList.add("asdf"); strList.add("zxcv"); strList.add("1234"); request.setAttribute("strList", strList); //遍历List<User>的值 List<User> userList = new ArrayList<User>(); User user1 = new User(); user1.setId(2); user1.setName("lisi"); user1.setPassword("123"); userList.add(user1); User user2 = new User(); user2.setId(3); user2.setName("wangwu"); user2.setPassword("123"); userList.add(user2); application.setAttribute("userList", userList); //遍历Map<String,String>的值 Map<String,String> strMap = new HashMap<String,String>(); strMap.put("name", "lucy"); strMap.put("age", "18"); strMap.put("addr", "China"); strMap.put("email", "lucy@qq.cn"); session.setAttribute("strMap", strMap); //遍历Map<String,User>的值 Map<String,User> userMap = new HashMap<String,User>(); userMap.put("user1", user1); userMap.put("user2", user2); request.setAttribute("userMap", userMap); %> <h1>取出strList的数据</h1> <c:forEach items="${strList }" var="str"> ${str }<br/> </c:forEach> <h1>取出userList的数据</h1> <c:forEach items="${userList}" var="user"> user的name:${user.name }------user的password:${user.password }<br/> </c:forEach> <h1>取出strMap的数据</h1> <c:forEach items="${strMap }" var="entry"> ${entry.key }====${entry.value }<br/> </c:forEach> <h1>取出userMap的数据</h1> <c:forEach items="${userMap }" var="entry"> ${entry.key }:${entry.value.name }--${entry.value.password }<br/> </c:forEach>
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:java了解
下一篇:合并table中值相同的列
- idea为代码添加标签清除标签 2020-06-11
- JSP+SSH+Mysql+DBCP实现的租车系统 2020-06-09
- JSP+Structs+JDBC+mysql实现的诚欣电子商城 2020-06-08
- JSP九大内置对象 2020-06-07
- 通俗理解spring源码(六)—— 默认标签(import、alias、be 2020-06-07
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash