首页 > 编程语言 >基于Java的零食销售系统

基于Java的零食销售系统

时间:2025-01-22 13:27:38浏览次数:3  
标签:基于 Java return Result caiwuService import caiwu public 零食

一、系统背景与意义

随着电子商务的快速发展和消费者对零食需求的多样化、个性化提升,构建一个基于Java的零食销售系统显得尤为重要。该系统能够打破传统零售模式的地理和时间限制,满足消费者随时随地购买零食的需求,同时也为商家提供了更广阔的市场和更多的潜在客户。

二、系统架构与技术选型

后端开发:系统采用Java作为后端开发语言,确保了系统的稳定性和可扩展性。后端框架可以选择SSM或Spring Boot。SSM框架(Spring+Spring MVC+MyBatis)提供了一种分层的方式,通过模型封装应用数据,视图负责显示数据,控制器处理用户输入并调用相应的模型对象进行数据处理。而Spring Boot则旨在简化Spring应用程序的创建和开发过程,通过大量默认配置来简化开发流程。
前端开发:前端展示模块可以采用用户友好的界面设计,提供流畅的购物体验。前端框架可以选择Vue.js等,实现前后端分离,提高开发效率和可维护性。同时,也可以利用uniapp框架开发微信小程序,实现多端统一。
数据库管理:系统使用MySQL作为数据库管理系统,保证了数据的安全性和可靠性。MySQL以其高效性、稳定性和易用性在多种应用领域中发挥着核心作用,特别是在Web应用开发中。通过合理的数据结构设计,如用户表、商品表、订单表等,可以保证系统的稳定性和可扩展性。

部分代码

package com.example.controller;

import cn.hutool.core.util.StrUtil;
import cn.hutool.crypto.SecureUtil;
import com.example.common.Result;
import com.example.common.ResultCode;
import com.example.entity.Caiwu;
import com.example.exception.CustomException;
import com.example.service.CaiwuService;
import com.example.utils.MapWrapperUtils;
import com.example.utils.jwt.JwtUtil;
import com.example.vo.CaiwuVo;
import org.springframework.beans.BeanUtils;
import org.springframework.web.bind.annotation.*;

import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

@RestController
@RequestMapping(value = "/caiwu")
public class CaiwuController {

    @Resource
    private CaiwuService caiwuService;

    @PostMapping
    public Result<Caiwu> add(@RequestBody CaiwuVo caiwu) {
        caiwuService.add(caiwu);
           return Result.success(caiwu);
    }
	
	

    @PostMapping("/deleteList")
    public Result<Caiwu> deleteList(@RequestBody CaiwuVo caiwu) {
        caiwuService.deleteList(caiwu.getList());
        return Result.success();
    }

    @DeleteMapping("/{id}")
    public Result delete(@PathVariable Long id) {
        caiwuService.delete(id);
        return Result.success();
    }

    @PutMapping
    public Result update(@RequestBody CaiwuVo caiwu) {
        caiwuService.update(caiwu);
        return Result.success();
    }

    @GetMapping("/{id}")
    public Result<Caiwu> detail(@PathVariable Integer id) {
        Caiwu caiwu = caiwuService.findById(id);
        return Result.success(caiwu);
    }

    @GetMapping
    public Result<List<Caiwu>> all() {
        return Result.success(caiwuService.list());
    }

    @PostMapping("/page")
    public Result<CaiwuVo> page(@RequestBody CaiwuVo caiwuVo) {
        return Result.success(caiwuService.findPage(caiwuVo));
    }
	    @PostMapping("/login")
    public Result login(@RequestBody Caiwu caiwu, HttpServletRequest request) {
        if (StrUtil.isBlank(caiwu.getZhanghao()) || StrUtil.isBlank(caiwu.getMima())) {
            throw new CustomException(ResultCode.PARAM_LOST_ERROR);
        }
        Caiwu login = caiwuService.login(caiwu);
//        if(!login.getStatus()){
//            return Result.error("1001","状态限制,无法登录系统");
//        }
        if(login != null) {
            HashMap hashMap = new HashMap();
            hashMap.put("user", login);
            Map<String, Object> map = MapWrapperUtils.builder(MapWrapperUtils.KEY_USER_ID,caiwu.getId());
            String token = JwtUtil.creatToken(map);
            hashMap.put("token", token);
            return Result.success(hashMap);
        }else {
            return Result.error();
        }
    }
    @PutMapping("/updatePassword")
    public Result updatePassword(@RequestBody Caiwu info, HttpServletRequest request) {
        Caiwu caiwu = caiwuService.findById(info.getId());
        String oldPassword = SecureUtil.md5(info.getMima());
        if (!oldPassword.equals(caiwu.getMima())) {
            return Result.error(ResultCode.PARAM_PASSWORD_ERROR.code, ResultCode.PARAM_PASSWORD_ERROR.msg);
        }
        info.setMima(SecureUtil.md5(info.getNewPassword()));
        Caiwu caiwu1 = new Caiwu();
        BeanUtils.copyProperties(info, caiwu1);
        caiwuService.update(caiwu1);
        return Result.success();
    }
}

效果图

请添加图片描述

请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

三、系统功能模块

用户模块:支持用户登录、注册,以及修改个人信息如名称、密码等。用户还可以管理自己的收货地址、查看购买记录等。
商品模块:用户可以浏览商品,查看商品的详细信息、价格、库存等。管理员则负责添加、删除或修改商品信息、价格和库存。
购物车模块:用户可以将选中的商品添加到购物车中,修改商品数量或移除商品。在购物车中,用户可以查看商品列表、总价等信息,并生成订单进行结算。
订单模块:用户可以查看自己的订单列表,包括待支付、已支付、待发货、已发货、已完成等状态的订单。用户可以进行在线支付或取消订单。管理员则可以查看所有订单的状态,修改或删除订单。
分类管理模块:管理员可以管理商品分类,新增、删除或修改分类,以便更好地组织商品和方便用户查找。
管理员管理模块:管理员可以管理其他管理员信息,查看权限配置等,确保系统的安全和管理效率。

四、系统优势与特点

跨平台性:系统支持多种操作系统和浏览器,用户可以在不同的设备上访问和使用系统。
可扩展性:系统采用模块化设计,可以方便地添加新的功能模块或扩展现有功能。
安全性:系统采用多种安全措施,如用户身份验证、数据加密等,确保用户数据的安全和隐私。
易用性:系统界面简洁明了,操作流程简单易懂,提供了良好的用户体验。
综上所述,基于Java的零食销售系统是一个功能全面、性能稳定、易于扩展和安全的电子商务平台。它不仅能够满足消费者的在线购物需求,还能为商家提供高效的管理和销售平台。

标签:基于,Java,return,Result,caiwuService,import,caiwu,public,零食
From: https://blog.csdn.net/qq3828614760/article/details/145299225

相关文章