600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > java实现动态权限(菜单管理)动态添加菜单 动态添加角色SSM框架

java实现动态权限(菜单管理)动态添加菜单 动态添加角色SSM框架

时间:2019-06-11 15:37:32

相关推荐

java实现动态权限(菜单管理)动态添加菜单 动态添加角色SSM框架

首先是数据库设计

Menu表(菜单表)

Role表(角色表)

Role_Menu表(角色菜单关系表)

User表(用户表)

User_Role表(用户角色关系表)

其他实体类就略过了

在Menu实体类中添加了一个List<Menu>集合

在MenuMapper中写了如下的方法

/*** 根据等级或父节点查询菜单信息* @param level 等级* @param parentid 父节点编号* @return 菜单信息*/List<Menu> selectMenuByLevelOrParentid(@Param("level") int level,@Param("parentid") int parentid);对应的<select id="selectMenuByLevelOrParentid" resultType="menu">SELECT<include refid="Base_Column_List" />FROM MENU<where>and level = #{level}and parent_id = #{parentid}</where></select>

MenuService和实现类中

/*** 查询菜单(父子菜单对应形式)* @return*/public List<Menu> SelectMenuByparent(Menu m,int level,int parentid);public List<Menu> SelectMenuByparent(Menu m,int i,int id){List<Menu> menus=this.selectMenuByLevelOrParentid(i,id);if(menus!=null) {if(m!=null) {m.setMenus(menus);}for (Menu menu : menus) {i++;this.SelectMenuByparent(menu,i,menu.getId());}}return menus;}

在controller中调用

/*** 显示所有菜单* @param model* @return */@RequestMapping("list")public String SelectAllMenu(Model model) {List<Menu> menu = new ArrayList<Menu>();//查询所有菜单信息menu = this.menuService.SelectMenuByparent(null,0,0);//存入菜单信息model.addAttribute("menus", menu);MenuTree mt = new MenuTree(menu);return "/Menu/index";}

源码由于年数多了找不到了,自己的作业自己做,谢谢

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。