基于JAVA SSM框架和JSP的超市小卖部管理系统设计

摘要

        随着时代的发展,传统的超市购物方式已经不能满足人们的需求,对于顾客来说,排队购物和支付购物费用的问题亟待解决。对于实体超市来说,他们面临着网上购物的竞争压力,作为超市经理,他们要降低成本,节约人力,方便顾客购物和计算,因此提出了网上超市系统的设计和开发。本文分析了目前超市的收费模式,提出了网上超市无人售货系统的设计与开发,客户使用网站系统进行支付,改变原来的收费方式,实现自助购买、及时支付、实现实时查询。不仅可以节省超市人力,还可以节省顾客等待结算的时间。随着网络技术的发展和普及,人们的生活发生了迅速的变化。特别是计算机在经济和社会各个领域的应用,为了使消费者的网上购物过程简单、方便、安全、快捷,网上购物已经成为一种新的流行购物方式。

实现的功能

本系统分为普用户、管理员、销售员、采购员四种角色。

功能应该包括:用户登录和注册、用户管理、类目管理、商品管理、订单管理、数据统计等功能。其中普通用户实现注册登录、分类浏览、下单购买、管理个人信息等功能。

注册、登录:未注册用户可以注册,有了账号后可以登录网站;

用户管理:包括管理系统用户和注册用户,进行增删改查;

类目管理:实现对商品类目的管理,可以查询、增加、修改、删除类目;

商品管理:实现对商品的管理,可以查询、增加、修改、删除商品;

订单管理:对用户购买商品的订单进行管理;

数据统计:实现对商品的销售情况进行数据统计,都是用图形进行分析。

使用的技术

后端:JAVA开发语言,SSM框架,MySql数据库

前端:jsp页面,bootstrap框架

部分代码展示

/*** 购物车*/
@Controller
@RequestMapping("/car")
public class CarController {@Autowiredprivate CarService carService;@Autowiredprivate ItemService itemService;@RequestMapping("/exAdd")@ResponseBodypublic String exAdd(Car car, HttpServletRequest request){JSONObject js = new JSONObject();Object attribute = request.getSession().getAttribute(Consts.USERID);if(attribute==null){js.put(Consts.RES,0);return js.toJSONString();}//保存到购物车Integer userId = Integer.valueOf(attribute.toString());car.setUserId(userId);Item item = itemService.load(car.getItemId());String price = item.getPrice();Double valueOf = Double.valueOf(price);car.setPrice(valueOf);if(item.getZk()!=null){valueOf = valueOf*item.getZk()/10;BigDecimal bg = new BigDecimal(valueOf).setScale(2, RoundingMode.UP);car.setPrice(bg.doubleValue());valueOf = bg.doubleValue();}Integer num = car.getNum();Double t = valueOf*num;BigDecimal bg = new BigDecimal(t).setScale(2, RoundingMode.UP);double doubleValue = bg.doubleValue();car.setTotal(doubleValue+"");carService.insert(car);js.put(Consts.RES,1);return js.toJSONString();}/*** 转向我的购物车页面*/@RequestMapping("/findBySql")public String findBySql(Model model,HttpServletRequest request){Object attribute = request.getSession().getAttribute(Consts.USERID);if(attribute==null){return "redirect:/login/toLogin";}Integer userId = Integer.valueOf(attribute.toString());String sql = "select * from car where user_id="+userId+" order by id desc";List<Car> list = carService.listBySqlReturnEntity(sql);model.addAttribute("list",list);return "car/car";}/*** 删除购物车*/@RequestMapping("/delete")@ResponseBodypublic String delete(Integer id){carService.deleteById(id);return "success";}
}

