目录
一、创建导航对象
1、SQL
2、菜单对象
一级菜单MainMenu:
二级菜单SubMenu:
二、编写菜单的持久层
1、MenuDao接口
2、MenuDao映射文件
三、编写菜单控制器
1、MenuController
/*
Navicat MySQL Data TransferSource Server : Testblog
Source Server Version : 50556
Source Host : localhost:3306
Source Database : easyprojectTarget Server Type : MYSQL
Target Server Version : 50556
File Encoding : 65001Date: 2020-05-27 14:48:51
*/SET FOREIGN_KEY_CHECKS=0;-- ----------------------------
-- Table structure for mainmenu
-- ----------------------------
DROP TABLE IF EXISTS `mainmenu`;
CREATE TABLE `mainmenu` (`id` int(50) NOT NULL AUTO_INCREMENT,`title` varchar(255) NOT NULL,`path` varchar(255) NOT NULL,PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=201 DEFAULT CHARSET=utf8;-- ----------------------------
-- Records of mainmenu
-- ----------------------------
INSERT INTO `mainmenu` VALUES ('100', '权限管理', '/admin');
INSERT INTO `mainmenu` VALUES ('200', '运动平台', '/use');
/*
Navicat MySQL Data TransferSource Server : Testblog
Source Server Version : 50556
Source Host : localhost:3306
Source Database : easyprojectTarget Server Type : MYSQL
Target Server Version : 50556
File Encoding : 65001Date: 2020-05-27 14:48:58
*/SET FOREIGN_KEY_CHECKS=0;-- ----------------------------
-- Table structure for submenu
-- ----------------------------
DROP TABLE IF EXISTS `submenu`;
CREATE TABLE `submenu` (`id` int(50) NOT NULL AUTO_INCREMENT,`title` varchar(255) NOT NULL,`path` varchar(255) NOT NULL,`mid` int(50) NOT NULL,PRIMARY KEY (`id`),KEY `mid` (`mid`),CONSTRAINT `submenu_ibfk_1` FOREIGN KEY (`mid`) REFERENCES `mainmenu` (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=204 DEFAULT CHARSET=utf8;-- ----------------------------
-- Records of submenu
-- ----------------------------
INSERT INTO `submenu` VALUES ('101', '用户列表', '/user', '100');
INSERT INTO `submenu` VALUES ('102', '修改权限', '/rights', '100');
INSERT INTO `submenu` VALUES ('103', ' 运动模块', '/sport', '100');
INSERT INTO `submenu` VALUES ('104', '商品模块', '/goods', '100');
INSERT INTO `submenu` VALUES ('201', '运动科普', '/Introduction', '200');
INSERT INTO `submenu` VALUES ('202', '卡路里', '/calories', '200');
INSERT INTO `submenu` VALUES ('203', '营养配餐', '/food', '200');
package com.zibo.sport.bean;import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;import java.util.List;@Data
@NoArgsConstructor
@AllArgsConstructor
public class MainMenu {private int id;private String title;private String path;List<SubMenu> subMenuList;
}
package com.zibo.sport.bean;import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;@Data
@NoArgsConstructor
@AllArgsConstructor
public class SubMenu {private int id;private String title;private String path;
}
package com.zibo.sport.dao;import com.zibo.sport.bean.MainMenu;
import org.springframework.stereotype.Repository;import java.util.List;@Repository
public interface MenuDao {List<MainMenu> getMainMenuList();}
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis//DTD Mapper 3.0//EN"".dtd">
<mapper namespace="com.zibo.sport.dao.MenuDao"><!--映射实体--><resultMap id="menuMap" type="mainMenu"><id column="id" property="id"/><result column="title" property="title"/><result column="path" property="path"/><collection property="subMenuList" ofType="subMenu"><result column="sid" property="id"/><result column="stitle" property="title"/><result column="spath" property="path"/></collection></resultMap><select id="getMainMenuList" resultMap="menuMap">SELECT mm.*,sm.id as sid ,sm.title as stitle,sm.path as spath FROM mainmenu mm ,submenu sm WHERE mm.id = sm.mid;</select>
</mapper>
package com.ller;import com.alibaba.fastjson.JSON;
import com.zibo.sport.bean.MainMenu;
import com.zibo.sport.dao.MenuDao;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;import java.util.HashMap;
import java.util.List;
import java.util.Map;@RestController
public class MenuController {@AutowiredMenuDao menuDao;@RequestMapping("/menus")public String getAllMenus(){Map<String, Object> data = new HashMap<>();List<MainMenu> mainMenus = MainMenuList();data.put("data",mainMenus);data.put("status",200);String data_json = JSONString(data);System.out.println("成功访问!!!");return data_json;}
}
(接下来就是前端进行获取导航菜单数据,咱们到前端去写,下一篇笔记进行记录!)
本文发布于:2024-01-31 08:08:05,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170665968526987.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |