此项目为本人学习Java之路所做的第二个小项目。
一、项目描述:作为一个后台管理系统,共有系统首页、用户管理、歌手管理和歌单管理四大模块。
1.系统首页模块功能需要显示出用户数、歌手数、歌曲数,歌单数,需要通过可视化的形式显示出用户性别比例、歌曲类型分布、歌手性别比例、歌手国际分布。具体功能实现为(1)通过Axios向后台发送请求,分别获取到用户、歌手、歌曲,歌单的信息,将后台返回的数据分别保存到这些对象的数组中,通过.length获取到这些数组的长度以此来获取到用户数,歌曲数等。(2)页面中的可视化显示则是用Charts组件在对应的ElementUI的布局中使用ve-pie和ve-histogram元素来实现饼图和柱状图的。2.歌手管理模块功能为对歌手数据基本的增删改操作、根据歌手姓名模糊查询、批量删除歌手信息、头像上传,分页。具体功能实现为(1)根据name模糊查询,因为动态sql条件为前台传参过来的,所以需要用concat函数拼接后再查询。本项目主要用的分页方式为前台分页,即将数据库中的数据全部取出,然后通过计算进行分页。(2)通过el-pagination标签在其中绑定current-page、page-size等属性,在computed中进行计算。(3)批量删除:组件自带的方法@selection-change可以获取到我们选择的行的值,定义一个数组multipleSelection[]保存选择的行的值,遍历该数组,调用删除窗口弹出的方法,将遍历出的对象的id传给该方法,在该方法中将id复制给idx属性;调用删除的方法,向后台发送axios请求,参数传idx。(4)文件上传:
其主