`

黑马程序员:struts2 获取一对多关系的对象的对象的属性

 
阅读更多
------- android培训 java培训、期待与您交流!-------




struts2 获取一对多关系的对象的对象的属性
http://blog.sina.com.cn/s/blog_67b9ad8d0100yat1.html
http://tiger-hu.iteye.com/blog/1032623

通过下面的JSP代码可以发现,一些等价关系:
//取对象时
<s:iterator value="#request.allPatient" id="patient">
	<s:property value="id"/> 与 ${patient.id} 等价

	   ${patient.person.id} 与	<s:property value="#patient.person.id"/>等价 与${person.id}等价
</s:iterator>



<%@ page language="java" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<%@ page isELIgnored="false" %> 
<%
String path = request.getContextPath();
%>
<%@taglib prefix="s" uri="/struts-tags"%>
<html>
	<head>
		<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="<%=path %>/css/base.css" />
		<script type="text/javascript" src="<%=path %>/js/public.js"></script>
		<script type="text/javascript" src="<%=path %>/My97DatePicker/WdatePicker.js"></script>
		<script type="text/javascript" src="<%=path %>/js/popup.js"></script>
        <script language="javascript">
           function patientDelete(id)
           {
               if(confirm('您确定删除吗?'))
               {
                   window.location.href="<%=path %>/patient/Patient-delete?id="+id;
               }
           }
           
           function patientAdd()
           {
                 var url="<%=path %>Patient-add.jsp";
				 window.location.href=url;
           }
       </script>
	</head>
<body leftmargin="2" topmargin="2" background='<%=path %>/images/allbg.gif'>
<center>
	<h2>用户列表</h2>
	<table border="1">
		
		<tr>
			<td>个人ID</td>
			<td>病人ID</td>
			<td>用户名</td>
			<td>挂号单时间</td>	
			<td>就诊科目</td>
			<td>主诉</td>
			<td>诊断</td>
			<td>费用</td>		
		</tr>
		<s:iterator value="#request.allPatient" id="patient">
		<tr>
			<td><a href="Person-showPerson?id=<s:property value='#patient.person_id'/>"><s:property value="#patient.person_id"/></a></td>
			<td><a href="Patient-showPatient?id=<s:property value='#patient.id'/>"><s:property value="#patient.id"/></a></td>
			<td><s:property value="#"/></td>
			<td><s:property value="#patient.datetime"/></td>	
			<td><s:property value="#patient.subject"/></td>
			<td><a href="Patient-delete?id=<s:property value='#patient.id'/>">删除挂号单</a></td>
			<td><a href="Patient-update.jsp?id=<s:property value='#patient.id'/>">更新挂号单</a></td>	
		</tr>
		</s:iterator>	
	</table>
	
	<table width="98%" border="0" cellpadding="2" cellspacing="1" bgcolor="#D1DDAA" align="center" style="margin-top:8px">
				<tr bgcolor="#E7E7E7">
					<td height="14" colspan="18" background="<%=path %>/images/tbg.gif">&nbsp;病人挂号信息管理&nbsp;</td>
				</tr>
				<tr align="center" bgcolor="#FAFAF1" height="22">
					<td >个人ID</td>
					<td ">病人ID</td>
					<td ">用户名</td>
					<td ">挂号单时间</td>
					
					<td ">就诊科目</td>
					<td ">主诉</td>
					<td ">诊断</td>
					<td ">费用</td>
					
					
					
					
					<td ">修改</td>
					<td ">删除</td>
		        </tr>	
				<s:iterator value="#request.allPatient" id="patient">
				<tr align='center' bgcolor="#FFFFFF" onMouseMove="javascript:this.bgColor='red';" onMouseOut="javascript:this.bgColor='#FFFFFF';" height="22">
					<td bgcolor="#FFFFFF" align="center">
						<s:property value="id"/>
					</td>
					<td bgcolor="#FFFFFF" align="center">
					   <s:property value="person.id"/>
					</td>
					<td bgcolor="#FFFFFF" align="center">
					 	<s:property value="person.name"/>
					</td>
					<td bgcolor="#FFFFFF" align="center">
					 	<s:property value="datetime"/>
					</td>
					<td bgcolor="#FFFFFF" align="center">
						<s:property value="subject"/>
					</td>
				    <td bgcolor="#FFFFFF" align="center">
					   <s:property value="expatiate"/>
					</td>
					<td bgcolor="#FFFFFF" align="center">
					    <s:property value="diagnose"/>
					</td>
					
					<td bgcolor="#FFFFFF" align="center">
					  <s:property value="price"/>
					</td>

					
					<td bgcolor="#FFFFFF" align="center">
					    6
					</td>
					<td bgcolor="#FFFFFF" align="center">
						<form action="" name="formAdd" method="post">
						   <input type="button" value="删除" onclick="patientDelete(${patient.id})"/>
						</form>
					</td>
				</tr>
				</s:iterator>
			</table>
	
	<a href="Patient-add.jsp">添加新挂号单</a>		
	<s:debug id="2"/>
</center>
</body>
</html>

------- android培训 java培训、期待与您交流!-------


详细请查看:http://edu.csdn.net/heima -------
分享到:
评论

相关推荐

    黑马程序员 struts2.1 视频教程

    19_黑马程序员_struts2.1视频教程_对Action中所有方法进行输入校验.rar和22_黑马程序员_struts2.1视频教程_基于XML配置方式实现对action的所有方法进行校验.rar这两部分将详细介绍Struts2的验证机制。无论是基于注解...

    黑马程序员_struts2框架2016版视频_struts2_day01笔记

    **Struts2框架** 是一个基于MVC(Model-View-Controller)架构的开源Java Web应用程序框架,它简化了Java Web应用程序的开发过程。Struts2提供了一种简洁而强大的方式来构建动态的、可扩展的应用程序。 **问题:** ...

    黑马程序员struts2框架2016版资料

    "黑马程序员"是一家知名的编程教育机构,他们提供的Struts2框架教程资料旨在帮助开发者深入理解和掌握这一技术。 Struts2的核心特性包括: 1. **Action类**:它是业务逻辑处理的主要载体,继承自`ActionSupport`类...

    struts2学习笔记黑马程序员

    文件上传是Web应用中常见的功能之一,Struts2框架内置了对文件上传的支持,使得开发者能够轻松地实现这一功能。为了确保文件能够正确上传至服务器,前端和后端都需要做一些特定的设置。 **前端注意事项:** 1. **...

    黑马程序员_struts2框架开发2016版讲义和笔记资料_day01_day02_day03_day04

    总的来说,这份"黑马程序员_struts2框架开发2016版讲义和笔记资料"是一个全面学习和掌握Struts2框架的宝贵资源,涵盖了从基础到实践的所有重要方面,对于提升Java EE开发者的技能水平大有裨益。通过系统学习,开发者...

    黑马程序员Struts2笔记

    黑马程序员的笔记中可能包含了如何创建一个简单的Struts2应用,从HelloWorld实例到实际的表单提交、文件上传下载等实战案例,帮助初学者快速掌握Struts2的基本用法。 通过学习这些笔记,开发者将能够理解Struts2的...

    黑马程序员struts2人员管理系统

    本项目“黑马程序员Struts2人员管理系统”是专为学习Struts2的同学设计的一个实践平台,旨在帮助开发者巩固基础,熟悉开发流程。 1. Struts2框架基础: Struts2是Apache软件基金会下的开源项目,它是基于MVC设计...

    [黑马程序员Struts2 2016版视频] 前3Days笔记

    本笔记主要涵盖的是黑马程序员2016年推出的Struts2教程的前3天内容,虽然没有提供源代码,但依然能为我们提供丰富的理论知识和实践指导。 一、Struts2框架概述 Struts2是Apache软件基金会的开源项目,它是Struts1的...

    黑马程序员struts2框架2016版资料(笔记+源码+思路图)

    黑马程序员的资料中,通过`day01.zip`至`day04.zip`的分阶段学习,可以逐步掌握Struts2的基础概念、配置、Action编写、拦截器应用、结果类型配置以及实战项目开发等技能。 综上所述,Struts2框架的学习涉及诸多...

    struts2 获取request

    struts2 获取request session对象

    转:struts1与struts2的区别

    - **Struts2**: Struts2直接使用Action对象的属性作为输入数据,消除了对`ActionForm`对象的需求。输入数据可以是复杂的对象类型,包含子属性。此外,Struts2支持模型驱动特性,允许使用现有的业务对象作为输入/输出...

    黑马程序员SSM整合学习项目demo

    这个“黑马程序员SSM整合学习项目demo”是一个实践性的学习资源,通过它,你可以深入了解SSM框架的整合过程,提升Java Web开发能力。在实际项目中,SSM框架的整合可以大大提高开发效率,同时提供良好的可维护性和...

    黑马程序员 shh框架-crm项目源码

    "黑马程序员 shh框架-crm项目源码" 是一个基于SSH(Spring、Struts、Hibernate)框架开发的客户关系管理(CRM)系统的源代码。这个项目旨在帮助学习者理解和掌握SSH框架在实际项目中的应用,同时也为开发者提供了一...

    Struts2在Action中获得Response对象的四种方法

    Struts2 是一个基于MVC 模式的 Web 应用程序框架,它提供了多种方式来获取 Response 对象,以下是四种获得 Response 对象的方法: 方法 1:使用 Struts2 Aware 拦截器 在 Struts2 中,可以通过实现Aware接口来获取...

    Struts2_入门篇_基本配置_通配符_参数注入_内置对象获取等。。。

    4. **内置对象获取**:Struts2提供了一系列内置对象,如`ActionContext`、`ValueStack`、`Session`等,开发者可以直接在Action类中使用。例如,`ActionContext`提供了访问请求、会话、上下文等信息的方法;`...

    struts2 jar包

    Struts2是一个基于MVC(Model-View-Controller)设计模式的Java Web应用程序框架,它在Web开发领域具有广泛的应用。...理解并掌握Struts2框架,对于Java程序员来说,仍然是提升技能和经验的重要途径之一。

    第四章:struts2中的OGNL.ppt

    第四章:Struts2中的OGNL.ppt详细探讨了Struts2框架中使用OGNL(Object-Graph Navigation Language,对象图导航语言)的关键概念和技术。OGNL作为一种强大的表达式语言,使得开发者能够方便地访问Action携带的数据,...

    最新项目系统:Struts2+Spring4+Hibernate4三大框架整合

    Struts2、Spring4和Hibernate4是Java Web开发中的三大主流框架,它们分别负责MVC模式中的表现层、业务层和服务层。这个最新的项目系统整合了这三个框架,旨在提供一个高效、灵活且易于维护的开发环境。下面将详细...

    Struts2核心包

    ognl-3.0.jar:对象图导航语言(Object Graph Navigation Language),它是一种功能强大的表达式语言(Expression Language,简称为EL),通过它简单一致的表达式语法,可以存取对象的任意属性,调用对象的方法,...

    struts2 学习重点笔记

    - **自动填充**:Struts2 自动从 request 中获取数据并填充到 Action 对象中。 - **原理**:通过拦截器实现,拦截器会查找与 Action 类中的 setter 方法相匹配的请求参数,并调用这些方法填充数据。 **3.3 数据传递...

Global site tag (gtag.js) - Google Analytics