基于springboot家政服务管理平台源码和论文

随着家政服务行业的不断发展,家政服务在现实生活中的使用和普及,家政服务行业成为近年内出现的一个新行业,并且能够成为大众广为认可和接受的行为和选择。设计家政服务管理平台的目的就是借助计算机让复杂的销售操作变简单,变高效。

家政服务管理平台采用了B/S结构,JAVA作为开发语言,数据库采用了B/S结构,Mysql数据库进行开发。该系统包括前台操作和后台管理两个部分,一方面,为用户提供首页、服务信息、公告信息、留言反馈、个人中心、后台管理等功能;另一方面,为管理员提供首页、个人中心、用户管理、服务人员管理、服务信息管理、服务类型管理、服务预约管理、服务取消管理、服务分配管理、服务进度管理、评价信息管理、留言反馈、系统管理等功能。

【关键词】家政服务;JAVA;B/S结构

基于springboot家政服务管理平台源码和论文328

Abstract

With the continuous development of the homemaking service industry, the use and popularity of homemaking service in real life has become a new industry in recent years, and can become a widely recognized and accepted behavior and choice of the public. The purpose of designing housekeeping service management platform is to make the complicated sales operation simple and efficient with the help of computer.

Housekeeping service management platform uses B/S structure, JAVA as the development language, database uses B/S structure, Mysql database for development. The system includes two parts of foreground operation and background management. On the one hand, it provides users with home page, service information, announcement information, message feedback, personal center, background management and other functions. On the other hand, it provides administrators with home page, personal center, user management, service personnel management, service information management, service type management, service reservation management, service cancellation management, service allocation management, service progress management, evaluation information management, message feedback, system management and other functions.

