项目介绍:
该系统创作于2022年3月,包含详细数据库设计。基于springboot技术,数据层为MyBatis,mysql数据库,页面采用html,具有完整的业务逻辑,适合选题:springboot、校园、店铺、校园店铺等。
项目功能:
1 主要功能模块有:店铺管理、商品管理、分类管理、用户账号管理、前端展示、图片上传、模糊查询等 2 系统登录模块:用户在输入用户名和密码之后,验证通过后方可登陆,如果登陆信息不正确则会返回登录界面。 3 普通用户前台模块主要功能有:(1)用户注册模块:注册登录、修改密码、商品、店铺查询、商品购买功能 (2)商品 / 商铺查询模块:可以根据每个对应的类查询店铺或商品的分类。 4 商家管理员模块主要功能有:(1)店铺管理:可以自主增加,修改、删除店铺信息;(2)分类管理模块:对商品类别进行增加,修改、删除;(3)商品管理模块:可以自主增加,修改、删除商品,并自由选择上架商品的图片、价格、类别等属性. 5系统管理员模块:管理普通用户账号注册,商家注册及商家商品信息审核功能
数据库表结构文档:
系统包含技术:
后端:springboot、mybatis
前端:layui,js,css等,html页面
开发工具:idea
数据库:mysql 5.7
JDK版本:jdk1.8
部分截图说明:
下面是首页
店铺列表
店铺详情
书籍详情
商品详情
购物车
订单详情
登录
管理员的首页
管理员对店铺进行管理
管理员对商品管理
管理员对分类进行维护
管理员对用户维护
商家对商品进行维护
部分代码:
分类操作
/**进入列表页面*/ @GetMapping("/cart") public String userIframe(){ return "CartList"; } /**列表数据*/ @GetMapping("/list") @ResponseBody public PageResultVo findCart(Cart cart, Integer limit, Integer page){ PageHelper.startPage(page,limit); List<Cart> cartList = cartService.selectByCondition(cart); PageInfo<Cart> pages = new PageInfo<>(cartList); return JsonData.table(cartList,pages.getTotal()); } /**编辑详情*/ @GetMapping("/edit") @ResponseBody public Cart edit(Model model, String id){ return cartService.selectById(id); } /**编辑*/ @PostMapping("/edit") @ResponseBody public JsonData edit(Cart cart){ int a = cartService.updateById(cart); if (a > 0) { return JsonData.success(null,"编辑成功!"); } else { return JsonData.fail("编辑失败"); } } /**前台删除删除*/ @GetMapping("/delete") public String delete(String id){ cartService.deleteById(Integer.parseInt(id)); return "redirect:/index/cart"; } /**删除*/ @PostMapping("/del") @ResponseBody public JsonData del(String id){ try{ cartService.deleteById(Integer.parseInt(id)); }catch(Exception ex){ JsonData.fail("出现错误"); } return JsonData.success(null,"删除成功"); } /**新增*/ @PostMapping("/add") @ResponseBody public JsonData add(Cart cart, HttpSession session){ Date date = new Date(); cart.setCreateTime(date); String type = (String)session.getAttribute("type"); if(type.equals("03")){ User user = (User)session.getAttribute("userInfo"); if(user!=null){ cart.setUid(String.valueOf(user.getId())); } } //如果同一个商品继续添加购物车,将数量想加 Cart cart1 = new Cart(); cart1.setGid(cart.getGid()); cart1.setUid(cart.getUid()); List<Cart> carts = cartService.selectByCondition(cart1); if(carts.size()==1){ Cart cart2 = carts.get(0); cart2.setNum(String.valueOf(Integer.parseInt(cart2.getNum())+Integer.parseInt(cart.getNum()))); cartService.updateById(cart2); return JsonData.success(null,"加入购物车成功"); } int num = cartService.addByCondition(cart); if(num > 0){ return JsonData.success(null,"加入购物车成功"); }else { return JsonData.fail("加入购物车失败"); } }
拦截器
@Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { HttpSession session = request.getSession(); if(session.getAttribute("userInfo") != null){ return true; } // 不符合条件的给出提示信息,并转发到主页面 request.setAttribute("msg", "您还没有登录,请先登录!"); request.getRequestDispatcher("/logout").forward(request, response); //返回true通过,返回false拦截 return false; }
以上就是部分功能展示,从整体上来看,本系统功能是十分完整的,界面设计简洁大方,交互友好,数据库设计也很合理,规模适中,代码工整,清晰,适合学习使用。
好了,今天就到这儿吧,小伙伴们点赞、收藏、评论,一键三连走起呀,下期见~~