京淘商城
京淘商城后台管理系统
基于SpringBoot架构搭建京淘后台管理系统,通过MySQL数据库技术实现在CentOS7中通过docker将项目上传。项目具体实现流程是先将数据保存到本地仓库,再将本地仓库中的数据打包成镜像文件上传到中央仓库,每次需要数据的时候再从中央仓库拉取。
登录、注册界面

通过表单将用户登录的数据与数据库中的数据进行比对,当用户名和密码校验正确时,登录后台,否则则输出密码错误。表单为必填项,采用阿贾克斯技术进行确认。
商品管理
商品管理实现方式,将项目的前后端分离,在jt-common中定义前端所需要的类和变量,在jt-manage中实现后端具体功能。
新增商品

在jt-common中pojo包里定义了item,使其中的变量与数据库中变量名称对应起来。
jt-manage中分为Controller、mapper、service层实现,在Controller层实现对数据库数据操作的定义,与前端数据连接,Mapper层继承基类,service层中通过定义和具体实现类来实现数据的删除编辑功能。
部分实现代码如下:
Pojo

Controller层

Service层实现类

查询商品

查询商品的实现和新增商品实现类似,只有新增、编辑、删除功能,比新增商品简单,在jt-common的pojo中定义itemCat,在jt-manage中,分Controller,Mapper,Service三层实现,与查询商品并无太多差别,在此不过多赘述。
核心实现代码:
@Override public List
findItemCatList(Long parentId) { //1.根据parentId查询数据库记录 List
catList = findItemCatListByParentId(parentId); List
treeList = new ArrayList<>(); //2.利用循环的方式实现数据的遍历 for(ItemCat itemCat :catList) { //目的是为了封装vo对象 Long id = itemCat.getId(); String text = itemCat.getName(); //如果是父级则默认closed,否则open String state = itemCat.getIsParent()?"closed":"open"; EasyUITree tree = new EasyUITree(id, text, state); //将tree对象封装到List集合中 treeList.add(tree); } return treeList; } private List
findItemCatListByParentId(Long parentId) { QueryWrapper
queryWrapper = new QueryWrapper
(); queryWrapper.eq("parent_id", parentId); return itemCatMapper.selectList(queryWrapper); } }
规格参数

规格参数的实现和查询商品实现类似,只有新增、编辑、删除功能,在jt-common的pojo中定义itemParam,在jt-manage中,分Controller,Mapper,Service三层实现。
但规格参数的数据存储方式比较特殊,导致在实现的时候困难较大,通过在前端实现对数据库的数据读取、存储后,其余功能实现与查询商品类似。
网站内容管理
网站内容管理实现方式,将项目的前后端分离,在jt-common中定义前端所需要的类和变量,在jt-manage中实现后端具体功能。实现方法通过在数据库中查找该目录的父节点与子节点,实现内容分类,内容管理中的新增、编辑、删除功能与前面实现方法无异。
内容分类管理

内容分类管理的实现只有一个类似左边菜单栏功能,在jt-common的pojo中定义content,在jt-manage中,分Controller,Mapper,Service三层实现。
核心实现代码:
@Override public EasyUITable findContent(int categoryId, int page, int rows) { //使用mybatisPlus分页插件实现分页 //传递page对象,之后动态的 获取所有的分页数据 IPage
iPage = new Page<>(page, rows); QueryWrapper
queryWrapper = new QueryWrapper<>(); //降序排列 queryWrapper.eq("category_id", categoryId); queryWrapper.orderByDesc("updated"); iPage = contentMapper.selectPage(iPage, queryWrapper); int total=(int) iPage.getTotal(); List
contentList = iPage.getRecords(); return new EasyUITable(total,contentList); }
内容管理

内容管理的实现和查询商品实现类似,只有新增、编辑、删除功能,在jt-common的pojo中定义ContentCategory,在jt-manage中,分Controller,Mapper,Service三层实现。实现方法与查询商品类似,在此就不附带核心代码了。
账户管理
账户管理管理实现方式,将项目的前后端分离,在jt-common中定义前端所需要的类和变量,在jt-manage中实现后端具体功能。账户管理中的新增、编辑、删除功能与前面实现方法无异。
管理员账户管理

管理员账户管理的实现和查询商品实现类似,只有新增、编辑、删除功能,在jt-common的pojo中定义User,在jt-manage中,分Controller,Mapper,Service三层实现。实现方法与查询商品类似。
普通用户账户管理

管理员账户管理的实现和查询商品实现类似,只有新增、编辑、删除功能,在jt-common的pojo中定义UsualUser,在jt-manage中,分Controller,Mapper,Service三层实现。实现方法与查询商品类似。
个人信息
习得总结
本次项目利用SpringBoot框架,实现了京淘商城后台管理系统,管理员可以在后台新增、查询、删除商品内容、规格参数等信息,并管理客户的信息以及其余管理员的信息,对信息进行增删改查并通过CentOS7的docker将项目上传。
实习总结
项目总结
心得体会
通过本次项目,我获益匪浅。首先,我感受到了作为一个程序员应该拥有的特质,第一是代码的规范性,第二是代码的可读性。在写代码前就应该对自己项目中的代码架构要有清醒的认识,代码写的规范方便团队合作,给整合代码带来很大的便利。写代码需要及时给注释,不仅方便自己回忆当时如何实现的代码,在团队合作中,也给予合作者大的便利。我通过这次项目,对SpringBoots框架和docker容器有了一定的了解,加深了我对java面向对象编程思想的理解。
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/216010.html原文链接:https://javaforall.net
