基于java ssm springboot网上蛋糕商城项目设计和实现

基于java ssm springboot网上蛋糕商城项目设计和实现

博主介绍:多年java开发经验,专注Java开发、定制、远程、文档编写指导等,csdn特邀作者、专注于Java技术领域
作者主页 央顺技术团队
Java毕设项目精品实战案例《1000套》
欢迎点赞 收藏 ⭐留言
文末获取源码联系方式


主要技术:spring、 springmvc、 springboot、 mybatis 、 jquery 、 md5 、bootstarp.js tomcat、富文本编译器、拦截器等
主要功能:登录、注册、商品浏览、分类设置、模糊查找、轮播图、热销商品、购物车、订单、订单流程控制、用户管理、修改密码等

主要功能截图:

登录和注册、

登录模块后台代码

package ltd.newbee.mall.controller.admin;
 
import ltd.newbee.mall.common.ServiceResultEnum;
import ltd.newbee.mall.entity.AdminUser;
import ltd.newbee.mall.service.AdminUserService;
 
import org.springframework.stereotype.Controller;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.*;
 
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
 
/**
 * @author 13
 */
@Controller
@RequestMapping("/admin")
public class AdminController {
 
    @Resource
    private AdminUserService adminUserService;
 
    @GetMapping({"/login"})
    public String login() {
        return "admin/login";
    }
 
    @GetMapping({"/test"})
    public String test() {
        return "admin/test";
    }
 
 
    @GetMapping({"", "/", "/index", "/index.html"})
    public String index(HttpServletRequest request) {
        request.setAttribute("path", "index");
        request.setAttribute("categoryCount", 0);
        request.setAttribute("blogCount", 0);
        request.setAttribute("linkCount", 0);
        request.setAttribute("tagCount", 0);
        request.setAttribute("commentCount", 0);
        request.setAttribute("path", "index");
        return "admin/index";
    }
 
    @PostMapping(value = "/login")
    public String login(@RequestParam("userName") String userName,
                        @RequestParam("password") String password,
                        @RequestParam("verifyCode") String verifyCode,
                        HttpSession session) {
        if (StringUtils.isEmpty(verifyCode)) {
            session.setAttribute("errorMsg", "验证码不能为空");
            return "admin/login";
        }
        if (StringUtils.isEmpty(userName) || StringUtils.isEmpty(password)) {
            session.setAttribute("errorMsg", "用户名或密码不能为空");
            return "admin/login";
        }
        String kaptchaCode = session.getAttribute("verifyCode") + "";
        if (StringUtils.isEmpty(kaptchaCode) || !verifyCode.equals(kaptchaCode)) {
            session.setAttribute("errorMsg", "验证码错误");
            return "admin/login";
        }
        AdminUser adminUser = adminUserService.login(userName, password);
        if (adminUser != null) {
            session.setAttribute("loginUser", adminUser.getNickName());
            session.setAttribute("loginUserId", adminUser.getAdminUserId());
            //session过期时间设置为7200秒 即两小时
            //session.setMaxInactiveInterval(60 * 60 * 2);
            return "redirect:/admin/index";
        } else {
            session.setAttribute("errorMsg", "登陆失败,请联系作者获得测试账号");
            return "admin/login";
        }
    }
 
    @GetMapping("/profile")
    public String profile(HttpServletRequest request) {
        Integer loginUserId = (int) request.getSession().getAttribute("loginUserId");
        AdminUser adminUser = adminUserService.getUserDetailById(loginUserId);
        if (adminUser == null) {
            return "admin/login";
        }
        request.setAttribute("path", "profile");
        request.setAttribute("loginUserName", adminUser.getLoginUserName());
        request.setAttribute("nickName", adminUser.getNickName());
        return "admin/profile";
    }
 
    @PostMapping("/profile/password")
    @ResponseBody
    public String passwordUpdate(HttpServletRequest request, @RequestParam("originalPassword") String originalPassword,
                                 @RequestParam("newPassword") String newPassword) {
        if (StringUtils.isEmpty(originalPassword) || StringUtils.isEmpty(newPassword)) {
            return "参数不能为空";
        }
        Integer loginUserId = (int) request.getSession().getAttribute("loginUserId");
        if (adminUserService.updatePassword(loginUserId, originalPassword, newPassword)) {
            //修改成功后清空session中的数据,前端控制跳转至登录页
            request.getSession().removeAttribute("loginUserId");
            request.getSession().removeAttribute("loginUser");
            request.getSession().removeAttribute("errorMsg");
            return ServiceResultEnum.SUCCESS.getResult();
        } else {
            return "修改失败";
        }
    }
 
