【SpringBoot+Vue】006

阅读: 评论:0

【SpringBoot+Vue】006

【SpringBoot+Vue】006

目录

一、创建导航对象

1、SQL

2、菜单对象

一级菜单MainMenu:

二级菜单SubMenu:

二、编写菜单的持久层

1、MenuDao接口

2、MenuDao映射文件

三、编写菜单控制器

1、MenuController


一、创建导航对象

1、SQL

/*
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');

 

2、菜单对象

一级菜单MainMenu:

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;
}

二级菜单SubMenu:

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;
}

 

二、编写菜单的持久层

1、MenuDao接口

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();}

 

2、MenuDao映射文件

<?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>

 

三、编写菜单控制器

1、MenuController

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小时内删除。

标签:SpringBoot   Vue
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23