第五章,java超市会员管理系统(后端)

news/2024/9/18 14:54:33/ 标签: java, 开发语言, intellij-idea, 后端

高级编程

java_2">第五章,java超市会员管理系统(后端
一,项目概述

本项目旨在开发一个超市会员管理系统,帮助超市管理会员信息、积分、优惠活动等。系统将提供用户友好的界面,方便超市员工进行日常操作。

二,功能需求
  • 积分积累
  • 积分兑换
  • 查询剩余积分
  • 开卡(送100积分)
  • 退出系统
三,实现

分为四个部分,

用户会员卡类(User)

功能实现类(Business)

初始化数据(Datas)

测试类(test)

1,创建用户会员卡类(User)
  • 首先创建一个用户会员卡类,包含,用户名(name),卡号(idCard),密码(pwd),注册日期(registerDate),积分(point)

  • java">public class User {private String name; //用户名private String idCard; //卡号private String pwd; //密码private String registerDate; //注册日期private  int point; //积分//无参构造方法public User() {}//有参构造方法public User(String name, String idCard, String pwd, String registerDate, int point) {this.name = name;this.idCard = idCard;this.pwd = pwd;this.registerDate = registerDate;this.point = point;}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getIdCard() {return idCard;}public void setIdCard(String idCard) {this.idCard = idCard;}public String getPwd() {return pwd;}public void setPwd(String pwd) {this.pwd = pwd;}public String getRegisterDate() {return registerDate;}public void setRegisterDate(String registerDate) {this.registerDate = registerDate;}public int getPoint() {return point;}public void setPoint(int point) {this.point = point;}
    }
2,创建功能实现类(Business)

在这里插入图片描述

这里用到了do-while和switch语句来对所要操作的具体功能进行选择

以下是各个功能模块的部分代码:

1.首先实现开卡功能,用户输入注册用户名和会员卡密码,由系统自动生成会员卡号(开卡即送100会员积分)

  • java">User user=new User();
    System.out.println("请输入注册用户名:");
    String name=sc.next();
    System.out.println("请输入注册密码:");
    pwd=sc.next();
    //生成八位随机卡号
    Random random=new Random();
    int randomNumber=random.nextInt(99999999);
    String formattedNumber=String.format("%8d",randomNumber);
    user.setName(name);
    user.setIdCard(formattedNumber);
    user.setPwd(pwd);
    user.setPoint(100);
    Date date1=new Date();
    user.setRegisterDate(new SimpleDateFormat("yyyy-MM-dd").format(date1));
    list.add(user);
    System.out.println("恭喜您,开通会员卡成功,系统赠送您100积分!您的会员卡号为:" + user.getIdCard());
    

2.积分累计功能

  • java">System.out.println("请输入您的会员卡号:");
    idCard=

http://www.ppmy.cn/news/1525263.html

相关文章

java重点学习-线程的并发安全(2)

九 线程的并发安全 9.7 ReentrantLock的实现原理 ReentrantLock表示支持重新进入的锁,调用lock方法获取了锁之后,再次调用 lock,是不会再阻塞ReentrantLock主要利用CASAQS队列来实现支持公平锁和非公平锁,在提供的构造器的中无参…

[LitCTF 2024]SAS - Serializing Authentication

