javaEE---JSTL代码示例

2.jsp

<body>
	<%
		//创建集合
		List<User> users = new ArrayList<User>();
		User user1 = new User(1, "令狐冲", "男");
		User user2 = new User(2, "岳不群", "男");
		User user3 = new User(3, "岳灵珊", "女");
		User user4 = new User(4, "左冷禅", "男");
		User user5 = new User(5, "东风不败", "女");
		users.add(user1);
		users.add(user2);
		users.add(user3);
		users.add(user4);
		users.add(user5);
		//把集合存到request域中
		request.setAttribute("userList", users);

		String[] citys = new String[] { "武汉", "上海", "天津", "长沙" };
		//把数组存到request域中
		request.setAttribute("citys", citys);
	%>
	<!-- 
       forEach标签的两个必需属性:
         1.var:设定一个变量名,用该变量存储每次从集合中遍历出来的元素
         2.items:要遍历的集合,从作用域中获取
         jsp引擎会将每次遍历出来的元素存储到page域对象中,调用pageContext.setAttribute(key,  元素);
         存储元素的key就是var,值就是当前遍历出来的元素,以下的遍历,每次都执行pageContext.setAttribute("user",User对象);
        forEach标签的可选属性:  
         1.varStatus:设定一个变量名,该变量存储每次从集合中遍历出的元素的状态信息,该状态信息就是包装了元素的状态的对象,jsp引擎也将它存到作用域对象中,
         状态对象有几个属性:index(当前循环的索引,从0开始)count(循环的次数,从1开始),first(是否为第1个位置),last(是否为最后一个位置)
         2.begin和end:分别指定遍历的开始位置和结束的位置,如果有begin,没有end,表示从begin位置开始遍历,一直到最后
         3.step:每次增长/减少的量,默认值是1,表示索引每次增加1
         
     -->
       <h2>遍历集合</h2>
	<table width="50%" border="1" cellspacing="0" cellpadding="10">
		<tr>
			<th>行序号/索引</th>
			<th>编号</th>
			<th>姓名</th>
			<th>性别</th>
			<c:forEach var="user" items="${userList }" varStatus="st" step="2">
				<tr>
					<td>${st.count },索引:${st.index}</td>
					<td>${user.id }</td>
					<td>${user.username }</td>
					<td>${user.sex}</td>
				</tr>
			</c:forEach>
	
	</table>
  <h2>遍历数组</h2>
    <c:forEach var="c" items="${citys }">
       元素: ${c}<br>
    </c:forEach>
    <h2>遍历一组连续的数字</h2>
    <c:forEach var="sn"  begin="1" end="10">
        ${sn }<br>
    </c:forEach>
</body>

3.jsp

<body>
	
	<!-- 
       forTokens标签,使用某个字符来分割字符串,并迭代分割后的字符串数组 ,3个必需属性:
         1.var:设定一个变量名,用该变量存储每次从字符串数组中遍历出来的字符串
         2.items:要分割的字符串
         3.delims:指定使用什么分割符
     -->
       <h2>遍历分割后的字符串数组</h2>
      
      <c:forTokens items="武汉,天津,上海" delims="," var="str">
          ${str }<br>
      </c:forTokens>
</body>

index.jsp

<body>
    <%
      request.setAttribute("age", 19);
   //   request.setAttribute("score", 84);
    %>
    <!-- c:set标签来存储数据到作用域对象中
      var:变量名,就是存到作用域中的key
      value:指定要存储的数据,可以是简单数据或者对象
      scope:可选的,指定数据要存到哪个作用域对象中,默认值是page
     -->
    <c:set value="84" var="score"  scope="request"></c:set>
     <!--if标签的test属性上写条件表达式,条件表达式允许用EL -->
      <c:if test="${age>=18 }">
          你已成年!
      </c:if>
      <!-- 如果分数>=90,输出优秀,分数>=70并且<90,输出良好,[60,70)输出一般,60以下输出“不及格” -->
      <c:choose>
          <c:when test="${score ge 90 }">优秀</c:when>
           <c:when test="${score ge 70 and score lt 90}">良好</c:when>
           <c:when test="${score ge 60 and score lt 70}">一般</c:when> 
           <c:otherwise>不及格</c:otherwise>
      </c:choose>
  </body>

猜你喜欢

转载自blog.csdn.net/qq_41532872/article/details/87299442