    @PostMapping("/profile/name")
    @ResponseBody
    public String nameUpdate(HttpServletRequest request, @RequestParam("loginUserName") String loginUserName,
                             @RequestParam("nickName") String nickName) {
        if (StringUtils.isEmpty(loginUserName) || StringUtils.isEmpty(nickName)) {
            return "参数不能为空";
        }
        Integer loginUserId = (int) request.getSession().getAttribute("loginUserId");
        if (adminUserService.updateName(loginUserId, loginUserName, nickName)) {
            return ServiceResultEnum.SUCCESS.getResult();
        } else {
            return "修改失败";
        }
    }
 
    @GetMapping("/logout")
    public String logout(HttpServletRequest request) {
        request.getSession().removeAttribute("loginUserId");
        request.getSession().removeAttribute("loginUser");
        request.getSession().removeAttribute("errorMsg");
        return "admin/login";
    }
}

首页轮播图以及推荐宠物商品浏览以及模糊查看和分类查看等操作:

在这里插入图片描述
为你推荐蛋糕商品管理模块:
管理员可以对为你推荐蛋糕商品进行添加、修改、删除和浏览操作配置、配置好后用户端首页为你推荐蛋糕商品会显示最新的商品信息。
在这里插入图片描述

加入购物车和订单操作以及修改收货信息等.流程都是非常完善的

在这里插入图片描述

完整购买下单以及支付流程

在这里插入图片描述

模拟支付宝支付、这里是模拟的 直接支付成功

在这里插入图片描述

后台admin管理员数据维护模块:

在这里插入图片描述

后台主要功能设计:每个模块都有列表查询、添加、修改。删除等操作

在这里插入图片描述

轮播图配置

在这里插入图片描述

配置热销商品和喜欢商品等

在这里插入图片描述
商品类型灵活管理控制、此处配置前端用户就展示那些

商品详情配置管理列表

在这里插入图片描述
添加蛋糕商品、这个地方用的富文本编译器上传的商品信息、可以直接从淘宝等地方复制数据过来。
在这里插入图片描述

用户信息管理:

在这里插入图片描述

订单信息管理:订单信息流程主要有:用户模拟支付了以后配货、出库、订单完成、以及查看订单信息和查看收件人信息等功能

在这里插入图片描述

代码结构:idea、eclipse直接导入就可运行、

在这里插入图片描述

数据库结构:

在这里插入图片描述

获取源码:

大家点赞、收藏、关注、评论啦
🍅查看下方微信号获取联系方式 📝
🚀🚀🚀精彩系列推荐
Java毕设项目精品实战案例《1000套》
精彩专栏推荐订阅:在下方专栏

  • 8
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
本系统主要包括以下功能模块:个人中心、用户管理、商品分类管理、商品信息管理、系统管理、订单管理等模块,通过这些模块的实现能够基本满足日常蛋糕甜品商城管理的操作。本系统主要包括以下功能模块:个人中心、用户管理、商品分类管理、商品信息管理、系统管理、订单管理等模块,通过这些模块的实现能够基本满足日常蛋糕甜品商城管理的操作。本系统主要包括以下功能模块:个人中心、用户管理、商品分类管理、商品信息管理、系统管理、订单管理等模块,通过这些模块的实现能够基本满足日常蛋糕甜品商城管理的操作。本系统主要包括以下功能模块:个人中心、用户管理、商品分类管理、商品信息管理、系统管理、订单管理等模块,通过这些模块的实现能够基本满足日常蛋糕甜品商城管理的操作。本系统主要包括以下功能模块:个人中心、用户管理、商品分类管理、商品信息管理、系统管理、订单管理等模块,通过这些模块的实现能够基本满足日常蛋糕甜品商城管理的操作。本系统主要包括以下功能模块:个人中心、用户管理、商品分类管理、商品信息管理、系统管理、订单管理等模块,通过这些模块的实现能够基本满足日常蛋糕甜品商城管理的操作。本系统主要包括以下功能模块:个人中心、用
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

网顺技术团队

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值