环境搭建:eclipse+STS插件+mysql数据库(Springboot自动集成了tomcat,所以可以不用配置tomcat)
框架:springboot+spring+mybatis+mysql
项目地址:
功能实现方式
1 需求管理+测试管理
①采用easyui树形结构来展示,JSON格式转换在后台实现,加入自定义的节点属性,可以自由扩展
②node节点的children(子节点)、type(层数)、state(展开还是闭合),这几个属性相当重要,其中最后一个节点的state一定要保证是闭合的,不然新增节点的时候会出现问题
③只有双击最后一级目录才会向后台发送请求,首先查询数据库中是否存在这条记录,如果不存在,就向数据库中插入它所有的上一级目录,这里判断的代码比较多
2 建立映射
①显示侧边栏,前端代码采用的是嵌套的for循环,后端代码采用的是树的层序遍历算法,其中后端代码可以根据自己的需求随意扩展。
②在建立映射之前会在数据库里面查询一下,看是否存在,不存在就向数据库插入数据
不足:
① 已经存在的映射不能在界面上显示,因为是一对多的关系。不过实现方式有很多种,只不过比较麻烦,可以自由扩展下
② 搜索框目前只支持编号匹配,后期可以进一步改进成模糊查询,为提高查询速度,可以研究下页面静态查询,而不是向后台发送请求
③ 导出excel的时候,只能导出所有的条目,可以考虑增加 自己选择的映射条目导出
④ 登录功能并不完善,需要加拦截器,提供用户认证的流程,加入token
数据库设计
① 没有使用外键,一般是采用左外连接来做多表查询。内连接做级联查询、子查询用的最多,能用的都用了,具体的看下sql语句
② dc_detail设计得最为巧妙,只有三个字段就可以完成树状显示 id pid 和name
③ 其他的表设计是按照经验来的,不取巧