zoukankan      html  css  js  c++  java
  • EL表达式与JSTL标签库(二)

    1、JSTL标签库

    标签库 作用 URI 前缀
    核心 包含Web应用的常见工作,如循环、输入输出等 http://java.sun.com/jsp/jstl/core c
    国际化 语言区域、消息、数字和日期格式化 http://java.sun.com/jsp/jstl/fmt fmt

    2、Core标签库

      核心标签库分四类:

    • 多用途核心标签。<c:out>、<c:set>、<c:remove>、<c:catch>
    • 条件控制标签。<c:if>、<c:choose>、<c:when>、<c:otherwise>
    • 循环控制标签。<c:forEach>、<c:forTokens>
    • URL相关标签。<c:import>、<c:url>、<c:redirect>、<c:param>

    3、<c:if>

    属性 描述
    test 需要判断条件
    var 保存判断结果的变量名,该变量的值为true或false
    scope 变量的作用域,默认为page

    4、<c:forEach>

    属性 描述
    begin 开始条件,如果指定items,循环将从begin指定的索引处开始。
    end 结束索引,如果指定items,循环将从end指定索引处结束。
    step 循环的步长,默认为1
    items 遍历的集合对象
    var 循环集合元中的素的变量名
    varStatus 保存循环状态的变量

    5、简单应用

    jsp页面对标签库的引用需要提供jstl的jar包,jar包官方网页版说明如下图示,也可以参考帖子https://blog.csdn.net/qq_32115439/article/details/54685786

     1 package com.alphajuns.domain;
     2 
     3 public class Book {
     4 
     5     private Integer id;
     6     private String name;
     7     private String author;
     8     
     9     public Book() {
    10         super();
    11     }
    12     
    13     public Book(Integer id, String name, String author) {
    14         super();
    15         this.id = id;
    16         this.name = name;
    17         this.author = author;
    18     }
    19     
    20     public Integer getId() {
    21         return id;
    22     }
    23     public void setId(Integer id) {
    24         this.id = id;
    25     }
    26     public String getName() {
    27         return name;
    28     }
    29     public void setName(String name) {
    30         this.name = name;
    31     }
    32     public String getAuthor() {
    33         return author;
    34     }
    35     public void setAuthor(String author) {
    36         this.author = author;
    37     }
    38     
    39 }
     1 package com.alphajuns.controller;
     2 
     3 import java.util.ArrayList;
     4 import java.util.HashMap;
     5 import java.util.List;
     6 import java.util.Map;
     7 
     8 import org.springframework.stereotype.Controller;
     9 import org.springframework.ui.Model;
    10 import org.springframework.web.bind.annotation.RequestMapping;
    11 import org.springframework.web.bind.annotation.RequestMethod;
    12 
    13 import com.alphajuns.domain.Book;
    14 
    15 @Controller
    16 public class TestController {
    17 
    18     @RequestMapping(value="/forEachTest", method=RequestMethod.GET)
    19     public String registerForm(Model model) {
    20         // 页面用于遍历的List集合
    21         List<String> strList = new ArrayList<String>();
    22         strList.add("JavaEE");
    23         strList.add("Mybatis");
    24         strList.add("Spring");
    25         // 页面用于遍历的List集合
    26         List<Book> bookList = new ArrayList<Book>();
    27         bookList.add(new Book(1, "Spring实战", "Craig Walls"));
    28         bookList.add(new Book(2, "疯狂Java讲义", "李刚"));
    29         bookList.add(new Book(3, "通信原理", "樊昌信"));
    30         bookList.add(new Book(4, "计算机网络", "谢希仁"));
    31         bookList.add(new Book(5, "现代交换原理", "吕瑞宏"));
    32         // 定义map
    33         Map<Integer, Book> bookMap = new HashMap<Integer, Book>();
    34         bookMap.put(1, new Book(1, "C语言程序设计", "谭浩强"));
    35         bookMap.put(2, new Book(2, "数据结构", "严蔚敏"));
    36         bookMap.put(3, new Book(3, "模拟电子技术", "童诗白"));
    37         model.addAttribute("strList", strList);
    38         model.addAttribute("bookList", bookList);
    39         model.addAttribute("bookMap", bookMap);
    40         return "forEachTest";
    41     }
    42     
    43 }
     1 <%@ page language="java" contentType="text/html; charset=UTF-8"
     2     pageEncoding="UTF-8"%>
     3 <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
     4 <!DOCTYPE html>
     5 <html>
     6 <head>
     7 <meta charset="UTF-8">
     8 <title>Insert title here</title>
     9 </head>
    10 <body>
    11     <font color="red">普通循环</font>
    12     <table width="400" border="1px" cellspacing="0" cellpadding="0">
    13         <tr>
    14             <td>index</td><td>count</td><td>isFirst</td><td>isLast</td>
    15         </tr>
    16         <c:forEach begin="1" end="5" step="2" varStatus="vs">
    17             <tr>
    18                 <td>${vs.index }</td>
    19                 <td>${vs.count }</td>
    20                 <td>${vs.first }</td>
    21                 <td>${vs.last }</td>
    22             </tr>
    23         </c:forEach>
    24     </table>
    25     <br>
    26     
    27     <font color="red">遍历元素为String的List集合</font>
    28     <table width="400" border="1px" cellspacing="0" cellpadding="0">
    29         <tr>
    30             <td>编号</td><td>书名</td><td>作者</td>
    31         </tr>
    32         <c:forEach items="${requestScope.bookList }" var="book">
    33             <tr>
    34                 <td>${book.id }</td>
    35                 <td>${book.name }</td>
    36                 <td>${book.author }</td>
    37             </tr>
    38         </c:forEach>
    39     </table>
    40     <br>
    41     
    42     <font color="red">遍历Map集合</font>
    43     <table width="400" border="1px" cellspacing="0" cellpadding="0">
    44         <tr>
    45             <td>Key</td><td>编号</td><td>书名</td><td>作者</td>
    46         </tr>
    47         <c:forEach items="${requestScope.bookMap }" var="entry">
    48             <tr>
    49                 <td>${entry.key }</td>
    50                 <td>${entry.value.id }</td>
    51                 <td>${entry.value.name }</td>
    52                 <td>${entry.value.author }</td>
    53             </tr>
    54         </c:forEach>
    55     </table>
    56 </body>
    57 </html>

     

  • 相关阅读:
    在C#代码中应用Log4Net(二)典型的使用方式
    在C#代码中应用Log4Net(一)简单使用Log4Net
    Windows Azure Active Directory (2) Windows Azure AD基础
    Windows Azure Virtual Network (6) 设置Azure Virtual Machine固定公网IP (Virtual IP Address, VIP) (1)
    Windows Azure Active Directory (1) 前言
    Azure China (6) SAP 应用在华登陆 Windows Azure 公有云
    Microsoft Azure News(3) Azure新的基本实例上线 (Basic Virtual Machine)
    Microsoft Azure News(2) 在Microsoft Azure上运行SAP应用程序
    Microsoft Azure News(1) 新的数据中心Japan East, Japan West and Brazil South
    Windows Azure HandBook (2) Azure China提供的服务
  • 原文地址:https://www.cnblogs.com/alphajuns/p/11062050.html
Copyright © 2011-2022 走看看