二手车交易平台开发:安全与效率的双重挑战
3.1系统体系结构
系统的体系结构非常重要,往往决定了系统的质量和生命周期。针对不同的系统可以采用不同的系统体系结构。本系统为二手车交易平台系统,属于开放式的平台,所以在体系结构中采用B/s。B/s结构抛弃了固定客户端要求,采用服务器、客户端的模式。用户操作界面在前台展示,管理员、商家操作界面在后台展示。B/s结构基于互联网,需要网络的支持,由用户在浏览器上发布命令,服务器负责向数据库传送命令,最后再由服务器把反馈的结果传回浏览器给用户进行呈现。
3.2系统功能结构
系统的功能结构是系统实现的框架,本系统的主要结构为管理员和用户。管理员的功能为系统管理、公告管理、车辆管理、车辆类型管理、订单管理、合同管理、商家管理等。用户的功能为在线注册与登录、系统公告浏览、车辆信息浏览、我的收藏管理、我的订单管理、在线评价等。本二手车交易平台功能结构图如下图3-1所示:
图3-1二手车交易平台功能结构图
3.3数据库设计
数据库设计在系统设计中占有重大比例,数据库的设计包括ER图设计和数据库表设计。
3.3.1ER图设计
根据本系统的特点,本系统设计的主要实体包括管理员信息、用户信息、车辆信息、订单信息、新闻和评价信息等。
(1)管理员ER图包括的属性有管理员的编号、用户名和密码。管理员ER图如下图3-2所示:
图3-2管理员实体的ER图
(2)车辆信息包含的属性为车辆的详细描述,有车辆编号、车辆品牌等。车辆信息ER图如下图3-3所示:
图3-3车辆信息实体ER图
(3)注册用户信息的属性包括用户的个人资料,有姓名、性别、电话等。注册用户信息实体ER图如下图3-4所示:
图3-4注册用户实体ER图
(4)订单实体的属性有订单时间、订单编号、商家信息等。订单实体ER图如下图3-5所示:
图3-5订单信息实体ER图
(5)评价信息实体的属性有评价人、评价内容、评价时间等。评价信息实体的ER图如下图3-6所示:
图3-6评价信息实体ER图
(6)公告实体的属性有标题、内容、发布时间。公告实体ER图如下图3-7所示:
图3-7公告实体ER图
(7)本二手车交易平台的整体实体关系图如下图3-8所示:
图3-8系统关系ER图
3.3.2数据库表设计
根据数据ER图的设计,本系统的数据库表有管理员信息表、用户信息表、车辆信息表、评价信息表等。本系统的数据库表如下图3-1至3-12所示:
表3.1:config
序号 列名 数据类型 长度 小数位 标识 主键 外键 允许空 默认值 说明
1 id bigint 20 是 是 否 auto_increment
2 name varchar 100 否
3 value varchar 100 是
表3.2:discussqichexinxi
序号 列名 数据类型 长度 小数位 标识 主键 外键 允许空 默认值 说明
1 id bigint 20 是 是 否 auto
2 addtime timestamp 否 CURRENT_TIMESTAMP
3 refid bigint 20 否
4 userid bigint 20 否
5 nickname varchar 200 是
6 content longtext 否
7 reply longtext 是
表3.3:hetongxinxi
序号 列名 数据类型 长度 小数位 标识 主键 外键 允许空 默认值 说明
1 id bigint 20 是 是 否 auto
2 addtime timestamp 否 CURRENT
3 hetongbianhao varchar 200 是
4 qichemingcheng varchar 200 是
5 qicheleixing varchar 200 是
6 qichepinpai varchar 200 是
7 qicheyanse varchar 200 是
8 shangjiazhanghao varchar 200 是
9 shangjiamingcheng varchar 200 是
10 jiage varchar 200 是
11 hetongneirong varchar 200 是
12 shengxiaoriqi date 是
13 qiandingriqi date 是
14 beizhu longtext 是
15 yonghuzhanghao varchar 200 是
16 yonghuxingming varchar 200 是
17 sfsh varchar 200 是 否
18 shhf longtext 是
表3.4:news
序号 列名 数据类型 长度 小数位 标识 主键 外键 允许空 默认值 说明
1 id bigint 20 是 是 否 auto
2 addtime timestamp 否 CURRENT_TIMESTAMP
3 title varchar 200 否
4 introduction longtext 是
5 picture varchar 200 否
6 content longtext 否
表3.5:qicheleixing
序号 列名 数据类型 长度 小数位 标识 主键 外键 允许空 默认值 说明
1 id bigint 20 是 是 否 auto
2 addtime timestamp 否 CURRENT_TIMESTAMP
3 qicheleixing varchar 200 是
表3.6:qichexiadan
序号 列名 数据类型 长度 小数位 标识 主键 外键 允许空 默认值 说明
1 id bigint 20 是 是 否 auto
2 addtime timestamp 否 CURRENTP
3 xiadanbianhao varchar 200 是
4 qichemingcheng varchar 200 是
5 qicheleixing varchar 200 是
6 qichepinpai varchar 200 是
7 qicheyanse varchar 200 是
8 shangjiazhanghao varchar 200 是
9 shangjiamingcheng varchar 200 是
10 jiage float 是
11 xiadanshijian date 是
12 yonghuzhanghao varchar 200 是
13 yonghuxingming varchar 200 是
14 beizhu longtext 是
15 ispay varchar 200 是 未支付
表3.7:qichexinxi
序号 列名 数据类型 长度 小数位 标识 主键 外键 允许空 默认值 说明
1 id bigint 20 是 是 否 auto
2 addtime timestamp 否 CURRENT
3 qichebianhao varchar 200 是
4 qichemingcheng varchar 200 是
5 qicheleixing varchar 200 是
6 qichepinpai varchar 200 是
7 qicheyanse varchar 200 是
8 qichetupian varchar 200 是
9 jiage float 是
10 tianchuang varchar 200 是
11 huandangfangshi varchar 200 是
12 zuowei varchar 200 是
13 qichexiangqing longtext 是
14 shangjiazhanghao varchar 200 是
15 shangjiamingcheng varchar 200 是
16 clicktime datetime 是
17 clicknum int 11 是 0
表3.8:shangjia
序号 列名 数据类型 长度 小数位 标识 主键 外键 允许空 默认值 说明
1 id bigint 20 是 是 否 auto
2 addtime timestamp 否 CURRENT
3 shangjiazhanghao varchar 200 否
4 mima varchar 200 否
5 shangjiamingcheng varchar 200 否
6 xingbie varchar 200 是
7 lianxidianhua varchar 200 是
8 touxiang varchar 200 是
表3.9:storeup
序号 列名 数据类型 长度 小数位 标识 主键 外键 允许空 默认值 说明
1 id bigint 20 是 是 否 auto
2 addtime timestamp 否 CURRENT_TIMESTAMP
3 userid bigint 20 否
4 refid bigint 20 是
5 tablename varchar 200 是
6 name varchar 200 否
7 picture varchar 200 否
8 type varchar 200 是 1
9 inteltype varchar 200 是
表3.10:token
序号 列名 数据类型 长度 小数位 标识 主键 外键 允许空 默认值 说明
1 id bigint 20 是 是 否 auto
2 userid bigint 20 否
3 username varchar 100 否
4 tablename varchar 100 是
5 role varchar 100 是
6 token varchar 200 否
7 addtime timestamp 否 CURRENT
8 expiratedtime timestamp 否 CURRENT
表3.11:users
序号 列名 数据类型 长度 小数位 标识 主键 外键 允许空 默认值 说明
1 id bigint 20 是 是 否 auto
2 username varchar 100 否
3 password varchar 100 否
4 role varchar 100 是 管理员
5 addtime timestamp 否 CURRENTP
表3.12:yonghu
序号 列名 数据类型 长度 小数位 标识 主键 外键 允许空 默认值 说明
1 id bigint 20 是 是 否 auto
2 addtime timestamp 否 CURRENT
3 yonghuzhanghao varchar 200 否
4 mima varchar 200 否
5 yonghuxingming varchar 200 否
6 xingbie varchar 200 是
7 lianxifangshi varchar 200 是
8 touxiang varchar 200 是
相关文章:
二手车交易平台开发:安全与效率的双重挑战
3.1系统体系结构 系统的体系结构非常重要,往往决定了系统的质量和生命周期。针对不同的系统可以采用不同的系统体系结构。本系统为二手车交易平台系统,属于开放式的平台,所以在体系结构中采用B/s。B/s结构抛弃了固定客户端要求,采…...
vector题目
118. 杨辉三角 - 力扣(LeetCode) 求解题目时候,我们可以将其看作近似的二维数组。 行为vector<vector<int>>,数组的每个数据类型为vector<int>。 列为vector<int>,数组的每个数据类型为int。 通过观察我们可以发现…...
测试测试测试测试测试测试测试测试测试测试
标题详情作者简介愚公搬代码头衔华为云特约编辑,华为云云享专家,华为开发者专家,华为产品云测专家,CSDN博客专家,CSDN商业化专家,阿里云专家博主,阿里云签约作者,腾讯云优秀博主&…...
Cisco WebEx 数据平台:统一 Trino、Pinot、Iceberg 及 Kyuubi,探索 Apache Doris 在 Cisco 的改造实践
导读:Cisco WebEx 早期数据平台采用了多系统架构(包括 Trino、Pinot、Iceberg 、 Kyuubi 等),面临架构复杂、数据冗余存储、运维困难、资源利用率低、数据时效性差等问题。因此,引入 Apache Doris 替换了 Trino、Pinot…...
大恒相机开发(3)—大恒相机工业检测的实际案例
大恒相机工业检测的实际案例 工业检测的实际案例图像采集性能优化技巧工业环境下的稳定性 工业检测的实际案例 以下是一些使用大恒相机进行工业检测的实际案例: 多特征光学成像系统: 在这个案例中,使用大恒相机构建了一个全方位、多特征的图…...
【泛微表单】流程相关信息修改
流程相关信息修改 查询流程对应数据库表名: select b.tablename from workflow_bill b ,workflow_base s,workflow_requestbase t where t.requestid=35389 and t.workflowid = s.id and b...
LeetCode80.删除有序数组的重复项
10多分钟的时间就把一道中等题目做出来了,而且我还没有思考,边写边想。我的思路很简单,就是按照题目意思,从前往后遍历数组并统计相同的个数count,然后一直维护一个左指针,把遍历的数移到左指针上然后左指针…...
rk3568制冷项目驱动开发流程汇总(只适用于部分模块CIF DVP等,自用)
采用fpga输入,3568采集并显示至hdmi RKVICAP 驱动框架说明 RKVICAP驱动主要是基于 v4l2 / media 框架实现硬件的配置、中断处理、控制 buffer 轮转,以及控制 subdevice(如 mipi dphy 及 sensor) 的上下电等功能。 对于RK356X 芯片而言, VICAP…...
费舍尔信息矩阵全面讲述
费舍尔信息矩阵(Fisher Information Matrix) 费舍尔信息矩阵是统计学中一个非常重要的概念,尤其在参数估计、最大似然估计(MLE)和贝叶斯推断中具有广泛的应用。它反映了参数估计的不确定性程度,也可以用来…...
DALFox-一款XSS自动化扫描工具
声明!本文章所有的工具分享仅仅只是供大家学习交流为主,切勿用于非法用途,如有任何触犯法律的行为,均与本人及团队无关!!! 目录标题 一、介绍及使用启动及使用1. 单个扫描2. 多个扫描3. 文件扫描…...
Python 异步协程:从 async/await 到 asyncio 再到 async with
在 Python 3.8 以后的版本中,异步编程变得越来越重要。本文将系统介绍 Python 标准库中的异步编程工具,带领大家掌握 async/await 语法和 asyncio 的使用。 从一个简单的场景开始 假设我们在处理一些耗时的 I/O 操作,比如读取多个文件或处理…...
云原生周刊:利用 eBPF 增强 K8s
开源项目推荐 Slurm-operator Slurm-operator 是一个高效可扩展的框架,用于在 K8s 环境中部署和运行 Slurm 工作负载。 它结合了 Slurm 的可靠性和 Kubernetes 的灵活性,支持快速部署 Slurm 集群、动态扩展 HPC 工作负载,并提供高度灵活的定…...
【pycharm】远程服务器之后如何打开终端
【pycharm】远程服务器之后如何打开终端 在pycharm中,我们通过远程连接服务器,此时如果我们需要在终端运行的话,并不能直接在本地终端运行,而是需要连接到服务器终端才能运行命令 设置如下: 输入服务器的ip、端口、…...
从零创建一个 Django 项目
1. 准备环境 在开始之前,确保你的开发环境满足以下要求: 安装了 Python (推荐 3.8 或更高版本)。安装 pip 包管理工具。如果要使用 MySQL 或 PostgreSQL,确保对应的数据库已安装。 创建虚拟环境 在项目目录中创建并激活虚拟环境ÿ…...
无人零售 4G 工业无线路由器赋能自助贩卖机高效运营
工业4G路由器为运营商赋予 “千里眼”,实现对贩卖机销售、库存、设备状态的远程精准监控,便于及时补货与维护;凭借强大的数据实时传输,助力深度洞察销售趋势、优化库存、挖掘商机;还能远程升级、保障交易安全、快速处理…...
使用VSCode Debugger 调试 React项目
一般我们调试代码时,用的最多的应该就是console.log方式了,还有的是使用Chrome DevTools 通过在对应的 sourcemap代码位置打断点进行调试,除了上面两种方式外还有一种更好用的调试方式: VSCode Debugger。 VSCode Debugger可以直…...
[创业之路-199]:《华为战略管理法-DSTE实战体系》- 3 - 价值转移理论与利润区理论
目录 一、价值转移理论 1.1. 什么是价值? 1.2. 什么价值创造 (1)、定义 (2)、影响价值创造的因素 (3)、价值创造的三个过程 (4)、价值创造的实践 (5&…...
AWTK-WEB 快速入门(2) - JS 应用程序
AWTK 可以使用相同的技术栈开发各种平台的应用程序。有时我们需要使用 Web 界面与设备进行交互,本文介绍一下如何使用 JS 语言开发 AWTK-WEB 应用程序。 用 AWTK Designer 新建一个应用程序 先安装 AWTK Designer: https://awtk.zlg.cn/web/index.html…...
dolphinscheduler服务注册中心源码解析(三)RPC提供者服务整合注册中心注册服务实现源码
RPC提供者服务整合注册中心注册服务实现源码 1.概述2.源码解读思路3.实现2.1.应用服务的RPC服务接口定义2.1.1.MasterServer应用中提供的RPC接口服务2.1.2.WorkerServer应用中提供的RPC接口服务2.2.应用服务的RPC服务接口实现2.2.1.MasterServer应用中提供的RPC接口服务实现类2…...
电脑不小心删除了msvcr120.dll文件怎么办?“缺失msvcr120.dll文件”要怎么解决?
一、文件丢失与损坏的常见原因及解决办法 1. 不小心删除系统文件 常见情况:有时在清理电脑垃圾文件时,可能会不小心删除一些重要的系统文件,如msvcr120.dll等。解决办法: 恢复文件:如果刚删除不久,可以尝…...
基于算法竞赛的c++编程(28)结构体的进阶应用
结构体的嵌套与复杂数据组织 在C中,结构体可以嵌套使用,形成更复杂的数据结构。例如,可以通过嵌套结构体描述多层级数据关系: struct Address {string city;string street;int zipCode; };struct Employee {string name;int id;…...
如何在看板中体现优先级变化
在看板中有效体现优先级变化的关键措施包括:采用颜色或标签标识优先级、设置任务排序规则、使用独立的优先级列或泳道、结合自动化规则同步优先级变化、建立定期的优先级审查流程。其中,设置任务排序规则尤其重要,因为它让看板视觉上直观地体…...
【磁盘】每天掌握一个Linux命令 - iostat
目录 【磁盘】每天掌握一个Linux命令 - iostat工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景 注意事项 【磁盘】每天掌握一个Linux命令 - iostat 工具概述 iostat(I/O Statistics)是Linux系统下用于监视系统输入输出设备和CPU使…...
从零开始打造 OpenSTLinux 6.6 Yocto 系统(基于STM32CubeMX)(九)
设备树移植 和uboot设备树修改的内容同步到kernel将设备树stm32mp157d-stm32mp157daa1-mx.dts复制到内核源码目录下 源码修改及编译 修改arch/arm/boot/dts/st/Makefile,新增设备树编译 stm32mp157f-ev1-m4-examples.dtb \stm32mp157d-stm32mp157daa1-mx.dtb修改…...
Module Federation 和 Native Federation 的比较
前言 Module Federation 是 Webpack 5 引入的微前端架构方案,允许不同独立构建的应用在运行时动态共享模块。 Native Federation 是 Angular 官方基于 Module Federation 理念实现的专为 Angular 优化的微前端方案。 概念解析 Module Federation (模块联邦) Modul…...
解决本地部署 SmolVLM2 大语言模型运行 flash-attn 报错
出现的问题 安装 flash-attn 会一直卡在 build 那一步或者运行报错 解决办法 是因为你安装的 flash-attn 版本没有对应上,所以报错,到 https://github.com/Dao-AILab/flash-attention/releases 下载对应版本,cu、torch、cp 的版本一定要对…...
【服务器压力测试】本地PC电脑作为服务器运行时出现卡顿和资源紧张(Windows/Linux)
要让本地PC电脑作为服务器运行时出现卡顿和资源紧张的情况,可以通过以下几种方式模拟或触发: 1. 增加CPU负载 运行大量计算密集型任务,例如: 使用多线程循环执行复杂计算(如数学运算、加密解密等)。运行图…...
LLM基础1_语言模型如何处理文本
基于GitHub项目:https://github.com/datawhalechina/llms-from-scratch-cn 工具介绍 tiktoken:OpenAI开发的专业"分词器" torch:Facebook开发的强力计算引擎,相当于超级计算器 理解词嵌入:给词语画"…...
重启Eureka集群中的节点,对已经注册的服务有什么影响
先看答案,如果正确地操作,重启Eureka集群中的节点,对已经注册的服务影响非常小,甚至可以做到无感知。 但如果操作不当,可能会引发短暂的服务发现问题。 下面我们从Eureka的核心工作原理来详细分析这个问题。 Eureka的…...
Android第十三次面试总结(四大 组件基础)
Activity生命周期和四大启动模式详解 一、Activity 生命周期 Activity 的生命周期由一系列回调方法组成,用于管理其创建、可见性、焦点和销毁过程。以下是核心方法及其调用时机: onCreate() 调用时机:Activity 首次创建时调用。…...
