• 基于javaweb的零食商城系统(java+ssm+jsp+mysql+easyui)


    基于javaweb的零食商城系统(java+ssm+jsp+mysql+easyui)

    运行环境

    Java≥8、MySQL≥5.7、Tomcat≥8

    开发工具

    eclipse/idea/myeclipse/sts等均可配置运行

    适用

    课程设计,大作业,毕业设计,项目练习,学习演示等

    功能说明

    20220519000610

    20220519000612

    20220519000613

    20220519000614

    20220519000615

    基于javaweb+jsp的零食商城系统(java+SSM+jsp+MySQL+EasyUI)

    系统主要实现的功能有:用户浏览商品、加入商品到购物车、登录注册、提交订单,会员中心修改个人信息、查看订单等。

    后台管理员登录后可以分角色添加管理员,不同角色有不同权限,可以管理用户信息、商品信息、订单信息,订单信息可以导出到excel。其中支付是模拟在线支付,从账户余额中扣费的,用户注册后自动设置余额为指定值。

    后台相关接口:

    /**

    • 后台相关接口

    */

    @Controller

    @RequestMapping(“/admin”)

    public class AdminController {

    private static final int rows = 10;

    @Autowired

    private AdminService adminService;

    @Autowired

    private OrderService orderService;

    @Autowired

    private UserService userService;

    @Autowired

    private GoodService goodService;

    @Autowired

    private TopService topService;

    @Autowired

    private TypeService typeService;

    @Autowired

    private SkuService skuService;

    /**

    • 管理员登录

    • @return

    */

    @GetMapping(“/login”)

    public String log() {

    return “/admin/login.jsp”;

    /**

    • 管理员登录

    • @return

    */

    @PostMapping(“/login”)

    public String login(Admins admin, HttpServletRequest request, HttpSession session) {

    if (adminService.checkUser(admin.getUsername(), admin.getPassword())) {

    session.setAttribute(“username”, admin.getUsername());

    return “redirect:typeList”;

    request.setAttribute(“msg”, “用户名或密码错误!”);

    return “/admin/login.jsp”;

    /**

    • 退出

    • @return

    */

    @RequestMapping(“/logout”)

    public String logout(HttpSession session) {

    session.removeAttribute(“admin”);

    return “/admin/login.jsp”;

    /**

    • 后台首页

    • @return

    */

    @RequestMapping(“/index”)

    public String index(HttpServletRequest request) {

    request.setAttribute(“msg”, “恭喜你! 登录成功了”);

    return “/admin/index.jsp”;

    /**

    • 类目列表

    • @return

    */

    @RequestMapping(“/typeList”)

    public String typeList(HttpServletRequest request) {

    request.setAttribute(“flag”, 1);

    request.setAttribute(“typeList”, typeService.getList());

    return “/admin/type_list.jsp”;

    /**

    • 类目添加

    • @return

    */

    @RequestMapping(“/typeAdd”)

    public String typeAdd(HttpServletRequest request) {

    request.setAttribute(“flag”, 1);

    return “/admin/type_add.jsp”;

    /**

    • 类目添加

    • @return

    • @throws Exception

    */

    @RequestMapping(“/typeSave”)

    public String typeSave(Types type, MultipartFile file,

    @RequestParam(required=false, defaultValue=“1”) int page) throws Exception {

    type.setCover(UploadUtil.upload(file));

    typeService.add(type);

    return “redirect:typeList?flag=1&page=”+page;

    /**

    • 类目更新

    • @return

    */

    @RequestMapping(“/typeEdit”)

    public String typeEdit(int id, HttpServletRequest request) {

    request.setAttribute(“flag”, 1);

    request.setAttribute(“type”, typeService.get(id));

    return “/admin/type_edit.jsp”;

    /**

    • 类目更新

    • @return

    • @throws Exception

    */

    @RequestMapping(“/typeUpdate”)

    public String typeUpdate(Types type, MultipartFile file,

    @RequestParam(required=false, defaultValue=“1”) int page) throws Exception {

    if (Objects.nonNull(file) && !file.isEmpty()) {

    type.setCover(UploadUtil.upload(file));

    typeService.update(type);

    return “redirect:typeList?flag=1&page=”+page;

    /**

    • 类目删除

    • @return

    */

    @RequestMapping(“/typeDelete”)

    public String typeDelete(Types type,

    @RequestParam(required=false, defaultValue=“1”) int page) {

    typeService.delete(type);

    return “redirect:typeList?flag=1&page=”+page;

    /**

    • sku列表

    • @return

    */

    @RequestMapping(“/skuList”)

    public String skuList(@RequestParam(required=false, defaultValue=“0”)byte status, HttpServletRequest request) {

    request.setAttribute(“flag”, 2);

    request.setAttribute(“status”, status);

    request.setAttribute(“skuList”, status>0 ? skuService.getSizeList() : skuService.getColorList());

    return “/admin/sku_list.jsp”;

    /**

    • sku添加

    • @return

    */

    @RequestMapping(“/skuSave”)

    public String skuSave(String name, int status) {

    if(status > 0) {

    skuService.addSize(name);

    }else {

    skuService.addColor(name);

    return “redirect:skuList?status=”+status;

    /**

    • sku删除

    • @return

    */

    @RequestMapping(“/skuDelete”)

    public String skuDelete(int id, int status) {

    if(status > 0) {

    skuService.deleteSize(id);

    }else {

    skuService.deleteColor(id);

    return “redirect:skuList?status=”+status;

    /**

    • 产品列表

    • @return

    */

    @RequestMapping(“/goodList”)

    public String goodList(@RequestParam(required=false, defaultValue=“0”)byte status, HttpServletRequest request,

    @RequestParam(required=false, defaultValue=“1”) int page) {

    request.setAttribute(“flag”, 3);

    request.setAttribute(“page”, page);

    request.setAttribute(“status”, status);

    request.setAttribute(“goodList”, goodService.getList(status, page, rows));

    request.setAttr

  • 相关阅读:
    vue3项目经验分享
    Nginx配置全局https
    基于STM32G431嵌入式学习笔记——七、定时器定时
    SpringBoot环境MongoDB分页+去重+获取去重后的原始数据
    浏览器渲染原理
    线程池的简单理解
    SpringBoot 前端406 后端Could not find acceptable representation
    Day725.Java为何需要模块化 -Java8后最重要新特性
    使用dockerfile能力构建制品并打包容器
    java毕业设计农田节水灌溉监测系统源码+lw文档+mybatis+系统+mysql数据库+调试
  • 原文地址:https://blog.csdn.net/m0_69590785/article/details/127563049