数据库小项目——叮叮移动业务大厅(三层架构+MySQL数据库)

源码已上传至资源

该项目主要使用技术为MySQL数据库,其中也包含了一些对于文件的写入和读取操作。项目结构采用三层架构,后端的业务逻辑清晰明了。

1.项目结构

项目采用控制台版,前端业务在java包下,每个业务单独成块。若想要GUI界面化,可在java包下扩展

项目结构采用三层架构模式

如下:

  • lib包负责jar包的导入
  • java包负责前端的业务逻辑
  • controller层负责数据的控制响应
  • service层负责数据的业务逻辑处理
  • dao层负责对数据库的访问
  • pojo包负责实体类
  • util包负责工具类
  • test包负责测试类

cd5a2019a2654c28a1db8767431e05d5.png 

2.项目业务说明

叮叮移动业务大厅主要有6大业务:登录、注册、使用叮叮、话费充值、资产说明、退出系统等,其中使用叮叮又分5大业务:本月账单查询、套餐余量查询、打印消费账单、套餐变更、办理退网等

首先只有登录成功后才可进入使用叮叮,话费充值功能

f536ff9f75754da6bf449bfcad1bb0be.jpg

 如果是第一次使用我们的叮叮,则需要输入"2"进行用户注册,输入信息注册成功后会在user₋bill包下生成一个文件.txt,用于账单记录

4e1e46e568ab46d69b03427dda648524.jpg

2cbe76a0af2b4cadb1cb01d548083a2d.jpg 

即使用户没有注册登录,在我们的业务大厅界面也可以输入"5"来查询到我们的套餐类型,我们的套餐类型一共分为四种,分别是"话痨套餐"、"网虫套餐"、"超人套餐"、"超出套餐计费",用户可以根据自己的需求来选择适合自己的套餐

86bf056ae0954392846ef375c012514f.jpg 

当用户需要话费充值时,可以在业务大厅输入"4"进行花费充值,在充值完毕后,会显示当前话费的余额,并将其记录到账单文件中

325ea5d37a694b9c8233e610023e677a.jpg

 54897c926fd447edb56af40a585fd5b0.jpg

 

当然用户想要进行更多的消费操作,可以在登录完成后,输入"3"转到"使用叮叮"服务

输入"1"可以查看本月的充值账单

8a2892a9bd4e47b8b0dea5f027c93f88.jpg

 输入"2"可以查询本月的套餐余量

d91dff60e16a47bdab924664f13bf506.jpg

 输入"3"可以查看到账单的具体详情

70a40777b03c4f85b801c1b606d7709d.jpg

 输入"4"可以进行套餐变更

7c3a34bbf60d465faeb0ac28037a39fb.jpg

 输入"5"可以办理退网,退网之后该用户被删除

cd196697ea52412ea43a6f00f23fe28e.jpg

 007ba55130254871a436aa54a0266afc.jpg 

3.部分代码演示

这次展示的是登录业务的代码

首先前端传来数据给controller层

8792ceedd8594eb380e09ed28af3b573.png

 controller层接受数据传递给service层,最后再用Result统一响应结果给前端

ccc2769657af4395a2f90bed481c7d86.png

9958e3ab3bb742dc860b70fe566f199f.png 

 service层接受controller层传递的数据,并对数据进行处理,将符合的数据传递给dao层

0f570af75da54a8d815ad85aa4ef0ce8.png

 dao层接受数据并访问数据库,将访问的结果再响应给service层,service层再响应给controller层

a51082fc49db46caa140b190fed23448.png

 

 

 

 

 

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

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

相关文章

Day05-Grafana的基本应用与配置

Day05-Grafana的基本应用与配置 1. Grafana概述2. Grafana实战2.1 环境准备2.2 使用流程1)部署grafana 9.3.62)web页面访问3)配置zbx插件4)配置grafana的数据源5)web: Grafana web页面添加与配置图形dashboard,仪表盘6…

每日一练2024.5.24(补2024.5.26)

题目: 给你一个正整数 n ,生成一个包含 1 到 n2 所有元素,且元素按顺时针顺序螺旋排列的 n x n 正方形矩阵 matrix 。 示例 1: 输入:n 3 输出:[[1,2,3],[8,9,4],[7,6,5]]示例 2: 输入&#x…

李良济中医馆荣获天猫健康中药行业“2023年度潜力中医馆”!

李良济集团旗下中医电商品牌李良济中医馆,凭借其在行业中持续提升的竞争力,荣获天猫健康中药行业“2023年度潜力中医馆”称号。 百年品牌,品质信得过 李良济成立于1914年,百余年来,恪守“良心良药,济世济人…

centos7和centos8安装mysql5.6 5.7 8.0

https://dev.mysql.com/downloads/repo/yum/ 注意构造下http://repo.mysql.com/mysql-community-release-el*-*.noarch.rpm 【以centos7为例】 安装mysql5.6 wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm rpm -ivh mysql-community-release-el7-5…

byzer plugin install log

离线插件参考地址: Byzer Documentation 离线安装方式(错误过程记录): 参考文档:https://docs.byzer.org/#/byzer-lang/zh-cn/extension/README Byzer-lang 支持插件安装,删除,获取列表等。安装…

