1.1 功能实现
对菜单进行添加,修改查询等操作
插入一种思想,多对多的表关系
设计一个菜单与角色的表,操作菜单表的时候,也可能会操作角色表。
1.2设计今天页面为用户呈现菜单模块,就是点击菜单模块,显示菜单列表,菜单的页面(html/css/js)如图。使用个treerid插件。
1.3
需要实现功能,点击添加按钮,变成菜单编辑页面。
如图。
1.3.1API设计
2.1 动手
1)先在PageController(处理所有业务请求的conlltroller)中添加doMenuUI方法。
两种不同的形式,目的是为了优化。都是返回UI页面。先进行下一步。
2)实现starter页面加载完成后,点击菜单,会触发执行函数,进行加载。在starter.html下
在一个完成的函数里面,放入函数就行,封装共性。
doLoadUI("load-menu-id","menu/menu_list")。
可以进行测试,如图。
3)回到1)的优化,在PageController类里,两个函数可以不写,Module模块别的意思,共性:都是一样的路径,返回值都是字符串。
rest风格的url,你传什么就是什么,传menu_list就是menu。但是优先级低。
4)用map来封装数据,不再是用pojo,换种方法。
一行记录映射成一条map对象,map中的key是表中的字段名,id,name,operation这些,value就是字段代表的value。
同过list集合来记录多条map,集合数据会直接传给业务层,因为没有分页。
最终传到控制层。封装到JsonResult。
两个难点:表的查询,数据的呈现。
3 代码实现
1)查询上级菜单以及当前菜单。一个表一个dao,在创建一个。
在mapper建立对应sql映射文件。
方案一:嵌套查询
方案二:多表关联
左外关联,共性显示,特性也要显示。左边,满足条件的都要显示,不满足的左边表格要显示。
2)service接口,创建方法
3)实现类
4)控制层 有Controller和ResponseBody可以写一个注解RestController
Treegird树形表格,这里应用。可以去官网查
在menu_list里面要有对应。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。