 演示视频

基于JAVA SSM框架和JSP的超市管理系统设计

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/72543.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何自启动MySQL服务与解决MySQL字符集问题

1、自启动mysql服务 &#xff08;1&#xff09;查看mysql是否自启动&#xff08;默认自启动&#xff09; systemctl list-unit-files|grep mysqld.service &#xff08;2&#xff09;如不是enabled可以运行如下命令设置自启动 systemctl enable mysqld.sercice2、字符集…

SpringBoot 博客网站

SpringBoot 博客网站 系统功能 登录注册 博客列表展示 搜索 分类 个人中心 文章分类管理 我的文章管理 发布文章 开发环境和技术 开发语言&#xff1a;Java 使用框架: SpringBoot jpa H2 Spring Boot是一个用于构建Java应用程序的开源框架&#xff0c;它是Spring框架的一…

Android WebView 使用指南强化版

Android WebView介绍、优势和使用教程 WebView是Android平台中一个非常重要的控件&#xff0c;它可以用来在Android应用中显示网页。WebView使用WebKit引擎来渲染网页&#xff0c;因此可以很好地兼容Web标准。 WebView的介绍 WebView是一个Android控件&#xff0c;它可以用来…

微信小程序视频播放

微信小程序视频播放 官方地址&#xff1a; https://developers.weixin.qq.com/miniprogram/dev/component/video.html binderror 视频错误信息 show-play-btn 是否显示视频底部控制栏的播放按钮 show-fullscreen-btn 是否显示全屏按钮 controls 是否显示默认播放控件 enable-p…

Mysql和Oracle的语法区别?

Mysql和Oracle是两种不同的关系型数据库。 MySQL通常在中小型应用程序、Web应用程序和小型企业中广泛使用&#xff0c;因为它易于学习和部署&#xff0c;而且成本较低。 Oracle数据库通常用于大型企业和复杂的企业级应用程序&#xff0c;因为它提供了高度可扩展性、高可用性…

Unity——脚本与导航系统

Unity内置了一个比较完善的导航系统&#xff0c;一般称为Nav Mesh&#xff08;导航网格&#xff09;&#xff0c;用它可以满足大多数游戏中角色自动导航的需求。 一、导航系统相关组件 Unity的导航系统由以下几个部分组成&#xff1a; Nav Mesh。Nav Mesh与具体的场景关联&…

终端登录github两种方式

第一种方式 添加token&#xff0c;Setting->Developer Setting 第二种方式SSH 用下面命令查看远程仓库格式 git remote -v 用下面命令更改远程仓库格式 git remote set-url origin gitgithub.com:用户名/仓库名.git 然后用下面命令生成新的SSH秘钥 ssh-keygen -t ed2…

Java基础学习笔记-1

前言 Java 是一门强大而广泛应用的编程语言&#xff0c;它的灵活性和跨平台特性使其成为许多开发者的首选。无论您是刚刚入门编程&#xff0c;还是已经有一些编程经验&#xff0c;掌握 Java 的基础知识都是构建更复杂程序的关键。 本学习笔记旨在帮助您深入了解 Java 编程语言…

代码随想录算法训练营Day56 || ● 583. 两个字符串的删除操作 ● 72. 编辑距离

今天接触到了真正的距离&#xff0c;但可以通过增删改操作来逼近。 问题1&#xff1a;583. 两个字符串的删除操作 - 力扣&#xff08;LeetCode&#xff09; 给定两个单词 word1 和 word2 &#xff0c;返回使得 word1 和 word2 相同所需的最小步数。 每步 可以删除任意一个字…

Mysql学习之——增删改查语句

Mysql的增删改查 一、数据库操作 1.查询所有数据库 show databases&#xff1b;2.使用某个数据库 如果我已经通过show databases知道有a、b、c三个数据库&#xff0c;那我想用数据库a怎么办呢? use 数据库名&#xff1b; eg:use a;3.查询当前使用的数据库 如果我不知道当…

请大家一定不要像我们公司这样打印log日志

前言 最近接手了公司另一个项目&#xff0c;熟悉业务和代码苦不堪言。 我接手一个新项目&#xff0c;有个习惯&#xff0c;就是看结构&#xff0c;看数据库&#xff0c;搜代码。 其中搜代码是我个人这些年不知不觉形成的癖好&#xff0c;我下面给大家展示下这个小癖好。 正文 我…

vue3:3、项目目录和关键文件

关于vsvode的更改 <!-- 加上setup允许在script中直接编写组合式api --> <script setup> // 组件引入后直接用 import HelloWorld from ./components/HelloWorld.vue import TheWelcome from ./components/TheWelcome.vue</script><!-- 1、js放在最上面&am…

linux安装postgresql13

linux安装postgresql13 1. 安装2. 数据库初始化3.配置远程访问3.1 修改配置文件3.2 重启服务3.3 测试连接 1. 安装 linux下载链接&#xff1a;https://www.postgresql.org/download/linux/ubuntu/安装命令sudo sh -c echo "deb https://apt.postgresql.org/pub/repos/apt…

Linux 中的 chmod 命令及示例

在 Unix 操作系统中,chmod命令用于更改文件的访问模式。该名称是change mode的缩写。其中规定每个文件和目录都有一组权限来控制权限,例如谁可以读取、写入或执行该文件。其中权限分为三类:同时读、写和执行,用“r”、“w”和“x”表示。这些字母组合在一起形成一组用户的特…

20230908_python练习_服务端与客户端数据交互

用户可以通过简单操作进行服务端数据交互&#xff0c;通过简单的sql语句直接获取EXCEL表&#xff0c;可以用来作为交互的基础。主要涉及三部分&#xff1a; 1:数据库存储表结构 --日志记录表结构 create table shzc.yytowz_service_title (leixing varchar2(18),ziduan1 v…

软件测试/测试开发丨学会与 AI 对话,高效提升学习效率

点此获取更多相关资料 简介 ChatGPT 的主要优点之一是它能够理解和响应自然语言输入。在日常生活中&#xff0c;沟通本来就是很重要的一门课程&#xff0c;沟通的过程中表达越清晰&#xff0c;给到的信息越多&#xff0c;那么沟通就越顺畅。 和 ChatGPT 沟通也是同样的道理&…

单目标应用:基于成长优化算法(Growth Optimizer,GO)的微电网优化调度MATLAB

一、微网系统运行优化模型 微电网是由分布式电源、储能装置和能量转换装置等组成的小型发配电系统&#xff0c;具有成本低、电压低、污染小等特点。由于环保和能源压力&#xff0c;清洁可再生能源和分布式能源工业发展潜力巨大。微电网控制器可实现对电网的集中控制&#xff0…

搭建RabbitMQ消息服务,整合SpringBoot实现收发消息

作者主页&#xff1a;Designer 小郑 作者简介&#xff1a;3年JAVA全栈开发经验&#xff0c;专注JAVA技术、系统定制、远程指导&#xff0c;致力于企业数字化转型&#xff0c;CSDN博客专家&#xff0c;蓝桥云课认证讲师。 目录 一、前言1.1 什么是消息队列1.2 RabbitMQ 是什么1.…

Linux:【Mysql】Centos7安装mysql8.0

目录 一、环境及版本介绍 二、安装前准备 三、开始安装 一、环境及版本介绍 Linux环境&#xff1a;Centos7 Mysql版本&#xff1a;8.0.26 安装时使用的用户&#xff1a;root 二、安装前准备 1.1、下载Centos7镜像 网上寻找相关资源即可 1.2、下载VMwareWorkstation Pro并…

【LeetCode-中等题】208. 实现 Trie (前缀树)

文章目录 题目方法一&#xff1a;利用数组构建26叉树方法二&#xff1a;利用哈希表构建26叉树 题目 方法一&#xff1a;利用数组构建26叉树 插入图示&#xff1a; 全搜索和前缀搜索&#xff1a; 注意&#xff1a;全局匹配匹配完直接返回插入时的标志位 而前缀匹配时&#xff…