hcip—VLAN实验

目录 实验拓扑: 实验目的: 实验思路: 实验步骤: 1.创建VLAN 2.将接口放进相应VLAN当中,并配置接口类型(hybrid口配置撕tag表) 3.配置路由器接口 4.配置DHCP服务 pc1 ping pc4的过程分析…

linux下的docker使用

docker是什么,docker翻译过来的意思就是码头工人,顾名思义,docker本质上就是一个搬运工,只不过从搬运货物改成了搬运程序,使搬运的不同的程序能够独立的运行在码头上的不同容器内,互不干扰,而他…

“腾讯云 AI 代码助手”体验

一、“腾讯云 AI 代码助手”体验 1、注册账号并进行实名认证 2、进入开发环境 3、体验javascript简单函数 代码如下: //请写一个两个日期计算的函数 function dateDiff(date1, date2) {return date2.getTime() - date1.getTime(); } var date1 new Date("2…

智享无人直播系统(三代)融合AI智能互动,成就无人直播行业的新巨星!

随着直播行业的不断发展,智享直播(三代)作为首家自主研发的智能AI直播软件引领了行业的新潮流。相比市场上的其他同类软件,我们的软件通过创新的功能实现了直播间的AI智能互动,提供了丰富而个性化的直播体验。最重要的…

fmql入门之对标zynq差异(2)

还是有很多地方需要注意的,细节又繁琐。 AXI 接上一篇,Program bit后,IAR debug无现象: prinft没有打印出字符串;GPIO初始化失败。 不知道是不是vivado补丁失败的原因: 但是重新分析综合后还是这样。 …

Lc43---- 1221. 分割平衡字符串(java版)---(贪心)(字符串)

1.题目描述 2.知识点和思路 (1)贪心算法的基本思想 选择性质:在每一步中,选择当前最优的选项,不考虑未来的后果。 局部最优解:通过一系列局部最优选择,构建全局最优解。 不可回溯:一…

2024电工杯A题详细思路代码分析数学建模:园区微电网风光储协调优化配置

题目分析:园区微电网风光储协调优化配置 我们会先给出三个问题总体的分析,最后会详细分析问题一的建模和详细内容。 背景: 园区微电网由风光发电和主电网联合为负荷供电,为了尽量提高风光电量的负荷占比,需配置较高比…

02--大数据Hadoop集群实战

前言: 前面整理了hadoop概念内容,写了一些概念和本地部署和伪分布式两种,比较偏向概念或实验,今天来整理一下在项目中实际使用的一些知识点。 1、基础概念 1.1、完全分布式 Hadoop是一个开源的分布式存储和计算框架&#xff0…

C++对C的扩充

C既可用于面向过程的程序设计,也可用于面向对象的程序设计。在面向过程程序设计的领域,C继承了C语言提供的绝大部分功能和语法规定,并在此基础上做了不少扩充,主要有一下几个方面: 1.C的输入输出 C为了方便用户&…

Spring 事务源码分析

前言: 我们知道 Spring 声明式事务是通过 AOP 来实现的,日常项目开发中我们只需要使用 Transactional 注解就可以实现声明式事务,那你知道通过 Transactional 注解怎样实现事务的吗?本篇我们将从源码来分析 Spring 声明式事务的执…

STM32定时器四大功能之定时器编码接口

1什么是编码器接口? 编码器接口接受编码器的正交信号,根据编码器产生的正交信号脉冲控制CNT的自增和自减,从而指示编码器的旋转方向和旋转速度。 每个高级定时器和通用定时器都有一个编码器接口,同时正交编码器产生的正交信号分…

Redis 的持久化(真的好细)

前言 Redis 是一个内存数据库,把数据存储在内存中,而内存中的数据是不持久的,要想数据持久就得将数据存储到硬盘中,而 Redis 相比于 Mysql 这样的关系型数据库最大的优势就在于将数据存储在内存中从而效率更高,速度更快…

docker 安装RabbitMQ-web版本

直接拉去web版本 docker pull rabbitmq:management启动命令 设置用户名 admin 密码123456 docker run -dit --name rabbitmq -p 5672:5672 -p 15672:15672 -e RABBITMQ_DEFAULT_USERadmin -e RABBITMQ_DEFAULT_PASS123456 rabbitmq:management访问地址 http://127.0.0.1:…

GeoScene产品学习视频收集

1、易智瑞运营的极思课堂https://www.geosceneonline.cn/learn/library 2、历年易智瑞技术公开课视频资料 链接:技术公开课-易智瑞信息技术有限公司,GIS/地理信息系统,空间分析-制图-位置智能-地图 3、一些关于GeoScene系列产品和技术操作的视…

二进制部署k8s集群 部署高可用master节点

目录 本次部署的环境 一、master02 节点部署 二、负载均衡部署 安装nginx服务 部署keepalive服务 修改node节点上的配置文件 在master节点上创建pod 三、部署 Dashboard 二进制部署k8s集群部署的步骤总结 (1)k8s的数据存储中中心的搭建 etcd &…