itertor标签

标签就是为了给开发者提供更简单便捷的开发;iterator也不例外:先看例子理解程序:

首先建2个java类:

user类:

package com.keith;

public class User {
	private String name;
	
	private int age;

	private Group group;
	
	public Group getGroup() {
		return group;
	}

	public void setGroup(Group group) {
		this.group = group;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public int getAge() {
		return age;
	}

	public void setAge(int age) {
		this.age = age;
	}
}

 Group类:

package com.keith;

public class Group {
	private String groupName;

	public String getGroupName() {
		return groupName;
	}

	public void setGroupName(String groupName) {
		this.groupName = groupName;
	}
	
}

 IteratorAction:这里写程序代码,将会在jsp中用到:

package com.keith;

import java.util.ArrayList;
import java.util.List;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;

public class IteratorAction extends Action {

	@Override
	public ActionForward execute(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response)
			throws Exception {
		Group group = new Group();
		group.setGroupName("keith的好友");

		List listUser = new ArrayList();
		for (int i = 0; i < 10; i++) {
			User user = new User();
			user.setName("user "+i);
			user.setAge(18+i);
			user.setGroup(group);
			listUser.add(user);
		}
		request.setAttribute("listUser",listUser);
		return mapping.findForward("IteratorTest");
	}

}

 

struts-config.xml中:

<action-mappings>
	<action path="/IteratorTest"
				type="com.keith.IteratorAction">
			<forward name="IteratorTest" path="/IteratorTest.jsp" />
	</action>
</action-mappings>

 jsp中做了原始的脚本语言和struts标签的比较:首先得导入java文件和标签的熟悉:

<%@ page import="java.util.*,com.keith.*" %>
<%@ taglib prefix="logic" uri="http://struts.apache.org/tags-logic"%>
<%@ taglib prefix="bean" uri="http://struts.apache.org/tags-bean"%>
 

看看<body></body>中的写法:

	<body>
		<h2>
			IteratorTest
		</h2>
		<hr color="orange" size="4">
		<h3>IteratorTest传统的取值</h3>
		<table>
			<tr>
				<td>userName</td>
				<td>userAge</td>
				<td>userGroup</td>
			</tr>
			<% 
				List userList = (List)request.getAttribute("listUser");
				if(userList == null || userList.size()==0){ 
			%>
				<tr>
					<td colspan="3">没有数据</td>
				</tr>
			<%
			} else{
				for(Iterator  iter = userList.iterator();iter.hasNext();){
				User user = (User)iter.next();
			%>
				<tr>
					<td><%=user.getName() %></td>
					<td><%=user.getAge() %></td>
					<td><%=user.getGroup().getGroupName() %></td>
				</tr>
			<%
				}
			}
			 %>
		</table>
		<hr>
		<h3>IteratorTest标签取值</h3>
		<table>
			<tr>
				<td>userName</td>
				<td>userAge</td>
				<td>userGroup</td>
			</tr>
		
		<logic:empty name="listUser">
			<h3>没有listUser这个对象</h3>
		</logic:empty>
		<logic:notEmpty name="listUser">
			<logic:iterate id="user" name="listUser">
				<tr>
					<td>
						<bean:write name="user" property="name"/>
					</td>
					<td>
						<bean:write name="user" property="age"/>
					</td>
					<td>
						<bean:write name="user" property="group.groupName"/>
					</td>
				</tr>
			</logic:iterate>
		</logic:notEmpty>
		</table>
	</body>

 运行下,就知道标签和脚本写法的区别和好处!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值