题目提示反序列化 源码 <?phpclass User {public $username;public $password;function __construct($username, $password) {$this->username $username;$this->password $password;}function isValid() { return $this->username admin && $this-&g…

Python数据处理利器,pivot与melt让表格变得灵活

大家好&#xff0c;在数据分析和处理过程中&#xff0c;数据的重塑是一个非常常见且重要的操作。数据重塑能够从不同的角度观察数据&#xff0c;以更符合分析需求的方式来呈现数据。在Python的Pandas库中&#xff0c;pivot和melt是两种强大的数据重塑工具&#xff0c;能够轻松地…

软件测试学习笔记丨Postman实战练习

本文转自测试人社区&#xff0c;原文链接&#xff1a;https://ceshiren.com/t/topic/32096#h-22 二、实战练习 2.1 宠物商店接口文档分析 接口文档&#xff1a;http://petstore.swagger.io &#xff0c;这是宠物商店接口的 swagger 文档。 2.1.1 什么是 swagger Swagger 是…

数学基础 -- 线性代数之奇异值

奇异值与其应用 1. 奇异值定义 对于任意的矩阵 A A A&#xff08;可以是方阵或非方阵&#xff09;&#xff0c;存在三个矩阵 U U U、 Σ \Sigma Σ 和 V V V&#xff0c;使得&#xff1a; A U Σ V T A U \Sigma V^T AUΣVT 其中&#xff1a; U U U 是一个 m m m \ti…

使用 BentoML快速实现Llama-3推理服务

介绍 近年来&#xff0c;开源大模型如雨后春笋般涌现&#xff0c;为自然语言处理领域带来了革命性的变化。从文本生成到代码编写&#xff0c;从机器翻译到问答系统&#xff0c;开源大模型展现出惊人的能力&#xff0c;吸引了越来越多的开发者和企业投身其中。 然而&#xff0…

lvs命令介绍

华子目录 lvs命令介绍lvs软件ipvsadm相关信息ipvsadm命令lvs集群中的增删改管理集群服务lvs中的增删改增加单个删除全部删除清空计数器修改实例 管理集群中RS的增删改增加删除修改 lvs命令介绍 lvs软件ipvsadm相关信息 程序包&#xff1a;ipvsadm服务名&#xff1a;ipvsadm.s…

LDR6020,单C口OTG,充放一体新潮流!

PD&#xff08;Power Delivery&#xff09;芯片实现单Type-C接口输入和输出OTG&#xff08;On-The-Go&#xff09;功能&#xff0c;主要是通过支持USB Power Delivery规范和OTG功能的特定硬件和软件设计来实现的。以下是对这一过程的具体解释&#xff1a; 一、PD芯片基础功能 …

vue3 动态 svg 图标使用

前言 在做后台管理系统中,我们经常会用到很多图标,比如左侧菜单栏的图标 当然这里 element-ui 或者 element-plus 组件库都会提供图标 但是在有些情况下 element-ui 或者 element-plus 组件库提供的图标满足不了我们的需求时,这个时候我们就需要自己去网上找一些素材或者…

【Tools】Prompt Engineering简介

摇来摇去摇碎点点的金黄 伸手牵来一片梦的霞光 南方的小巷推开多情的门窗 年轻和我们歌唱 摇来摇去摇着温柔的阳光 轻轻托起一件梦的衣裳 古老的都市每天都改变模样 &#x1f3b5; 方芳《摇太阳》 大模型中的Prompt Engineering是指为了提高大模型在特定任…

Python教程(二十) : 十分钟入门【PyQt6】

文章目录 专栏列表环境准备1 安装 Python2 安装 PyQt6 创建 PyQt6 项目1 创建项目目录2 创建主 Python 文件 代码书写测试流程1 导入 PyQt6 模块2 创建主窗口类3 创建应用程序实例并运行 核心解析&#xff1a;PyQt6 中的模块示例代码&#xff1a; PyQt6 常用的控件1. QPushButt…

python selenium 显示等待 + EC

python selenium 显示等待 EC expected_conditions是selenium的一个模块&#xff0c;主要用于对页面元素的加载进行判断&#xff0c;包括元素是否存在&#xff0c;可点击等等。 presence_of_element_located(locator)方法&#xff1a;判断一个元素存在于页面中&#xff0c;存…

OpenHarmony(鸿蒙南向开发)——轻量系统芯片移植指南(二)

往期知识点记录&#xff1a; 鸿蒙&#xff08;HarmonyOS&#xff09;应用层开发&#xff08;北向&#xff09;知识点汇总 鸿蒙&#xff08;OpenHarmony&#xff09;南向开发保姆级知识点汇总~ OpenHarmony&#xff08;鸿蒙南向开发&#xff09;——轻量系统芯片移植指南(一) Op…

2024-09-11 gdb

回顾 静态库安装指令 sudo yum install -y glibc-static sudo yum install -y libstdc-staticLinux调试器&#xff1a;gdb debug->添加调试信息 release->取消调试信息 gcc/g默认是release&#xff0c;debug&#xff1a;-g 1. gdb的基本命令 l(list) 10 main code.c…

无人机动力系统设计之电调芯片参数选型

无人机动力系统设计之电调芯片参数选型 1. 源由2. 关键因素2.1 电压范围2.2 电流处理能力2.3 控制方式2.4 PWM输出与分辨率2.5 通讯接口2.6 保护功能2.7 支持霍尔传感器与无传感器模式2.8 集成度与外围器件2.9 效率与散热2.10 市场供应与成本 3. 因素阐述3.1 PWM工作频率3.1.1 …

开源FormCreate低代码表单组件的配置项和事件的详解

在使用开源FormCreate低代码表单时&#xff0c;您可以通过各种 props 来定制表单的行为和外观。这些参数允许您控制表单的生成规则、配置选项、双向数据绑定等&#xff0c;为复杂的表单场景提供了强大的支持。 源码地址: Github | Gitee FormCreate组件Props 以下是常用的 pr…

Ubuntu 安装最新 Google Chrome 浏览器

谷歌浏览器使用简单并且用户友好&#xff0c;使用它浏览互联网愉悦至极。许多用户喜欢 Chrome&#xff0c;因为它加载网页又快又流畅。Chrome 提供强大的安全功能&#xff0c;帮助用户保持在线安全。Google Chrome 官方提供了一个 Debian 软件包存储库&#xff0c;基于 Debian …

reg和wire的区别 HDL语言

文章目录 数据类型根本区别什么时候要定义wire小结 数据类型 HDL语言有三种数据类型&#xff1a;寄存器数据类型&#xff08;reg&#xff09;、线网数据类型&#xff08;wire&#xff09;、参数数据类型&#xff08;parameter&#xff09;。 根本区别 reg&#xff1a; 寄存器…

Stable Diffusion绘画 | 生成高清多细节图片的各个要素

在数字艺术领域&#xff0c;AI绘画技术已经逐渐成为艺术创作的新趋势。Stable Diffusion作为一款领先的AI绘画工具&#xff0c;以其生成高清多细节图片的能力备受关注。现在&#xff0c;让我们一起来探索Stable Diffusion生成高清多细节图片的各个要素&#xff0c;开启你的创意…

【鸿蒙】HarmonyOS NEXT星河入门到实战5-基础语法

目录 一、字符串拼接 1.1 常规字符串拼接 1.2 模板字符串hello(符号在键盘的tab上面) 二、类型转换 &#xff08;数字和字符串&#xff09; 2.1 字符串转数字 2.2 数字转字符串 三、交互 3.1 点击事件 3.2 状态管理 3.3 计数器案例 四、运算符 4.1 算数运算符 4.2 赋…