分析
- 实现当前目录的功能.
- 响应时候,给页面传递一个菜单对象,表示当前列表的父菜单.
- 菜单类中有一个属性为parent,代表父菜单对象
- 提供了一个方法,返回自己+父菜单的集合.
- 对集合遍历输出即可
- 实现查看下级菜单功能.
- 菜单对象的高级查询中,添加parentId, 对应条件语是
o.parent.id=XX
,即根据父菜单id查子菜单
- 在超链接中添加参数,为query.parentId.(当前行菜单的id值)
- 点击查看下级菜单,就是高级查询出该菜单的子菜单.
- 实现添加功能,固定父菜单.
- 请求input界面时候,添加参数:
<s:param name="systemMenu.parent.id" value="systemMenu.id" />
- 在input的Action方法中,通过
systemMenu.parent.id
,给systemMenu.parent
设值.(菜单对象其他属性为空)
- 响应时候,input界面中,systemMenu.parent就有值了.
菜单的domain类
- 属性:父菜单
- 方法:返回自身+父菜单们的集合.
- 方法:返回父菜单的名字,若为根目录,就返回根目录
public class SystemMenu extends BaseDomain {
private static final long serialVersionUID = 1L;
private String name;
private String url;
private String sn;
private SystemMenu parent;
public String getParentName() {
return parent==null||parent.getId()==null? "根目录":parent.getName();
}
public List<SystemMenu> getAllParents(){
List<SystemMenu> all=new ArrayList<>();