肇庆网站制作/在哪里可以发布自己的广告
基于springboot+html汽车维修系统汽车维修系统的设计与实现
✌全网粉丝20W+,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌
🍅文末获取项目下载方式🍅
一、项目背景介绍:
目前,全国汽车维修行业有一二类企业30多万家,从业人员近300万人,每年都在以10%左右的速度快速增长。国营、集体、股份制、私营、个体、中 外合资等多种经济成分的汽车维修企业在共同发展,4S 店、特约维修服务站、 综合维修厂、快修连锁店、专项维修店等多样化的经营方式各展其长,形成了一个门类齐全、品种多样,分布广泛,服务方便,能够满足不同消费层次需求的汽车维修市场。中国汽车市场发展潜力巨大,特别是私人汽车消费,在未来20年将持续高速增长。中国汽车保有量的快速增长将直接带动国内汽车维修保养市的发展,中国的汽保行业在未来的5-10年中有着无限广阔的发展空间。
随着信息技术的不断革新和渗透,各行各业都在探索拥抱信息技术的合作方式,汽修行业也不例外。信息化的汽车维修管理系统能够实现在数秒钟内从上万份客户档案中找出你所需要的某个车的报修历史记录,能从上万个零配件中找出某个零配件的库存 情况及存放地点,更加方便快捷。
二、项目技术简介:
- JAVA:Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。
- Spring:Spring框架是一个开放源代码的J2EE应用程序框架,由Rod Johnson发起,是针对bean的生命周期进行管理的轻量级容器(lightweight container)。 Spring解决了开发者在J2EE开发中遇到的许多常见的问题,提供了功能强大IOC、AOP及Web MVC等功能。Spring可以单独应用于构筑应用程序,也可以和Struts、Webwork、Tapestry等众多Web框架组合使用,并且可以与 Swing等桌面应用程序AP组合。因此, Spring不仅仅能应用于J2EE应用程序之中,也可以应用于桌面应用程序以及小应用程序之中。Spring框架主要由七部分组成,分别是 Spring Core、 Spring AOP、 Spring ORM、 Spring DAO、Spring Context、 Spring Web和 Spring Web MVC。
- SpringBoot:Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者。
- Mybatis-Plus:MyBatis-Plus(简称 MP)是一个 MyBatis的增强工具,在 MyBatis 的基础上只做增强不做改变,为 简化开发、提高效率而生。
- Jsp:JSP(全称JavaServer Pages)是由Sun Microsystems公司主导创建的一种动态网页技术标准。JSP部署于网络服务器上,可以响应客户端发送的请求,并根据请求内容动态地生成HTML、XML或其他格式文档的Web网页,然后返回给请求者。JSP技术以Java语言作为脚本语言,为用户的HTTP请求提供服务,并能与服务器上的其它Java程序共同处理复杂的业务需求。
JSP将Java代码和特定变动内容嵌入到静态的页面中,实现以静态页面为模板,动态生成其中的部分内容。JSP引入了被称为“JSP动作”的XML标签,用来调用内建功能。另外,可以创建JSP标签库,然后像使用标准HTML或XML标签一样使用它们。标签库能增强功能和服务器性能,而且不受跨平台问题的限制。JSP文件在运行时会被其编译器转换成更原始的Servlet代码。JSP编译器可以把JSP文件编译成用Java代码写的Servlet,然后再由Java编译器来编译成能快速执行的二进制机器码,也可以直接编译成二进制码。 - Spring-Mvc:Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面。Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块。使用 Spring 可插入的 MVC 架构,从而在使用Spring进行WEB开发时,可以选择使用Spring的Spring MVC框架或集成其他MVC开发框。
- Html:HTML的全称为超文本标记语言,是一种标记语言。它包括一系列标签.通过这些标签可以将网络上的文档格式统一,使分散的Internet资源连接为一个逻辑整体。HTML文本是由HTML命令组成的描述性文本,HTML命令可以说明文字,图形、动画、声音、表格、链接等。
超文本是一种组织信息的方式,它通过超级链接方法将文本中的文字、图表与其他信息媒体相关联。这些相互关联的信息媒体可能在同一文本中,也可能是其他文件,或是地理位置相距遥远的某台计算机上的文件。这种组织信息方式将分布在不同位置的信息资源用随机方式进行连接,为人们查找,检索信息提供方便。
三、系统功能模块介绍:
四、数据库设计:
1:部门
(car_dept)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
id | int(50) | NULL | ID |
dept_name | varchar(100) | NULL | 部门名称 |
dept_location | varchar(100) | NULL | 部门地址 |
2:dictionary(dictionary)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
id | int(50) | NULL | |
dictionary_type | varchar(40) | NULL | 类别 |
code | varchar(40) | NULL | 编码key |
val | varchar(100) | NULL | 编码对应值 |
status | varchar(4) | NULL | 状态(1:启用[新建默认该状态],2:禁用) |
remake | varchar(100) | NULL | 备注 |
3:仓库
(house)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
id | int(11) | NULL | ID |
house_name | varchar(255) | NULL | 仓库名 |
house_address | varchar(255) | NULL | 仓库地址 |
remark | varchar(255) | NULL | 备注 |
status | int(11) | NULL | 标记 |
4:用户菜单表
(menu)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
id | int(11) | NULL | ID |
user_id | int(11) | NULL | 用户编号 |
menu | int(255) | NULL | 菜单名 |
5:订单
(orders)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
id | int(50) | NULL | |
registration_id | int(50) | NULL | 登记表编号 |
order_time | datetime | NULL | 下单时间 |
staff_id | int(50) | NULL | 下单员工id |
status | int(4) | NULL | 订单状态(0:未支付,1:已支付,2:维修中,3:质检中,4:已完成) |
repair_id | int(50) | NULL | 维修人员编号 |
quality_inspector_id | int(50) | NULL | 质检人编号 |
pay_money | varchar(100) | NULL | 支付金额 |
complete_time | datetime | NULL | 完成时间 |
6:配件
(parts)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
id | int(11) | NULL | ID |
parts_type_id | varchar(255) | NULL | 配件类别编号 |
parts_name | varchar(255) | NULL | 配件名称 |
status | int(11) | NULL | 标记 |
parts_price | varchar(255) | NULL | 采购价格 |
parts_set_price | varchar(255) | NULL | 销售价格 |
parts_num | int(11) | NULL | 库存 |
parts_house_id | int(11) | NULL | 仓库编号 |
7:零件类别
(parts_type)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
id | int(11) | NULL | ID |
type_name | varchar(255) | NULL | 类别名称 |
8:采购
(purchase)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
id | int(11) | NULL | ID |
purchase_parts_id | int(11) | NULL | 零件编号 |
purchase_suppliers_id | int(11) | NULL | 供应商编号 |
purchase_num | int(11) | NULL | 需求量 |
purchase_start_time | datetime | NULL | 创建时间 |
purchase_end_time | datetime | NULL | 完成时间 |
status | int(11) | NULL | 标记 |
purchase_staff_id | int(11) | NULL | 采购员 |
9:测试
(registration)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
id | int(50) | NULL | ID |
visit_name | varchar(100) | NULL | 来访人姓名 |
visit_sex | varchar(100) | NULL | 来访人性别 |
visit_tel | varchar(100) | NULL | 来访人联系电话 |
visit_email | varchar(100) | NULL | 来访人邮箱 |
visit_time | datetime | NULL | 来访时间 |
car_model | varchar(100) | NULL | 车辆型号 |
car_license_plate | varchar(100) | NULL | 车辆牌照 |
staff_id | int(50) | NULL | 接待人id |
status | int(4) | NULL | 预约状态(0:预约,1:放弃预约,2:已下单 |
10:staff(staff)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
id | int(50) | NULL | |
user_name | varchar(100) | NULL | 用户名 |
user_pwd | varchar(100) | NULL | 密码 |
nick_name | varchar(100) | NULL | 昵称 |
head_img | varchar(100) | NULL | 头像 |
dept_id | int(50) | NULL | 部门编号 |
status | int(4) | NULL | 状态([0:可用1:禁用]) |
jurisdiction | int(4) | NULL | 权限[0:最高管理员,1:普通管理员] |
11:供应商管理
(suppliers)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
id | int(11) | NULL | ID |
supplier_name | varchar(255) | NULL | 供应商名称 |
supplier_user | varchar(255) | NULL | 联系人 |
supplier_tel | varchar(255) | NULL | 联系方式 |
supplier_email | varchar(255) | NULL | 邮箱 |
supplier_address | varchar(255) | NULL | 地址 |
supplier_longitude | varchar(255) | NULL | 经度 |
supplier_latitude | varchar(255) | NULL | 纬度 |
supplier_code | varchar(255) | NULL | 邮政编码 |
supplier_card | varchar(255) | NULL | 银行卡号 |
status | int(11) | NULL | 标记 |
12:维修领料
(task)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
id | int(11) | NULL | ID |
task_orders_id | int(11) | NULL | 订单编号 |
task_parts_id | int(11) | NULL | 零件编号 |
task_num | int(11) | NULL | 领取数量 |
task_staff_id | int(11) | NULL | 员工编号 |
task_time | datetime | NULL | 申请时间 |
task_really_num | int(11) | NULL | 实际领取数量 |
status | int(11) | NULL | 标记 |
13:结算
(wind_account)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
id | int(11) | NULL | ID |
account_orders_id | int(11) | NULL | 订单编号 |
account_staff_id | int(11) | NULL | 结算人 |
account_time | datetime | NULL | 结算时间 |
status | int(11) | NULL | 支付状态 |
account_car_time | datetime | NULL | 取车时间 |
account_parts_money | varchar(255) | NULL | 用料费用 |
account_work_money | varchar(255) | NULL | 项目费用 |
account_money | varchar(255) | NULL | 实际支付 |
14:维修任务
(work)
字段名 | 类型 | 默认值 | 列注释 |
---|---|---|---|
id | int(11) | NULL | ID |
work_orders_id | int(11) | NULL | 维修订单 |
work_staff_id | int(11) | NULL | 员工编号 |
start_time | datetime | NULL | 开始时间 |
end_time | datetime | NULL | 完成时间 |
status | int(11) | NULL | 标记 |
work_type | int(11) | NULL | 任务分类 |
work_time | int(11) | NULL | 维修工时 |
五、功能模块:
-
系统前台:系统首页展示了汽车维修收入折线图和系统人员的分布的分布图。
-
接待管理:接待管理用于来访客户的基本信息的展示与管理和订单信息的展示与管理的界面。
-
维修信息:维修信息包括维修器械信息的展示与管理和维修任务信息的展示与管理的界面。
-
质检信息:质检信息是对质检任务基本信息的展示与管理的界面。
-
财务信息:财务信息是对订单信息的展示与管理的界面。
-
仓库管理:仓库管理包括零件信息的展示与管理,供货商信息的展示与管理,仓库库存信息的展示与管理,采购信息的展示与管理,维修资料的展示与管理。
-
个人信息:个人信息是个人信息展示和操作的界面。
-
系统管理:系统管理是对部门信息、人员信息、字典信息进行展示和操作的界面。
六、代码示例:
系统前台
public ControllerResultData<Staff> updateById(Staff staff) {ControllerResultData<Staff> controllerResultData = new ControllerResultData<>();try {int row = staffService.updateById(staff);controllerResultData.setDefaultSuccess();staff.setInfluenceRow(row);controllerResultData.setData(staff);} catch (Exception ex) {ex.printStackTrace();controllerResultData.setCode(ResultConstant.CONTROLLER_RES_CODE_V1);controllerResultData.setMsg(ResultConstant.DEFAULT_FAIL_MSG);}return controllerResultData;
接待管理
public ControllerResultData<Order> deleteById(Order order){ControllerResultData<Order> controllerResultData = new ControllerResultData<>();try{int row = orderService.deleteById(order.getId());controllerResultData.setDefaultSuccess();order.setInfluenceRow(row);controllerResultData.setData(order);}catch(Exception ex){ex.printStackTrace();controllerResultData.setCode(ResultConstant.CONTROLLER_RES_CODE_V1);controllerResultData.setMsg(ResultConstant.DEFAULT_FAIL_MSG);}return controllerResultData;}
维修信息
public ControllerResultData<Task> updateById(Task task){ControllerResultData<Task> controllerResultData = new ControllerResultData<>();try{//通过id获取orderIdTask taskDaoById = taskDao.findById(task.getId());//修改零件库存Parts byId = partsDao.findById(Integer.parseInt(taskDaoById.getTaskPartsId()));//判断审核数量不能大于库存数量if (Integer.parseInt(task.getTaskReallyNum()) > Integer.parseInt(byId.getPartsNum())){controllerResultData.setDefaultFail();return controllerResultData.setMsg("库存数量不足!");}Parts parts = new Parts();int partsNum = Integer.parseInt(byId.getPartsNum());int taskNum = Integer.parseInt(task.getTaskReallyNum());int num = partsNum - taskNum;parts.setPartsNum(num+"");parts.setId(Integer.parseInt(taskDaoById.getTaskPartsId()));int row = taskService.updateById(task);if (row > 0){partsDao.updateById(parts);}controllerResultData.setDefaultSuccess();task.setInfluenceRow(row);controllerResultData.setData(task);}catch(Exception ex){ex.printStackTrace();controllerResultData.setCode(ResultConstant.CONTROLLER_RES_CODE_V1);controllerResultData.setMsg(ResultConstant.DEFAULT_FAIL_MSG);}return controllerResultData;}
质检信息
public ControllerResultData<String> delteByIds(String ids) throws Exception {ControllerResultData<String> controllerResultData = new ControllerResultData<>();try {List<Integer> list = new ArrayList<>();String[] ids1 = ids.split(",");for (int i = 0; i < ids1.length; i++) {list.add(Integer.parseInt(ids1[i]));}int id = workService.deleteByIds(list);if (id > 0) {controllerResultData.setDefaultSuccess();} else {controllerResultData.setCode(ResultConstant.CONTROLLER_RES_CODE_V1);controllerResultData.setMsg(ResultConstant.DEFAULT_FAIL_MSG);}} catch (Exception ex) {ex.printStackTrace();controllerResultData.setCode(ResultConstant.CONTROLLER_RES_CODE_V1);controllerResultData.setMsg(ResultConstant.DEFAULT_FAIL_MSG);}return controllerResultData;}
财务信息
public ControllerResultData<Order> insert(Order order){ControllerResultData<Order> controllerResultData = new ControllerResultData<>();try {int id = orderService.insert(order);order.setId(id);controllerResultData.setDefaultSuccess();controllerResultData.setData(order);}catch(Exception ex) {ex.printStackTrace();controllerResultData.setCode(ResultConstant.CONTROLLER_RES_CODE_V1);controllerResultData.setMsg(ResultConstant.DEFAULT_FAIL_MSG);}return controllerResultData;}
仓库管理
public ControllerResultData<String> delteByIds(String ids) throws Exception {ControllerResultData<String> controllerResultData = new ControllerResultData<>();try {List<Integer> list = new ArrayList<>();String[] ids1 = ids.split(",");for (int i = 0; i < ids1.length; i++) {list.add(Integer.parseInt(ids1[i]));}int id = houseService.deleteByIds(list);if(id > 0){controllerResultData.setDefaultSuccess();}else{controllerResultData.setCode(ResultConstant.CONTROLLER_RES_CODE_V1);controllerResultData.setMsg(ResultConstant.DEFAULT_FAIL_MSG);}}catch(Exception ex) {ex.printStackTrace();controllerResultData.setCode(ResultConstant.CONTROLLER_RES_CODE_V1);controllerResultData.setMsg(ResultConstant.DEFAULT_FAIL_MSG);}return controllerResultData;}
个人信息
public ControllerResultData<List<Staff>> findList(Staff staff) {ControllerResultData<List<Staff>> controllerResultData = new ControllerResultData<>();try {staff.setPage((staff.getPage() - 1) * staff.getLimit());List<Staff> list = staffService.findList(staff);int count = staffService.findPageCount(staff);controllerResultData.setCount(count);controllerResultData.setData(list);controllerResultData.setDefaultSuccess();} catch (Exception ex) {ex.printStackTrace();controllerResultData.setDefaultFail();}return controllerResultData;}
系统管理
public ControllerResultData<String> delteByIds(String ids) throws Exception {ControllerResultData<String> controllerResultData = new ControllerResultData<>();try {List<Integer> list = new ArrayList<>();String[] ids1 = ids.split(",");for (int i = 0; i < ids1.length; i++) {list.add(Integer.parseInt(ids1[i]));}int id = menuService.deleteByIds(list);if(id > 0){controllerResultData.setDefaultSuccess();}else{controllerResultData.setCode(ResultConstant.CONTROLLER_RES_CODE_V1);controllerResultData.setMsg(ResultConstant.DEFAULT_FAIL_MSG);}}catch(Exception ex) {ex.printStackTrace();controllerResultData.setCode(ResultConstant.CONTROLLER_RES_CODE_V1);controllerResultData.setMsg(ResultConstant.DEFAULT_FAIL_MSG);}return controllerResultData;}
七、论文参考:
八、项目总结:
随着汽车迅速进入千家万户,我国进入了发展的黄金时期,汽车维修业和汽车保修设备行业在市场的洗礼中开始由传统的劳动密集型向资金、技术密集型、由生产型向服务型过渡,形成了利润丰厚的汽车后市场。当前世界各大汽车生产厂商在汽车制造方面竞争其剧烈的情况下,己经越来越重视汽车服务产业,并得到了充分发展。在汽车维修已成为万众瞩目的行业这一背景之下,若仍然采用纯手工的管理方式,将会增加信息维护与查找的难度,对企业的市场核心竞争力以及服务质量均有着严重影响,基于这种大环境下,提出了汽车维修管理系统的设计框架,旨在减轻工作人员的重压、实现自动化、信息化、智能化管理。
本设计以IDEA为开发平台,后端使用Java、springboot、springMvc、Mybatis-plus等核心技术实现后台管理,前端使用Html、css、layui、Jquery等技术实现前台展示,数据管理mysql一个关系型数据管理系统。
系统可分为八大基础模板,分别是系统首页、接待管理、维修信息、质检信息、财务管理、仓库管理、个人中心、系统管理。其中首页又可以细分为收入折线图、系统人员分布图俩部分,接待管理又可以细分为信息登记、订单列俩部分,维修信息又可以分为维修资料、维修任务俩部分,仓库管理又可以细分为零件列表、供应商管理、仓库、采购、维修用料审核五部分,系统管理又可以细分为部门列表、人员列表、字典表管理三部分。
最后通过对整个系统的测试、数据库系统的读写以及多方面的测试操作,将系统完善放入服务器上启动,可以完成基本的设计任务。
九、源码获取:
大家点赞、收藏、关注、评论啦 、查看👇🏻👇🏻👇🏻获取联系方式👇🏻👇🏻👇🏻
本设计以IDEA为开发平台,后端使用Java、springboot、springMvc、Mybatis-plus等核心技术实现后台管理,前端使用Html、css、layui、Jquery等技术实现前台展示,数据管理mysql一个关系型数据管理系统。
系统可分为八大基础模板,分别是系统首页、接待管理、维修信息、质检信息、财务管理、仓库管理、个人中心、系统管理。其中首页又可以细分为收入折线图、系统人员分布图俩部分,接待管理又可以细分为信息登记、订单列俩部分,维修信息又可以分为维修资料、维修任务俩部分,仓库管理又可以细分为零件列表、供应商管理、仓库、采购、维修用料审核五部分,系统管理又可以细分为部门列表、人员列表、字典表管理三部分。
最后通过对整个系统的测试、数据库系统的读写以及多方面的测试操作,将系统完善放入服务器上启动,可以完成基本的设计任务。
九、源码获取:
大家点赞、收藏、关注、评论啦 、查看👇🏻👇🏻👇🏻获取联系方式👇🏻👇🏻👇🏻
链接点击直达:下载链接
相关文章:

基于springboot+html汽车维修系统汽车维修系统的设计与实现
基于springboothtml汽车维修系统汽车维修系统的设计与实现 ✌全网粉丝20W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取项目下载方式…...

营销狂人杜国楹的两大顶级思维
“营销狂人”小罐茶 杜国楹两大顶级思维 1.一定要有【参照物思维】 2.一定要有【终局思维】 趣讲大白话:大牛的思考就是不同 *********** 杜国楹对茶行业思考 1.参照咖啡、酒的发展路径 2.中国茶工业化,品牌化是唯一壮大之路 3.龙头企业必须全品 没有参照物思维就没…...

面试题-前端开发JavaScript篇下(答案超详细)
文章目录 实现一个 once 函数,传入函数参数只执行一次将原生的 ajax 封装成 promisJS 监听对象属性的改变如何实现一个私有变量,用 getName 方法可以访问,不能直接访问==和===、以及 Object.is 的区别setTimeout、setInterval 和 requestAnimationFrame 之间的区别实现一个两…...

Android 9.0 修改Recovery字体图片的大小(正在清理)文字大小
1.概述 在9.0的系统产品定制化开发中,在系统中recovery功能也是非常重要的功能,所以说在进行recovery的时候,正在清理的 字体显示的有些小了,所以产品需求要求改大recovery的字体大小,所以这就需要在recovery页面看下字体大小的显示逻辑然后修改字体的显示大小,主要功能修…...

操作系统 五(文件系统)
一 文件定义:文件是指由创建者所定义的,具有文件名的一组相关元素的集合,可分为有结构文件和无结构文件两类。在有结构文件中,文件由若干个相关记录组成。而无结构文件则被看成一个字节流。文件在文件系统中是一个最大的数据单位&…...

华为OD机试 - 人数最多的站点(JS)
人数最多的站点 题目 公园园区提供小火车单向通行,从园区站点编号最小到最大, 通行如1~2~3~4~1万,然后供员工在各个办公园区穿梭, 通过对公司N个员工调研统计到每个员工的坐车区间,包含前后站点, 请设计一个程序计算出小火车在哪个园区站点时人数最多。 输入 输入的第…...

Mr. Cappuccino的第41杯咖啡——Kubernetes之Pod调度策略
Kubernetes之Pod调度策略Pod的4种调度策略定向调度nodeNamenodeSelector亲和性调度node亲和性硬限制软限制关系运算符pod亲和性pod反亲和性污点和容忍污点(taints)容忍(tolerations)默认情况下,Scheduler计算出一个Pod…...

Linux 磁盘挂载
目录 Linux硬盘分区 硬盘设备的文件名 /dev/sd[a-z] 硬盘分区 识别硬盘的文件名 Linux文件系统 文件系统类型 Linux如何保存文件 VFS虚拟文件系统 磁盘挂载命令 lsblk 查看系统的磁盘使用情况 fdisk 硬盘分区 mkfs 格式化文件系统 mount 挂载命令 df 显示磁盘空间…...

命名冲突问题与命名空间
一、何为命名空间? 首先我们运行下面代码, #include <stdio.h> int rand 0; int main() {printf("%d", rand);return 0; } 我们会发现该代码能够正常运行,没有任何问题。 但是当我们再在上面代码的基础上包含stdlib.h头…...

Kafka漏洞修复之CVE-2023-25194修复措施验证
Kafka漏洞修复之CVE-2023-25194修复措施验证前言风险分析解决方案AdoptOpenJDK Zookeeper Kafka多版本OpenJDK安装切换Zookeeper安装Kafka安装与使用其他Kafka消息发送流程Linux配置加载顺序参考链接前言 场景介绍 Kafka最近爆出高危漏洞CNNVD-202302-515,导致Apa…...

中后序遍历构建二叉树与应用I
目录 题目描述 思路分析 AC代码 题目描述 按中序遍历和后序遍历给出一棵二叉树,求这棵二叉树中叶子节点权值的最小值。 输入保证叶子节点的权值各不相同。 输入 测试数据有多组 对于每组测试数据,首先输入一个整数N (1 < N < 10000)&#x…...

随机退化模型--基础篇(1)
随机退化模型--基础篇(1) 1. 随机退化建模1.1 瞬间失效1.2 存在缓慢退化过程的失效2. 通俗解释2.1 包引入2.2 参数定义2.3 基于递归函数的更新2.4 结果可视化1. 随机退化建模 随机模型亦称“非确定的、概率的模型”,是按随机变量建立的模型。其特点是; 模型参数、模拟对象发…...

2023.2.15工作学习记录 git Docker compose容器编排
关于Git错误提交了target目录 是因为在ignore目录中没有加入biz这个工程 以后提交代码时一定要检查好自己提交的代码 首先把所有的全部取消 然后再根据自己要提交的内容一个个来勾选 Docker网络 container模式:新建的容器和已经存在的一个容器共享一个网络…...

基于jeecgboot的flowable流程增加节点自动跳过功能
为了满足有时候需要在某个节点没有人员处理的时候需要自动跳过,所以增加了这个功能。 一、FlowComment意见里增加一个类型8,跳过流程 /** * 流程意见类型 * */ public enum FlowComment { /** * 说明 */ NORMAL("1", "…...

流程引擎之Activiti简介
背景Activiti 是一个开源架构的工作流引擎,基于 bpmn2.0 标准进行流程定义,其前身是 jBPM,Activiti 相对于 jBPM 更轻量,更易上手,且天然集成了 Spring。2010年 jBPM 创始人 Tom Baeyens 离开 JBoss,随之加…...

4.打包子应用 投票
接上回 最终得到这样的目录 mysite/manage.pymysite/__init__.pysettings.pyurls.pyasgi.pywsgi.pypolls/__init__.pyadmin.pyapps.pymigrations/__init__.py0001_initial.pymodels.pystatic/polls/images/background.gifstyle.csstemplates/polls/detail.htmlindex.htmlresult…...

华为OD机试 - 服务依赖(JavaScript) | 机试题算法思路 【2023】
服务依赖 题目 在某系统中有众多服务,每个服务用字符串(只包含字母和数字,长度<=10)唯一标识,服务间可能有依赖关系,如A依赖B,则当B故障时导致A也故障。 传递具有依赖性,如A依赖B,B依赖C,当C故障时导致B故障,也导致A故障。给出所有依赖关系以及当前已知故障服务…...

目标检测综述(一份全的自制PPT): 涵盖各种模型简介对比,适合入门和了解目标检测现状
[TOC](目标检测综述(一份全的自制PPT): 涵盖各种模型简介对比,适合入门和了解目标检测现状) 注:本文仅供学习,未经同意勿转。分享的PPT请勿二次传播,或者用于其他商用途径。若使用本文PPT请注明来源,感谢配合 前言&…...

Vulnhub-DC-2实战靶场
Vulnhub-DC-2实战靶场 https://blog.csdn.net/ierciyuan/article/details/127560871 这次试试DC-2,目标是找到官方设置的5个flag。 一. 环境搭建 1. 准备工具 虚拟机Kali: 自备,我的kali的IP为192.168.3.129 靶场机: https…...

从输入URL到渲染的过程中到底发生了什么?
CDN缓存DNSTCP三次握手、四次挥手浏览器渲染过程输入URL到页面渲染过程的一些优化 下面我将“从输入URL到渲染的全过程”大概的描述出来,再对其过程加以解释,了解过程中可以做哪些优化。文章内容有点长,需要有足够的耐心看完哟!&…...

旋转屏幕导致 Fragment 中的 onConfigurationChanged 被调用两次
环境 IDE Android Studio Dolphin 2021.3.1; 项目配置 Android Gradle plugin version: 7.1.3 Gradle Version: 7.2 Gradle JDK: 11 Compile Sdk Version: 32 问题描述 项目使用的 Bottom Navigation Activity 基本结构,在调试程序时发现,…...

23年校招DL/NLP/推荐系统/ML/算法基础面试必看300问及答案
2020年校招已经开始了,在疫情全球肆虐的背景下,全球就业情况异常艰难,加上美国对中国企业打压持续升级,对于马上开始秋招找工作的毕业生而言,更是难上加难。我们不能凭一己之力改变现状,但我们可以凭借自己…...

Python基础知识汇总(字符串二)
目录 检索字符串 count()方法 find()方法 in关键字 index()方法 rindex()方法 startswith()方法...

【FPGA】Verilog:实现十六进制七段数码管显示 | 7-Segment Display
写在前面:本章主要内容为理解七点数码管显示的概念,并使用 Verilog 实现。生成输入信号后通过仿真确认各门的动作,通过 FPGA 检查在 Verilog 中实现的电路的操作。 Ⅰ. 前置知识 七段数码管是利用多重输出功能的非常有用的元件。该元件用于字…...

Android开发:Activity启动模式
1.怎样设置Activity的启动模式 可以在清单文件中自己添加活动的启动模式, android : launchMode"standard", 不写的话系统默认就是标准模式. 2.启动模式 2.1.默认启动模式 标准启动模式就是栈, 打开一个活动就将活动压入栈中, 返回就将活动退出栈中. 不同的Activit…...

01_Docker 简介
01_Docker 简介 文章目录01_Docker 简介1.1 Docker 简介1.2 Docker 组件1.2.1 Docker 客户端和服务区1.2.2 Docker 镜像1.2.3 Registry1.2.4 Docker 容器参考资料https://www.runoob.com/docker/ubuntu-docker-install.html 1.1 Docker 简介 Docker 是一个能够把开发的应用程…...

一文精通MVCC机制
MVCC(Multi-Version Concurrency Control)多版本并发控制机制使用串行化隔离级别时,mysql会将所有的操作加锁互斥,来保证并发安全。这种方式必然降低并发性能。mysql在读已提交和可重复读隔离级别下,对一行数据的读和写两个操作默认是不会通过…...

商用ESP32协议采集器源码分享开篇
这是一个关于chatGPT帮助嵌入式程序员开发商业项目的故事. 在开发这个项目的过程中,chatGPT发布了,在它的帮助下,项目开发量减少了10%,所以这个专栏,既是一个关于Micropython开发ESP32的专栏,也是一个程序员在AI的帮助下,提升效率,加速挣钱的案例. 看完之后,你将知道如何用mic…...

代码随想录算法训练营第三十四天 | 860.柠檬水找零,406.根据身高重建队列,452. 用最少数量的箭引爆气球
一、参考资料柠檬水找零https://programmercarl.com/0860.%E6%9F%A0%E6%AA%AC%E6%B0%B4%E6%89%BE%E9%9B%B6.html 根据身高重建队列 https://programmercarl.com/0406.%E6%A0%B9%E6%8D%AE%E8%BA%AB%E9%AB%98%E9%87%8D%E5%BB%BA%E9%98%9F%E5%88%97.html 用最少数量的箭引爆气球ht…...

DDR4介绍01
DDR4(第四代双倍数据率同步动态随机存储器SDRAM) 关于内存方面知识,大部分人、包括我自己也不是很懂,希望此篇文章能起到点作用,做硬件的就得把相关专业知识学牢了,尤其是专业术语。 下面是DDR4知识做一次…...