关于网友提出的“ 查询多级商品分类怎么依次显示到页面上?”问题疑问,本网通过在网上对“ 查询多级商品分类怎么依次显示到页面上?”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:
问题: 查询多级商品分类怎么依次显示到页面上?
CREATE TABLE `admin_menu` (
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '自增id',
`name` varchar(64) NOT NULL COMMENT '菜单名',
`parent_id` bigint(3) NOT NULL DEFAULT 0 COMMENT '父菜单的id, 如果是父菜单这个值为0',
`url` varchar(500) NOT NULL DEFAULT '' COMMENT '菜单的链接',
`icon` varchar(100) NOT NULL DEFAULT '' COMMENT '图标',
`menu_index` bigint(3) NOT NULL DEFAULT 0 COMMENT '展示的顺序',
`create_time` datetime NOT NULL COMMENT '创建时间',
`update_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
PRIMARY KEY (`id`),
KEY `uq_id` (`id`),
KEY `uq_parent_id` (`parent_id`)
) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=utf8 COMMENT='管理后台的菜单';
其中parentId 跟你的typeParent类似, 记录上一级的id
AdminMenu (Model):
public class AdminMenu implements Serializable {
private static final long serialVersionUID = -6535315608269812875L;
private int id;
private String name;
private int parentId;
private String url;
private String icon;
private int menuIndex;
private Date createTime;
private Date updateTime;
private List subMenus;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getParentId() {
return parentId;
}
public void setParentId(int parentId) {
this.parentId = parentId;
}
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
public String getIcon() {
return icon;
}
public void setIcon(String icon) {
this.icon = icon;
}
public int getMenuIndex() {
return menuIndex;
}
public void setMenuIndex(int menuIndex) {
this.menuIndex = menuIndex;
}
public Date getCreateTime() {
return createTime;
}
public void setCreateTime(Date createTime) {
this.createTime = createTime;
}
public Date getUpdateTime() {
return updateTime;
}
public void setUpdateTime(Date updateTime) {
this.updateTime = updateTime;
}
public List getSubMenus() {
return subMenus;
}
public void setSubMenus(List subMenus) {
this.subMenus = subMenus;
}
@Override
public String toString() {
return JsonUtil.toJson(this);
}
}
Model的属性跟表结构一一对应, 最下面多了一个subMenu, 里面就是AdminMenu
下面是admin_menu.xml中的内容
查询SQL:
这里返回的就是adminMenuResult结果集:
其中这一行是最重要的
这里用selectSubMenus来进行了另一个查询, 查询的参数为id, 把查询出来的结果放在Model中的subMenus属性中.
selectSubMenus查询SQL: