汽车出租管理系统

文章目录

  • 汽车出租管理系统
    • 一、系统演示
    • 二、项目介绍
    • 三、系统部分功能截图
    • 四、部分代码展示
    • 五、底部获取项目源码(9.9¥带走)

汽车出租管理系统

一、系统演示

汽车租赁系统

二、项目介绍

语言:java
框架:SpringBoot、Vue
数据库:MySQL

两个角色:管理员和客户

用户:注册、登录、车辆信息浏览、系统公告、租车、个人中心、车辆信息管理、租赁订单管理、还车记录管理

管理员:首页、车辆信息、系统公告、个人中心、用户管理、车辆品牌管理、车辆信息管理、租赁订单列表管理、还车记录管理、我的收藏管理等

三、系统部分功能截图

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

四、部分代码展示

package com.controller;import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Map;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;import com.utils.ValidatorUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.annotation.IgnoreAuth;import com.entity.CheliangpinpaiEntity;
import com.entity.view.CheliangpinpaiView;import com.service.CheliangpinpaiService;
import com.service.TokenService;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.MD5Util;
import com.utils.MPUtil;
import com.utils.CommonUtil;@RestController
@RequestMapping("/cheliangpinpai")
public class CheliangpinpaiController {@Autowiredprivate CheliangpinpaiService cheliangpinpaiService;/*** 后端列表*/@RequestMapping("/page")public R page(@RequestParam Map<String, Object> params,CheliangpinpaiEntity cheliangpinpai,HttpServletRequest request){EntityWrapper<CheliangpinpaiEntity> ew = new EntityWrapper<CheliangpinpaiEntity>();PageUtils page = cheliangpinpaiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, cheliangpinpai), params), params));return R.ok().put("data", page);}/*** 前端列表*/@RequestMapping("/list")public R list(@RequestParam Map<String, Object> params,CheliangpinpaiEntity cheliangpinpai, HttpServletRequest request){EntityWrapper<CheliangpinpaiEntity> ew = new EntityWrapper<CheliangpinpaiEntity>();PageUtils page = cheliangpinpaiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, cheliangpinpai), params), params));return R.ok().put("data", page);}/*** 列表*/@RequestMapping("/lists")public R list( CheliangpinpaiEntity cheliangpinpai){EntityWrapper<CheliangpinpaiEntity> ew = new EntityWrapper<CheliangpinpaiEntity>();ew.allEq(MPUtil.allEQMapPre( cheliangpinpai, "cheliangpinpai")); return R.ok().put("data", cheliangpinpaiService.selectListView(ew));}/*** 查询*/@RequestMapping("/query")public R query(CheliangpinpaiEntity cheliangpinpai){EntityWrapper< CheliangpinpaiEntity> ew = new EntityWrapper< CheliangpinpaiEntity>();ew.allEq(MPUtil.allEQMapPre( cheliangpinpai, "cheliangpinpai")); CheliangpinpaiView cheliangpinpaiView =  cheliangpinpaiService.selectView(ew);return R.ok("查询车辆品牌成功").put("data", cheliangpinpaiView);}/*** 后端详情*/@RequestMapping("/info/{id}")public R info(@PathVariable("id") Long id){CheliangpinpaiEntity cheliangpinpai = cheliangpinpaiService.selectById(id);return R.ok().put("data", cheliangpinpai);}/*** 前端详情*/@RequestMapping("/detail/{id}")public R detail(@PathVariable("id") Long id){CheliangpinpaiEntity cheliangpinpai = cheliangpinpaiService.selectById(id);return R.ok().put("data", cheliangpinpai);}/*** 后端保存*/@RequestMapping("/save")public R save(@RequestBody CheliangpinpaiEntity cheliangpinpai, HttpServletRequest request){cheliangpinpai.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(cheliangpinpai);cheliangpinpaiService.insert(cheliangpinpai);return R.ok();}/*** 前端保存*/@RequestMapping("/add")public R add(@RequestBody CheliangpinpaiEntity cheliangpinpai, HttpServletRequest request){cheliangpinpai.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(cheliangpinpai);cheliangpinpaiService.insert(cheliangpinpai);return R.ok();}/*** 修改*/@RequestMapping("/update")public R update(@RequestBody CheliangpinpaiEntity cheliangpinpai, HttpServletRequest request){//ValidatorUtils.validateEntity(cheliangpinpai);cheliangpinpaiService.updateById(cheliangpinpai);//全部更新return R.ok();}/*** 删除*/@RequestMapping("/delete")public R delete(@RequestBody Long[] ids){cheliangpinpaiService.deleteBatchIds(Arrays.asList(ids));return R.ok();}/*** 提醒接口*/@RequestMapping("/remind/{columnName}/{type}")public R remindCount(@PathVariable("columnName") String columnName, HttpServletRequest request, @PathVariable("type") String type,@RequestParam Map<String, Object> map) {map.put("column", columnName);map.put("type", type);if(type.equals("2")) {SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");Calendar c = Calendar.getInstance();Date remindStartDate = null;Date remindEndDate = null;if(map.get("remindstart")!=null) {Integer remindStart = Integer.parseInt(map.get("remindstart").toString());c.setTime(new Date()); c.add(Calendar.DAY_OF_MONTH,remindStart);remindStartDate = c.getTime();map.put("remindstart", sdf.format(remindStartDate));}if(map.get("remindend")!=null) {Integer remindEnd = Integer.parseInt(map.get("remindend").toString());c.setTime(new Date());c.add(Calendar.DAY_OF_MONTH,remindEnd);remindEndDate = c.getTime();map.put("remindend", sdf.format(remindEndDate));}}Wrapper<CheliangpinpaiEntity> wrapper = new EntityWrapper<CheliangpinpaiEntity>();if(map.get("remindstart")!=null) {wrapper.ge(columnName, map.get("remindstart"));}if(map.get("remindend")!=null) {wrapper.le(columnName, map.get("remindend"));}int count = cheliangpinpaiService.selectCount(wrapper);return R.ok().put("count", count);}}
package com.controller;import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Map;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;import com.utils.ValidatorUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.annotation.IgnoreAuth;import com.entity.ZulindingdanliebiaoEntity;
import com.entity.view.ZulindingdanliebiaoView;import com.service.ZulindingdanliebiaoService;
import com.service.TokenService;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.MD5Util;
import com.utils.MPUtil;
import com.utils.CommonUtil;@RestController
@RequestMapping("/zulindingdanliebiao")
public class ZulindingdanliebiaoController {@Autowiredprivate ZulindingdanliebiaoService zulindingdanliebiaoService;/*** 后端列表*/@RequestMapping("/page")public R page(@RequestParam Map<String, Object> params,ZulindingdanliebiaoEntity zulindingdanliebiao,HttpServletRequest request){String tableName = request.getSession().getAttribute("tableName").toString();if(tableName.equals("yonghu")) {zulindingdanliebiao.setZhanghao((String)request.getSession().getAttribute("username"));}EntityWrapper<ZulindingdanliebiaoEntity> ew = new EntityWrapper<ZulindingdanliebiaoEntity>();PageUtils page = zulindingdanliebiaoService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, zulindingdanliebiao), params), params));return R.ok().put("data", page);}/*** 前端列表*/@RequestMapping("/list")public R list(@RequestParam Map<String, Object> params,ZulindingdanliebiaoEntity zulindingdanliebiao, HttpServletRequest request){EntityWrapper<ZulindingdanliebiaoEntity> ew = new EntityWrapper<ZulindingdanliebiaoEntity>();PageUtils page = zulindingdanliebiaoService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, zulindingdanliebiao), params), params));return R.ok().put("data", page);}/*** 列表*/@RequestMapping("/lists")public R list( ZulindingdanliebiaoEntity zulindingdanliebiao){EntityWrapper<ZulindingdanliebiaoEntity> ew = new EntityWrapper<ZulindingdanliebiaoEntity>();ew.allEq(MPUtil.allEQMapPre( zulindingdanliebiao, "zulindingdanliebiao")); return R.ok().put("data", zulindingdanliebiaoService.selectListView(ew));}/*** 查询*/@RequestMapping("/query")public R query(ZulindingdanliebiaoEntity zulindingdanliebiao){EntityWrapper< ZulindingdanliebiaoEntity> ew = new EntityWrapper< ZulindingdanliebiaoEntity>();ew.allEq(MPUtil.allEQMapPre( zulindingdanliebiao, "zulindingdanliebiao")); ZulindingdanliebiaoView zulindingdanliebiaoView =  zulindingdanliebiaoService.selectView(ew);return R.ok("查询租赁订单列表成功").put("data", zulindingdanliebiaoView);}/*** 后端详情*/@RequestMapping("/info/{id}")public R info(@PathVariable("id") Long id){ZulindingdanliebiaoEntity zulindingdanliebiao = zulindingdanliebiaoService.selectById(id);return R.ok().put("data", zulindingdanliebiao);}/*** 前端详情*/@RequestMapping("/detail/{id}")public R detail(@PathVariable("id") Long id){ZulindingdanliebiaoEntity zulindingdanliebiao = zulindingdanliebiaoService.selectById(id);return R.ok().put("data", zulindingdanliebiao);}/*** 后端保存*/@RequestMapping("/save")public R save(@RequestBody ZulindingdanliebiaoEntity zulindingdanliebiao, HttpServletRequest request){zulindingdanliebiao.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(zulindingdanliebiao);zulindingdanliebiaoService.insert(zulindingdanliebiao);return R.ok();}/*** 前端保存*/@RequestMapping("/add")public R add(@RequestBody ZulindingdanliebiaoEntity zulindingdanliebiao, HttpServletRequest request){zulindingdanliebiao.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(zulindingdanliebiao);zulindingdanliebiaoService.insert(zulindingdanliebiao);return R.ok();}/*** 修改*/@RequestMapping("/update")public R update(@RequestBody ZulindingdanliebiaoEntity zulindingdanliebiao, HttpServletRequest request){//ValidatorUtils.validateEntity(zulindingdanliebiao);zulindingdanliebiaoService.updateById(zulindingdanliebiao);//全部更新return R.ok();}/*** 删除*/@RequestMapping("/delete")public R delete(@RequestBody Long[] ids){zulindingdanliebiaoService.deleteBatchIds(Arrays.asList(ids));return R.ok();}/*** 提醒接口*/@RequestMapping("/remind/{columnName}/{type}")public R remindCount(@PathVariable("columnName") String columnName, HttpServletRequest request, @PathVariable("type") String type,@RequestParam Map<String, Object> map) {map.put("column", columnName);map.put("type", type);if(type.equals("2")) {SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");Calendar c = Calendar.getInstance();Date remindStartDate = null;Date remindEndDate = null;if(map.get("remindstart")!=null) {Integer remindStart = Integer.parseInt(map.get("remindstart").toString());c.setTime(new Date()); c.add(Calendar.DAY_OF_MONTH,remindStart);remindStartDate = c.getTime();map.put("remindstart", sdf.format(remindStartDate));}if(map.get("remindend")!=null) {Integer remindEnd = Integer.parseInt(map.get("remindend").toString());c.setTime(new Date());c.add(Calendar.DAY_OF_MONTH,remindEnd);remindEndDate = c.getTime();map.put("remindend", sdf.format(remindEndDate));}}Wrapper<ZulindingdanliebiaoEntity> wrapper = new EntityWrapper<ZulindingdanliebiaoEntity>();if(map.get("remindstart")!=null) {wrapper.ge(columnName, map.get("remindstart"));}if(map.get("remindend")!=null) {wrapper.le(columnName, map.get("remindend"));}String tableName = request.getSession().getAttribute("tableName").toString();if(tableName.equals("yonghu")) {wrapper.eq("zhanghao", (String)request.getSession().getAttribute("username"));}int count = zulindingdanliebiaoService.selectCount(wrapper);return R.ok().put("count", count);}}
package com.controller;import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Map;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;import com.utils.ValidatorUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.annotation.IgnoreAuth;import com.entity.CheliangyanseEntity;
import com.entity.view.CheliangyanseView;import com.service.CheliangyanseService;
import com.service.TokenService;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.MD5Util;
import com.utils.MPUtil;
import com.utils.CommonUtil;
@RestController
@RequestMapping("/cheliangyanse")
public class CheliangyanseController {@Autowiredprivate CheliangyanseService cheliangyanseService;/*** 后端列表*/@RequestMapping("/page")public R page(@RequestParam Map<String, Object> params,CheliangyanseEntity cheliangyanse,HttpServletRequest request){EntityWrapper<CheliangyanseEntity> ew = new EntityWrapper<CheliangyanseEntity>();PageUtils page = cheliangyanseService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, cheliangyanse), params), params));return R.ok().put("data", page);}/*** 前端列表*/@RequestMapping("/list")public R list(@RequestParam Map<String, Object> params,CheliangyanseEntity cheliangyanse, HttpServletRequest request){EntityWrapper<CheliangyanseEntity> ew = new EntityWrapper<CheliangyanseEntity>();PageUtils page = cheliangyanseService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, cheliangyanse), params), params));return R.ok().put("data", page);}/*** 列表*/@RequestMapping("/lists")public R list( CheliangyanseEntity cheliangyanse){EntityWrapper<CheliangyanseEntity> ew = new EntityWrapper<CheliangyanseEntity>();ew.allEq(MPUtil.allEQMapPre( cheliangyanse, "cheliangyanse")); return R.ok().put("data", cheliangyanseService.selectListView(ew));}/*** 查询*/@RequestMapping("/query")public R query(CheliangyanseEntity cheliangyanse){EntityWrapper< CheliangyanseEntity> ew = new EntityWrapper< CheliangyanseEntity>();ew.allEq(MPUtil.allEQMapPre( cheliangyanse, "cheliangyanse")); CheliangyanseView cheliangyanseView =  cheliangyanseService.selectView(ew);return R.ok("查询车辆颜色成功").put("data", cheliangyanseView);}/*** 后端详情*/@RequestMapping("/info/{id}")public R info(@PathVariable("id") Long id){CheliangyanseEntity cheliangyanse = cheliangyanseService.selectById(id);return R.ok().put("data", cheliangyanse);}/*** 前端详情*/@RequestMapping("/detail/{id}")public R detail(@PathVariable("id") Long id){CheliangyanseEntity cheliangyanse = cheliangyanseService.selectById(id);return R.ok().put("data", cheliangyanse);}/*** 后端保存*/@RequestMapping("/save")public R save(@RequestBody CheliangyanseEntity cheliangyanse, HttpServletRequest request){cheliangyanse.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(cheliangyanse);cheliangyanseService.insert(cheliangyanse);return R.ok();}/*** 前端保存*/@RequestMapping("/add")public R add(@RequestBody CheliangyanseEntity cheliangyanse, HttpServletRequest request){cheliangyanse.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(cheliangyanse);cheliangyanseService.insert(cheliangyanse);return R.ok();}/*** 修改*/@RequestMapping("/update")public R update(@RequestBody CheliangyanseEntity cheliangyanse, HttpServletRequest request){//ValidatorUtils.validateEntity(cheliangyanse);cheliangyanseService.updateById(cheliangyanse);//全部更新return R.ok();}/*** 删除*/@RequestMapping("/delete")public R delete(@RequestBody Long[] ids){cheliangyanseService.deleteBatchIds(Arrays.asList(ids));return R.ok();}/*** 提醒接口*/@RequestMapping("/remind/{columnName}/{type}")public R remindCount(@PathVariable("columnName") String columnName, HttpServletRequest request, @PathVariable("type") String type,@RequestParam Map<String, Object> map) {map.put("column", columnName);map.put("type", type);if(type.equals("2")) {SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");Calendar c = Calendar.getInstance();Date remindStartDate = null;Date remindEndDate = null;if(map.get("remindstart")!=null) {Integer remindStart = Integer.parseInt(map.get("remindstart").toString());c.setTime(new Date()); c.add(Calendar.DAY_OF_MONTH,remindStart);remindStartDate = c.getTime();map.put("remindstart", sdf.format(remindStartDate));}if(map.get("remindend")!=null) {Integer remindEnd = Integer.parseInt(map.get("remindend").toString());c.setTime(new Date());c.add(Calendar.DAY_OF_MONTH,remindEnd);remindEndDate = c.getTime();map.put("remindend", sdf.format(remindEndDate));}}Wrapper<CheliangyanseEntity> wrapper = new EntityWrapper<CheliangyanseEntity>();if(map.get("remindstart")!=null) {wrapper.ge(columnName, map.get("remindstart"));}if(map.get("remindend")!=null) {wrapper.le(columnName, map.get("remindend"));}int count = cheliangyanseService.selectCount(wrapper);return R.ok().put("count", count);}}

五、底部获取项目源码(9.9¥带走)

有问题,或者需要协助调试运行项目的也可以

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

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

相关文章

openGauss学习笔记-217 openGauss性能调优-确定性能调优范围-硬件瓶颈点分析-内存

文章目录 openGauss学习笔记-217 openGauss性能调优-确定性能调优范围-硬件瓶颈点分析-内存217.1 查看内存状况217.2 性能参数分析 openGauss学习笔记-217 openGauss性能调优-确定性能调优范围-硬件瓶颈点分析-内存 获取openGauss节点的CPU、内存、I/O和网络资源使用情况&…

C++类和对象-C++运算符重载->加号运算符重载、左移运算符重载、递增运算符重载、赋值运算符重载、关系运算符重载、函数调用运算符重载

#include<iostream> using namespace std; //加号运算符重载 class Person { public: Person() {}; Person(int a, int b) { this->m_A a; this->m_B b; } //1.成员函数实现 号运算符重载 Person operator(const Per…

【王道数据结构】【chapter5树与二叉树】【P158t11】

在二叉树中查找值为x的结点&#xff0c;试编写算法&#xff08;用c语言&#xff09;打印值为x的节点的所有祖先&#xff0c;假设值为x的结点不多于1个 #include <iostream> #include <stack> #include<queue> typedef struct treenode{char data;struct tree…

linux系统zabbix监控配置电话告警

电话报警 睿象云官网操作zabbix-server主机操作睿象云操作zabbix-server的web页面操作 睿象云官网&#xff1a;https://www.aiops.com/ 睿象云官网操作 登录睿象云平台后点击智能告警平台 在集成栏选择监控工具选择zabbix 填写应用名称保存并获取key zabbix-server主机操…

【Linux技术宝典】深入理解Linux基本指令:命令行新手指南

&#x1f4f7; 江池俊&#xff1a; 个人主页 &#x1f525;个人专栏&#xff1a; ✅数据结构冒险记 ✅Linux技术宝典 &#x1f305; 有航道的人&#xff0c;再渺小也不会迷途。 文章目录 一、Linux下基本指令1. ls 指令2. pwd指令3. clear指令4. cd指令什么是家目录&#xf…

ros自定义srv记录

文章目录 自定义srv1. 定义srv文件2. 修改 package.xml3. 修改 CMakeLists.txt4. sevice_server.py5. 运行 catkin build 测试 自定义srv ros 版本&#xff1a;kinetic 自定义test包的文件结构如下 |-- test | |-- CMakeLists.txt | |-- srv | | -- WordCount.srv | …

DS:二叉树的顺序结构及堆的实现

创作不易&#xff0c;兄弟们给个三连&#xff01;&#xff01; 一、二叉树的顺序存储 顺序结构指的是利用数组来存储&#xff0c;一般只适用于表示完全二叉树&#xff0c;原因如上图&#xff0c;存储不完全二叉树会造成空间上的浪费&#xff0c;有的人又会问&#xff0c;为什么…

红色系可视化界面,偶尔用用可以,长时间太刺眼。

继昨日发了白色的可视化界面&#xff0c;表明了不适合做大屏展示用&#xff0c;友友们从很多角度阐述了&#xff0c;为什么不能用白色&#xff0c;大家的结论基本一致。 今天发一些红色&#xff0c;这些在某个节日用个一小会还行&#xff0c;长时间用肯定不适合。

SpringBoot Starter造了个自动锁轮子

可能有人会有疑问&#xff0c;为什么外面已经有更好的组件&#xff0c;为什么还要重复的造轮子&#xff0c;只能说&#xff0c;别人的永远是别人的&#xff0c;自己不去造一下&#xff0c;就只能知其然&#xff0c;而不知其所以然。&#xff08;其实就为了卷&#xff09; 在日常…

攻防演练后的一点随记

攻防演练 攻防演练算是告一段落了&#xff0c;各位红队和蓝队的兄弟们都辛苦了&#xff0c;写一点随记&#xff0c;供大家参考。 记得第一次参加攻防演练是在2018年&#xff0c;当时被派到北京&#xff0c;在某个政企单位做攻防演练支撑工作&#xff0c;然后2020年又被紧急派到…

探索微信小程序的奇妙世界:从入门到进阶

文章目录 一、什么是微信小程序1.1 简要介绍微信小程序的定义和特点1.2 解释小程序与传统应用程序的区别 二、小程序的基础知识2.1 微信小程序的架构2.2 微信小程序生命周期的理解2.3 探索小程序的目录结构和文件类型 三、小程序框架和组件3.1 深入了解小程序框架的核心概念和原…

Hive3.1.2——企业级调优

前言 本篇文章主要整理hive-3.1.2版本的企业调优经验&#xff0c;有误请指出~ 一、性能评估和优化 1.1 Explain查询计划 使用explain命令可以分析查询计划&#xff0c;查看计划中的资源消耗情况&#xff0c;定位潜在的性能问题&#xff0c;并进行相应的优化。 explain执行计划…