OGNL遍历list、map的常用三种方法
package com.mylife.po;
public class User {
private String uname;
private String pwd;
public String getUname() {
return uname;
}
public void setUname(String uname) {
this.uname = uname;
}
public String getPwd() {
return pwd;
}
public void setPwd(String pwd) {
this.pwd = pwd;
}
}
以上是po类。
以下是jsp页面的具体ognl操作。
<%@page import="com.mylife.po.User"%>
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>"> <title>My JSP 'tags.jsp' starting page</title> <meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
--> <%
String id =request.getParameter("id");
request.setAttribute("id", id); User u1=new User();
u1.setUname("cherry_1");
u1.setPwd("33");
User u2=new User();
u2.setUname("cherry_2");
u2.setPwd("23");
User u3=new User();
u3.setUname("cherry_3");
u3.setPwd("43"); List list=new ArrayList();
list.add(u1);
list.add(u2);
list.add(u3);
request.setAttribute("list", list); Map map = new HashMap();
map.put("u1", u1);
map.put("u2", u2);
map.put("u3", u3);
request.setAttribute("map", map); %>
</head> <body> <h1>测试</h1>
<s:if test="#request['id'] >= 18">年龄达标</s:if>
<s:else>年龄不合格</s:else> <hr size="4" color="blue">
<h2 style="color: red"> 迭代list-1:</h2>
<s:iterator value="#request['list']" var="u">
<s:property value="#u.uname"/>
</s:iterator> <hr size="4" color="blue">
<h2 style="color: red">迭代list-2:</h2>
<s:iterator value="#request['list']">
<s:property value="pwd"/>
</s:iterator> <hr color="blue" size="5">
<h2 style="color: red">迭代list-3:</h2>
<s:iterator begin="0" end="#request['list'].size()-1" var="i">
<s:property value="#request['list'].get(#i).uname"/>
</s:iterator> <hr color="blue" size="5">
<h2 style="color: red"> 迭代map-1:</h2>
<s:iterator value="#request['map']">
<s:property value="key"/>---->
<s:property value="value.uname"/>,
<s:property value="value.pwd"/><br>
</s:iterator> <hr color="blue" size="5">
<h2 style="color: red"> 迭代map-2:</h2>
<s:iterator value="#request['map'].keySet()" var="i">
<s:property value="#i"/>-->>>
<s:property value="#request['map'].get(#i).uname"/>,
<s:property value="#request['map'].get(#i).pwd"/><br>
</s:iterator> <hr color="blue" size="5">
<h2 style="color: red"> 迭代map-3:</h2>
<s:iterator value="#request['map'].entrySet()" var="e">
<s:property value="#e.getKey()"/>-->>
<s:property value="#e.getValue().uname"/>,
<s:property value="#e.getValue().pwd"/><br>
</s:iterator> </body>
</html>
OGNL遍历list、map的常用三种方法的更多相关文章
- (转)在网页中JS函数自动执行常用三种方法
原文:http://blog.sina.com.cn/s/blog_6f6b4c3c0100nxx8.html 在网页中JS函数自动执行常用三种方法 在网页中JS函数自动执行常用三种方法 在HTML中 ...
- 在网页中JS函数自动执行常用三种方法
在网页中JS函数自动执行常用三种方法 在HTML中的Head区域中,有如下函数: <SCRIPT LANGUAGE="JavaScript"> function ...
- Map循环的三种方法
import java.util.HashMap; import java.util.Iterator; import java.util.Map; public class MapTest { pu ...
- 产生冠军(set,map,拓扑结构三种方法)
产生冠军 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submis ...
- 网页中JS函数自动执行常用三种方法
(1)最简单的调用方式,直接写到html的body标签里面: <body onload="myFunction()"></body> ...
- Java原来如此-遍历Map的三种方法
import java.util.HashMap; import java.util.Iterator; import java.util.Map; import java.util.Set; pub ...
- (转载)Java中如何遍历Map对象的4种方法
在Java中如何遍历Map对象 How to Iterate Over a Map in Java 在java中遍历Map有不少的方法.我们看一下最常用的方法及其优缺点. 既然java中的所有map都 ...
- 两个Map的对比,三种方法,将对比结果写入文件。
三种方法的思维都是遍历一个map的Key,然后2个Map分别取这2个Key值所得到的Value. #第一种用entry private void compareMap(Map<String, S ...
- List遍历三种方法:1.for 2.增强性for 3.迭代器
package chapter09; import java.util.ArrayList;import java.util.Iterator;import java.util.List; /* * ...
随机推荐
- 20162314 Experiment 3 - Sorting and Searching
Experiment report of Besti course:<Program Design & Data Structures> Class: 1623 Student N ...
- Javaworkers团队第五周项目总结
本周项目进展 本周是我们项目开发的最后一周,所以接着上周未解决的问题,我们进行了认真的查阅与测试. 下面是我们本周解决的问题概述. 蛇爬行的速度控制 答:这是上周的遗留问题,经过一周的查阅与学习,我们 ...
- SDN原理 OpenFlow协议 -4
通道 Channel 在前面的OpenFlow的内容中,我们提到了在交换层所采用的流表是控制层的Controller下发的,那么Controller是如何下发流表的呢?中间经过了哪些的流程和步骤?控制 ...
- 现在 做java 构架(RabbitMQ redis mysql )之类的
现在 做java 构架(RabbitMQ redis mysql )之类的
- Binary Tree Zigzag Level Order Traversal,z字形遍历二叉树,得到每层访问的节点值。
问题描述: Given a binary tree, return the zigzag level order traversal of its nodes' values. (ie, from l ...
- Codeforces Round #401 (Div. 2) A,B,C,D,E
A. Shell Game time limit per test 0.5 seconds memory limit per test 256 megabytes input standard inp ...
- git关于 LF 与 CRLF
问题描述: 今天在idea上配置好了git操作到push,目测都没遇到什么问题. 但是再次点击提交按钮的时候,仍然提示我所有的文件都是需要提交的(我的主题中蓝色显示) 然而本地并无改动,在提交窗口得到 ...
- UVALive-3972 March of the Penguins (最大流:节点容量)
题目大意:有n个带有裂缝的冰块.已知每个冰块的坐标和已经站在上面的企鹅数目,每当一个企鹅从一个冰块a跳到另一个冰块b上的时候,冰块a上的裂缝便增大一点,还知道每个冰块上最多能被跳跃的次数.所有的企鹅都 ...
- bzoj2134
题解: 每一题对的概率为min(a[i],a[i+1])/a[i]/a[i+1]; 即可 代码: #include<bits/stdc++.h> using namespace std; ...
- Python3 条件控制(九)
Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块. 可以通过下图来简单了解条件语句的执行过程: if 语句 Python中if语句的一般形式如下所示: i ...