struts2移除标签button的id传统的价值观念问题

<!--显示数据列表-->
        <tbody id="TableData" class="dataContainer" datakey="departmentList">
        <s:iterator value="#departmentList">
			<tr class="TableDetail1 template">
				<td><a href="_list_level2.html">${name}</a> </td>
				<td>${parent.name} </td>
				<td>${description} </td>
				<td><s:a action="department_delete?id=%{id}" onClick="return window.confirm('这将删除全部的下级部门,您确定要删除吗?')">删除</s:a>
					<s:a action="department_editUI?id=%{id}">改动</s:a>
				</td>
			</tr>
        </s:iterator>
        </tbody>

上面的删除与改动都须要通过OGNL表达式为其指定一个id,这个id事实上是在list显示的时候已经通过ognl表达式算好了的,当点击删除时,就会去请求

department_delete?

id=xxx

在请求到这个action之前,对象栈中已经存在一个包括id属性的model(当然也有get set方法),如上篇所述,xxx就会赋值给这个model的id属性。在Action里面的删除方法里能够直接   departmentservice.delete(model.getId());

同理在Action_edit方法中:

Department department =departmentservice.findById(model.getId());
ActionContext.getContext().getValueStack().push(department);//将要改动的domain压入到对象栈堆栈的顶部,在jsp页面可以根据属性名相匹配直接显示在相应的标签。
return "saveUI";


当您直接修改:

departmentservice.update(model);

posted @ 2015-06-23 16:31  phlsheji  阅读(365)  评论(0编辑  收藏  举报