【 Key words 】 Housekeeping service; JAVA; B/S structure

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.transaction.annotation.Transactional;
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.FuwuyuyueEntity;
import com.entity.view.FuwuyuyueView;import com.service.FuwuyuyueService;
import com.service.TokenService;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.MD5Util;
import com.utils.MPUtil;
import com.utils.CommonUtil;
import java.io.IOException;/*** 服务预约* 后端接口* @author * @email * @date 2022-05-07 10:17:53*/
@RestController
@RequestMapping("/fuwuyuyue")
public class FuwuyuyueController {@Autowiredprivate FuwuyuyueService fuwuyuyueService;/*** 后端列表*/@RequestMapping("/page")public R page(@RequestParam Map<String, Object> params,FuwuyuyueEntity fuwuyuyue,HttpServletRequest request){String tableName = request.getSession().getAttribute("tableName").toString();if(tableName.equals("yonghu")) {fuwuyuyue.setZhanghao((String)request.getSession().getAttribute("username"));}EntityWrapper<FuwuyuyueEntity> ew = new EntityWrapper<FuwuyuyueEntity>();PageUtils page = fuwuyuyueService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, fuwuyuyue), params), params));return R.ok().put("data", page);}/*** 前端列表*/@IgnoreAuth@RequestMapping("/list")public R list(@RequestParam Map<String, Object> params,FuwuyuyueEntity fuwuyuyue, HttpServletRequest request){EntityWrapper<FuwuyuyueEntity> ew = new EntityWrapper<FuwuyuyueEntity>();PageUtils page = fuwuyuyueService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, fuwuyuyue), params), params));return R.ok().put("data", page);}/*** 列表*/@RequestMapping("/lists")public R list( FuwuyuyueEntity fuwuyuyue){EntityWrapper<FuwuyuyueEntity> ew = new EntityWrapper<FuwuyuyueEntity>();ew.allEq(MPUtil.allEQMapPre( fuwuyuyue, "fuwuyuyue")); return R.ok().put("data", fuwuyuyueService.selectListView(ew));}/*** 查询*/@RequestMapping("/query")public R query(FuwuyuyueEntity fuwuyuyue){EntityWrapper< FuwuyuyueEntity> ew = new EntityWrapper< FuwuyuyueEntity>();ew.allEq(MPUtil.allEQMapPre( fuwuyuyue, "fuwuyuyue")); FuwuyuyueView fuwuyuyueView =  fuwuyuyueService.selectView(ew);return R.ok("查询服务预约成功").put("data", fuwuyuyueView);}/*** 后端详情*/@RequestMapping("/info/{id}")public R info(@PathVariable("id") Long id){FuwuyuyueEntity fuwuyuyue = fuwuyuyueService.selectById(id);return R.ok().put("data", fuwuyuyue);}/*** 前端详情*/@IgnoreAuth@RequestMapping("/detail/{id}")public R detail(@PathVariable("id") Long id){FuwuyuyueEntity fuwuyuyue = fuwuyuyueService.selectById(id);return R.ok().put("data", fuwuyuyue);}/*** 后端保存*/@RequestMapping("/save")public R save(@RequestBody FuwuyuyueEntity fuwuyuyue, HttpServletRequest request){fuwuyuyue.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(fuwuyuyue);fuwuyuyueService.insert(fuwuyuyue);return R.ok();}/*** 前端保存*/@RequestMapping("/add")public R add(@RequestBody FuwuyuyueEntity fuwuyuyue, HttpServletRequest request){fuwuyuyue.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(fuwuyuyue);fuwuyuyueService.insert(fuwuyuyue);return R.ok();}/*** 修改*/@RequestMapping("/update")@Transactionalpublic R update(@RequestBody FuwuyuyueEntity fuwuyuyue, HttpServletRequest request){//ValidatorUtils.validateEntity(fuwuyuyue);fuwuyuyueService.updateById(fuwuyuyue);//全部更新return R.ok();}/*** 删除*/@RequestMapping("/delete")public R delete(@RequestBody Long[] ids){fuwuyuyueService.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<FuwuyuyueEntity> wrapper = new EntityWrapper<FuwuyuyueEntity>();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 = fuwuyuyueService.selectCount(wrapper);return R.ok().put("count", count);}/*** (按值统计)*/@RequestMapping("/value/{xColumnName}/{yColumnName}")public R value(@PathVariable("yColumnName") String yColumnName, @PathVariable("xColumnName") String xColumnName,HttpServletRequest request) {Map<String, Object> params = new HashMap<String, Object>();params.put("xColumn", xColumnName);params.put("yColumn", yColumnName);EntityWrapper<FuwuyuyueEntity> ew = new EntityWrapper<FuwuyuyueEntity>();String tableName = request.getSession().getAttribute("tableName").toString();if(tableName.equals("yonghu")) {ew.eq("zhanghao", (String)request.getSession().getAttribute("username"));}List<Map<String, Object>> result = fuwuyuyueService.selectValue(params, ew);SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");for(Map<String, Object> m : result) {for(String k : m.keySet()) {if(m.get(k) instanceof Date) {m.put(k, sdf.format((Date)m.get(k)));}}}return R.ok().put("data", result);}/*** (按值统计)时间统计类型*/@RequestMapping("/value/{xColumnName}/{yColumnName}/{timeStatType}")public R valueDay(@PathVariable("yColumnName") String yColumnName, @PathVariable("xColumnName") String xColumnName, @PathVariable("timeStatType") String timeStatType,HttpServletRequest request) {Map<String, Object> params = new HashMap<String, Object>();params.put("xColumn", xColumnName);params.put("yColumn", yColumnName);params.put("timeStatType", timeStatType);EntityWrapper<FuwuyuyueEntity> ew = new EntityWrapper<FuwuyuyueEntity>();String tableName = request.getSession().getAttribute("tableName").toString();if(tableName.equals("yonghu")) {ew.eq("zhanghao", (String)request.getSession().getAttribute("username"));}List<Map<String, Object>> result = fuwuyuyueService.selectTimeStatValue(params, ew);SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");for(Map<String, Object> m : result) {for(String k : m.keySet()) {if(m.get(k) instanceof Date) {m.put(k, sdf.format((Date)m.get(k)));}}}return R.ok().put("data", result);}/*** 分组统计*/@RequestMapping("/group/{columnName}")public R group(@PathVariable("columnName") String columnName,HttpServletRequest request) {Map<String, Object> params = new HashMap<String, Object>();params.put("column", columnName);EntityWrapper<FuwuyuyueEntity> ew = new EntityWrapper<FuwuyuyueEntity>();String tableName = request.getSession().getAttribute("tableName").toString();if(tableName.equals("yonghu")) {ew.eq("zhanghao", (String)request.getSession().getAttribute("username"));}List<Map<String, Object>> result = fuwuyuyueService.selectGroup(params, ew);SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");for(Map<String, Object> m : result) {for(String k : m.keySet()) {if(m.get(k) instanceof Date) {m.put(k, sdf.format((Date)m.get(k)));}}}return R.ok().put("data", result);}}
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.transaction.annotation.Transactional;
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.FuwurenyuanEntity;
import com.entity.view.FuwurenyuanView;import com.service.FuwurenyuanService;
import com.service.TokenService;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.MD5Util;
import com.utils.MPUtil;
import com.utils.CommonUtil;
import java.io.IOException;/*** 服务人员* 后端接口* @author * @email * @date 2022-05-07 10:17:53*/
@RestController
@RequestMapping("/fuwurenyuan")
public class FuwurenyuanController {@Autowiredprivate FuwurenyuanService fuwurenyuanService;@Autowiredprivate TokenService tokenService;/*** 登录*/@IgnoreAuth@RequestMapping(value = "/login")public R login(String username, String password, String captcha, HttpServletRequest request) {FuwurenyuanEntity user = fuwurenyuanService.selectOne(new EntityWrapper<FuwurenyuanEntity>().eq("gonghao", username));if(user==null || !user.getMima().equals(password)) {return R.error("账号或密码不正确");}String token = tokenService.generateToken(user.getId(), username,"fuwurenyuan",  "服务人员" );return R.ok().put("token", token);}/*** 注册*/@IgnoreAuth@RequestMapping("/register")public R register(@RequestBody FuwurenyuanEntity fuwurenyuan){//ValidatorUtils.validateEntity(fuwurenyuan);FuwurenyuanEntity user = fuwurenyuanService.selectOne(new EntityWrapper<FuwurenyuanEntity>().eq("gonghao", fuwurenyuan.getGonghao()));if(user!=null) {return R.error("注册用户已存在");}Long uId = new Date().getTime();fuwurenyuan.setId(uId);fuwurenyuanService.insert(fuwurenyuan);return R.ok();}/*** 退出*/@RequestMapping("/logout")public R logout(HttpServletRequest request) {request.getSession().invalidate();return R.ok("退出成功");}/*** 获取用户的session用户信息*/@RequestMapping("/session")public R getCurrUser(HttpServletRequest request){Long id = (Long)request.getSession().getAttribute("userId");FuwurenyuanEntity user = fuwurenyuanService.selectById(id);return R.ok().put("data", user);}/*** 密码重置*/@IgnoreAuth@RequestMapping(value = "/resetPass")public R resetPass(String username, HttpServletRequest request){FuwurenyuanEntity user = fuwurenyuanService.selectOne(new EntityWrapper<FuwurenyuanEntity>().eq("gonghao", username));if(user==null) {return R.error("账号不存在");}user.setMima("123456");fuwurenyuanService.updateById(user);return R.ok("密码已重置为:123456");}/*** 后端列表*/@RequestMapping("/page")public R page(@RequestParam Map<String, Object> params,FuwurenyuanEntity fuwurenyuan,HttpServletRequest request){EntityWrapper<FuwurenyuanEntity> ew = new EntityWrapper<FuwurenyuanEntity>();PageUtils page = fuwurenyuanService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, fuwurenyuan), params), params));return R.ok().put("data", page);}/*** 前端列表*/@IgnoreAuth@RequestMapping("/list")public R list(@RequestParam Map<String, Object> params,FuwurenyuanEntity fuwurenyuan, HttpServletRequest request){EntityWrapper<FuwurenyuanEntity> ew = new EntityWrapper<FuwurenyuanEntity>();PageUtils page = fuwurenyuanService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, fuwurenyuan), params), params));return R.ok().put("data", page);}/*** 列表*/@RequestMapping("/lists")public R list( FuwurenyuanEntity fuwurenyuan){EntityWrapper<FuwurenyuanEntity> ew = new EntityWrapper<FuwurenyuanEntity>();ew.allEq(MPUtil.allEQMapPre( fuwurenyuan, "fuwurenyuan")); return R.ok().put("data", fuwurenyuanService.selectListView(ew));}/*** 查询*/@RequestMapping("/query")public R query(FuwurenyuanEntity fuwurenyuan){EntityWrapper< FuwurenyuanEntity> ew = new EntityWrapper< FuwurenyuanEntity>();ew.allEq(MPUtil.allEQMapPre( fuwurenyuan, "fuwurenyuan")); FuwurenyuanView fuwurenyuanView =  fuwurenyuanService.selectView(ew);return R.ok("查询服务人员成功").put("data", fuwurenyuanView);}/*** 后端详情*/@RequestMapping("/info/{id}")public R info(@PathVariable("id") Long id){FuwurenyuanEntity fuwurenyuan = fuwurenyuanService.selectById(id);return R.ok().put("data", fuwurenyuan);}/*** 前端详情*/@IgnoreAuth@RequestMapping("/detail/{id}")public R detail(@PathVariable("id") Long id){FuwurenyuanEntity fuwurenyuan = fuwurenyuanService.selectById(id);return R.ok().put("data", fuwurenyuan);}/*** 后端保存*/@RequestMapping("/save")public R save(@RequestBody FuwurenyuanEntity fuwurenyuan, HttpServletRequest request){fuwurenyuan.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(fuwurenyuan);FuwurenyuanEntity user = fuwurenyuanService.selectOne(new EntityWrapper<FuwurenyuanEntity>().eq("gonghao", fuwurenyuan.getGonghao()));if(user!=null) {return R.error("用户已存在");}fuwurenyuan.setId(new Date().getTime());fuwurenyuanService.insert(fuwurenyuan);return R.ok();}/*** 前端保存*/@RequestMapping("/add")public R add(@RequestBody FuwurenyuanEntity fuwurenyuan, HttpServletRequest request){fuwurenyuan.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(fuwurenyuan);FuwurenyuanEntity user = fuwurenyuanService.selectOne(new EntityWrapper<FuwurenyuanEntity>().eq("gonghao", fuwurenyuan.getGonghao()));if(user!=null) {return R.error("用户已存在");}fuwurenyuan.setId(new Date().getTime());fuwurenyuanService.insert(fuwurenyuan);return R.ok();}/*** 修改*/@RequestMapping("/update")@Transactionalpublic R update(@RequestBody FuwurenyuanEntity fuwurenyuan, HttpServletRequest request){//ValidatorUtils.validateEntity(fuwurenyuan);fuwurenyuanService.updateById(fuwurenyuan);//全部更新return R.ok();}/*** 删除*/@RequestMapping("/delete")public R delete(@RequestBody Long[] ids){fuwurenyuanService.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<FuwurenyuanEntity> wrapper = new EntityWrapper<FuwurenyuanEntity>();if(map.get("remindstart")!=null) {wrapper.ge(columnName, map.get("remindstart"));}if(map.get("remindend")!=null) {wrapper.le(columnName, map.get("remindend"));}int count = fuwurenyuanService.selectCount(wrapper);return R.ok().put("count", count);}}

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

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

相关文章

深圳 福田区 建筑模型 su rhino

深圳 福田区 建筑模型 su rhino 只有福田区的&#xff0c;其他区的没有&#xff0c;其他市的没有 模型有skp&#xff0c;obj格式 模型如图 部分数据&#xff1a;

部署网站时遇到请求出现状态码206,可能是nginx配置问题

在部署网站系统的时候&#xff0c;部分接口出现状态码206&#xff0c;导致功能不能正常使用&#xff0c;经过排查&#xff0c;猜测可能是nginx配置中出现的问题。 目录 一、问题原因 二、解决办法 一、问题原因 当使用Nginx作为代理服务器时&#xff0c;确实存在一个代理缓存…

常用电子器件学习——三极管

三极管介绍 三极管&#xff0c;全称应为半导体三极管&#xff0c;也称双极型晶体管、晶体三极管&#xff0c;是一种电流控制电流的半导体器件其作用是把微弱信号放大成幅度值较大的电信号&#xff0c; 也用作无触点开关。晶体三极管&#xff0c;是半导体基本元器件之一&#xf…

浅学JAVAFX布局

JAVAFX FlowPane布局 Flowpane是一个容器。它在一行上排列连续的子组件&#xff0c;并且如果当前行填充满了以后&#xff0c;则自动将子组件向下推到一行 public class FlowPanedemo extends Application {Overridepublic void start(Stage stage) throws Exception {stage.s…

肺癌相关文献6

第十四篇 Classification of lung adenocarcinoma based on stemness scores in bulk and single cell transcriptomes IF&#xff1a;6.0 中科院分区:2区 生物学WOS分区&#xff1a;Q1被引次数&#xff1a; 4 背景&#xff1a;癌细胞具有无限期自我更新和增殖的能力[2]。在一…

Spring Security 6.x 系列【72】授权篇之角色分层

有道无术,术尚可求,有术无道,止于术。 本系列Spring Boot 版本 3.1.0 本系列Spring Security 版本 6.1.0 源码地址:https://gitee.com/pearl-organization/study-spring-security-demo 文章目录 1. 前言2. RoleHierarchy3. 案例演示3.1 期望3.2 集成3.2 测试4. 源码分析4…

python基础学习-03 安装

python3 可应用于多平台包括 Windows、Linux 和 Mac OS X。 Unix (Solaris, Linux, FreeBSD, AIX, HP/UX, SunOS, IRIX, 等等。)Win 9x/NT/2000Macintosh (Intel, PPC, 68K)OS/2DOS (多个DOS版本)PalmOSNokia 移动手机Windows CEAcorn/RISC OSBeOSAmigaVMS/OpenVMSQNXVxWorksP…

高校寝室卫生检查系统UML建模——活动图

学生查看历史的通知公告学生投诉寝室卫生检查 学生查看其他寝室的卫生情况 发起报修请求

取消默认进入conda的base环境

文章目录 输入命令&#xff1a; conda config --set auto_activate_base false即可

【强化学习】QAC、A2C、A3C学习笔记

强化学习算法&#xff1a;QAC vs A2C vs A3C 引言 经典的REINFORCE算法为我们提供了一种直接优化策略的方式&#xff0c;它通过梯度上升方法来寻找最优策略。然而&#xff0c;REINFORCE算法也有其局限性&#xff0c;采样效率低、高方差、收敛性差、难以处理高维离散空间。 为…

Vue3全局组件和自定义指令

目录 全局组件 全局指令 局部指令 全局组件 全局组件是在main.js中注册的&#xff0c;通过app实例.component创建 main.js import { createApp } from vue import App from ./App.vue //导入组件 import CustormComp from ./components/CustormComp.vue // 创建App实例挂载…

【centos7安装docker】

背景&#xff1a; 学习docker&#xff0c;我是想做一个隔离环境&#xff0c;并且部署的话&#xff0c;希望实现自动化&#xff0c;不为安装软件而烦恼&#xff0c;保证每个人的环境一致。 2C4G内存 50G磁盘的虚拟机事先已经准备完毕。 1.查看下centos版本&#xff0c;docker要…

CorLoc(Correct Localization)是什么?

“Correct Localization”&#xff08;CorLoc&#xff09;是一种用于评估目标检测模型性能的指标&#xff0c;强调模型是否能够准确地定位目标对象。该指标通常在训练数据上使用&#xff0c;用于检测模型对目标位置的精确性。 以下是对CorLoc的详细说明&#xff1a; 1.目标检测…

【大数据】Flink 系统架构

Flink 系统架构 1.Flink 组件1.1 JobManager1.2 ResourceManager1.3 TaskManager1.4 Dispatcher 2.应用部署2.1 框架模式2.2 库模式 3.任务执行4.高可用设置4.1 TaskManager 故障4.2 JobManager 故障 Flink 是一个用于状态化并行流处理的分布式系统。它的搭建涉及多个进程&…

aop介绍

AOP&#xff08;Aspect-Oriented Programming&#xff0c;面向方面编程&#xff09;&#xff0c;可以说是OOP&#xff08;Object-Oriented Programing&#xff0c;面向对象编程&#xff09;的补充和完善。OOP引入封装、继承和多态性等概念来建立一种对象层次结构&#xff0c;用…

Linux 快速上手

Liunx 不同的操作系统 Linux、Unix、Windows…Linux的不同的发行版本&#xff1a; debian、ubuntu、deepin、rethat、centos、fedora等等 Linux系统安装 可以参考我的安装Linux系统的文章&#xff0c;或者看网上找下安装步骤 Linux命令 命令行基础操作: 1. 命令行 [rootl…

代码随想录算法训练营第14天 | 二叉树的前序、中序、后序遍历(递归+迭代法)

二叉树的理论基础&#xff1a;&#xff08;二叉树的种类&#xff0c;存储方式&#xff0c;遍历方式 以及二叉树的定义&#xff09; https://programmercarl.com/%E4%BA%8C%E5%8F%89%E6%A0%91%E7%90%86%E8%AE%BA%E5%9F%BA%E7%A1%80.html 二叉树的递归遍历 Leetcode对应的三道习…

我们应该解决哪些计算机网络中的问题,才能实现进程之间基于网络的通信呢?

ps&#xff1a;本文章的图片内容来源都是来自于湖科大教书匠的视频&#xff0c;声明&#xff1a;仅供自己复习&#xff0c;里面加上了自己的理解 这里附上视频链接地址&#xff1a;1.6 计算机网络体系结构&#xff08;1&#xff09;—常见的计算机网络体系结构_哔哩哔哩_bilibi…

YOLOv5中Ghostbottleneck结构shortcut=True和shortcut=False有什么区别

GhostBotleneck结构中的shodcutTrue和shorcutFalse的区别在干是否使用残差连接。当shorcuTrue时&#xff0c;使用残差连接&#xff0c;可以以加速模型的收敛速度和提高模型的准确率&#xff0c;当shorcuFalse时&#xff0c;不使用残差连接&#xff0c;可以减少模型的参数数量和…

what is `ContentCachingRequestWrapper` does?

ContentCachingRequestWrapper 是 Spring Framework 中提供的一种包装类&#xff0c;它扩展了 HttpServletRequestWrapper 类&#xff0c;用于缓存请求体的内容。 通常在处理 HTTP 请求时&#xff0c;原生的 HttpServletRequest 对象中的输入流 (getInputStream()) 只能被读取一…