ssm单位人事管理系统源码和文档

ssm单位人事管理系统源码和文档033


 开发工具:idea 
 数据库mysql5.7+
 数据库链接工具:navcat,小海豚等
  技术:ssm 

摘  要

现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本单位人事管理系统就是在这样的大环境下诞生,其可以帮助管理者在短时间内处理完毕庞大的数据信息,使用这种软件工具可以帮助管理人员提高事务处理效率,达到事半功倍的效果。此单位人事管理系统利用当下成熟完善的SSM框架,使用跨平台的可开发大型商业网站的Java语言,以及最受欢迎的RDBMS应用软件之一的Mysql数据库进行程序开发。实现了人员基础数据的管理,考勤管理,职位和职称修改。单位人事管理系统的开发根据操作人员需要设计的界面简洁美观,在功能模块布局上跟同类型网站保持一致,程序在实现基本要求功能时,也为数据信息面临的安全问题提供了一些实用的解决方案。可以说该程序在帮助管理者高效率地处理工作事务的同时,也实现了数据信息的整体化,规范化与自动化。

关键词:单位人事管理系统;SSM框架;Mysql;自动化

Abstract

The fast-paced development of the modern economy and the continuous improvement and upgrading of information technology have allowed the management of traditional data information to be upgraded to software storage, induction, and centralized management of data information. This book lending system was born in such a large environment, which can help managers to process huge data information in a short time. Using this software tool can help managers improve transaction processing efficiency and achieve double the result with half the effort. This book lending system uses the current mature and perfect SSM framework, cross-platform Java language that can be used to develop large-scale commercial websites, and Mysql database, one of the most popular RDBMS application software, for program development. It realizes the functions of book basic data management, book borrowing and return, review of registered teacher information, and announcement information release. The development of the book lending system is designed to be simple and beautiful according to the needs of the operator. The layout of the function module is consistent with the same type of website. When the program realizes the basic requirements, it also provides some practical solutions for the security problems faced by the data information. . It can be said that this program not only helps managers efficiently handle work affairs, but also realizes the integration, standardization and automation of data information.

Key WordsBook borrowing system; SSM framework; Mysql; automation

研究背景

当前社会各行业领域竞争压力非常大,随着当前时代的信息化,科学化发展,让社会各行业领域都争相使用新的信息技术,对行业内的各种相关数据进行科学化,规范化管理。这样的大环境让那些止步不前,不接受信息改革带来的信息技术的企业随时面临被淘汰,被取代的风险。所以当今,各个行业领域,不管是传统的教育行业,餐饮行业,还是旅游行业,医疗行业等领域都将使用新的信息技术进行信息革命,改变传统的纸质化,需要人手工处理工作事务的办公环境。软件信息技术能够覆盖社会各行业领域是时代的发展要求,各种数据以及文件真正实现电子化是信息社会发展的不可逆转的必然趋势。本单位人事管理系统也是紧跟科学技术的发展,运用当今一流的软件技术实现软件系统的开发,让人事管理信息完全通过管理系统实现科学化,规范化,程序化管理。从而帮助信息管理者节省事务处理的时间,降低数据处理的错误率,对于基础数据的管理水平可以起到促进作用,也从一定程度上对随意的业务管理工作进行了避免,同时,单位人事管理系统的数据库里面存储的各种动态信息,也为上层管理人员作出重大决策提供了大量的事实依据。总之,单位人事管理系统是一款可以真正提升管理者的办公效率的软件系统。

package com.controller;import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import com.alibaba.fastjson.JSONObject;
import java.util.*;
import org.springframework.beans.BeanUtils;
import javax.servlet.http.HttpServletRequest;
import org.springframework.web.context.ContextLoader;
import javax.servlet.ServletContext;
import com.service.TokenService;
import com.utils.StringUtil;
import java.lang.reflect.InvocationTargetException;import org.apache.commons.lang3.StringUtils;
import com.annotation.IgnoreAuth;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;import com.entity.ChuqinEntity;import com.service.ChuqinService;
import com.entity.view.ChuqinView;
import com.service.YonghuService;
import com.entity.YonghuEntity;
import com.utils.PageUtils;
import com.utils.R;/*** 考勤* 后端接口* @author* @email* @date 2021-02-25
*/
@RestController
@Controller
@RequestMapping("/chuqin")
public class ChuqinController {private static final Logger logger = LoggerFactory.getLogger(ChuqinController.class);@Autowiredprivate ChuqinService chuqinService;@Autowiredprivate TokenService tokenService;//级联表service@Autowiredprivate YonghuService yonghuService;//字典表mapMap<String, Map<Integer, String>> dictionaryMap;/*** 后端列表*/@RequestMapping("/page")public R page(@RequestParam Map<String, Object> params, HttpServletRequest request){logger.debug("page方法:,,Controller:{},,params:{}",this.getClass().getName(),JSONObject.toJSONString(params));String role = String.valueOf(request.getSession().getAttribute("role"));if(StringUtil.isNotEmpty(role) && "用户".equals(role)){params.put("yonghuId",request.getSession().getAttribute("userId"));}PageUtils page = chuqinService.queryPage(params);//字典表数据转换List<ChuqinView> list =(List<ChuqinView>)page.getList();ServletContext servletContext = ContextLoader.getCurrentWebApplicationContext().getServletContext();dictionaryMap = (Map<String, Map<Integer, String>>) servletContext.getAttribute("dictionaryMap");for(ChuqinView c:list){this.dictionaryConvert(c);}return R.ok().put("data", page);}/*** 后端详情*/@RequestMapping("/info/{id}")public R info(@PathVariable("id") Long id){logger.debug("info方法:,,Controller:{},,id:{}",this.getClass().getName(),id);ChuqinEntity chuqin = chuqinService.selectById(id);if(chuqin !=null){//entity转viewChuqinView view = new ChuqinView();BeanUtils.copyProperties( chuqin , view );//把实体数据重构到view中//级联表YonghuEntity yonghu = yonghuService.selectById(chuqin.getYonghuId());if(yonghu != null){BeanUtils.copyProperties( yonghu , view ,new String[]{ "id", "createDate"});//把级联的数据添加到view中,并排除id和创建时间字段}//字典表字典转换ServletContext servletContext = ContextLoader.getCurrentWebApplicationContext().getServletContext();dictionaryMap = (Map<String, Map<Integer, String>>) servletContext.getAttribute("dictionaryMap");this.dictionaryConvert(view);return R.ok().put("data", view);}else {return R.error(511,"查不到数据");}}/*** 打卡*/@RequestMapping("/clockIn")public R clockIn(String flag, HttpServletRequest request){logger.debug("clockIn方法:,,Controller:{},,flag:{}",this.getClass().getName(),flag);try {Integer id = (Integer)request.getSession().getAttribute("userId");String role = String.valueOf(request.getSession().getAttribute("role"));if(StringUtil.isEmpty(role) || "管理员".equals(role)){return R.error(511,"没有打卡权限");}Date d = new Date();SimpleDateFormat format1 = new SimpleDateFormat("yyyy-MM-dd");String date = format1.format(d);List<ChuqinEntity> chuqinList = new ArrayList<ChuqinEntity>();//要生成的list数据List<String> s = new ArrayList<>();s.add("yonghu_id+0");Wrapper<ChuqinEntity> queryWrapper3 = new EntityWrapper<ChuqinEntity>().eq("yonghu_id",id).orderDesc(s);List<ChuqinEntity> oldChuqinList = chuqinService.selectList(queryWrapper3);if("1".equals(flag)){//上班卡Date date1 = new Date();date1.setHours(8);date1.setMinutes(0);date1.setSeconds(0);//上班打卡//新增前先查看当前用户最大打卡时间if(oldChuqinList != null && oldChuqinList.size()>0){ChuqinEntity entity = oldChuqinList.get(0);String today = entity.getToday();//获取出勤表最大出勤//把日期加一天Date todayTime = format1.parse(today);Calendar   calendar = new GregorianCalendar();calendar.setTime(todayTime);calendar.add(calendar.DATE,1);String newToday = format1.format(calendar.getTime());if(date.equals(today)){return R.error(511,"已经打过上班卡了");}else if(!date.equals(newToday)){//当天日期 不是出勤最大日期加一天的话   就是补充缺勤日期chuqinList = this.getQueQin(d, format1, today, id);}if(chuqinList !=null && chuqinList.size() >0){chuqinService.insertBatch(chuqinList);}//插入当天的上班卡ChuqinEntity chuqin = new ChuqinEntity();chuqin.setOnTime(d);if(d.compareTo(date1)>0){//当前时间d 大于规定时间date1chuqin.setChuqinTypes(6);//设置为迟到}else if(d.compareTo(date1)<=0){//当前时间d 小于等于规定时间date1chuqin.setChuqinTypes(3);//设置为未打下班卡}chuqin.setCreateTime(d);chuqin.setToday(date);chuqin.setYonghuId(id);chuqinService.insert(chuqin);}else{//第一次打卡ChuqinEntity chuqin = new ChuqinEntity();chuqin.setOnTime(d);if(d.compareTo(date1)>0){//当前时间d 大于规定时间date1chuqin.setChuqinTypes(6);//设置为迟到}else if(d.compareTo(date1)<=0){//当前时间d 小于等于规定时间date1chuqin.setChuqinTypes(3);//设置为未打下班卡}chuqin.setCreateTime(d);chuqin.setToday(date);chuqin.setYonghuId(id);chuqinService.insert(chuqin);}}else if("2".equals(flag)){//下班卡Date date1 = new Date();date1.setHours(19);date1.setMinutes(00);date1.setSeconds(0);Date date2 = new Date();date2.setHours(18);date2.setMinutes(00);date2.setSeconds(0);//下班打卡if(oldChuqinList!=null){//不是第一次打卡//查询当前用户是否生成了上班打卡Wrapper<ChuqinEntity> queryWrapper = new EntityWrapper<ChuqinEntity>().eq("yonghu_id",id).eq("today",date).orderDesc(s);ChuqinEntity chuqinEntity = chuqinService.selectOne(queryWrapper);if(chuqinEntity !=null){//生成了上班打卡chuqinEntity.setDownTime(d);if("6".equals(String.valueOf(chuqinEntity.getChuqinTypes()))){}else if(d.compareTo(date1)>0){//当前时间d 大于规定时间   加班int hours = d.getHours();int i = hours - 19+1;if(i>0){chuqinEntity.setOvertimeNumber(i);}chuqinEntity.setChuqinTypes(5);//设置为迟到}else if(d.compareTo(date2)<0){//当前时间d 小于等于规定时间 早退chuqinEntity.setChuqinTypes(7);//设置为未打下班卡}else{chuqinEntity.setChuqinTypes(1);}chuqinService.updateById(chuqinEntity);}else{//当天上午没有生成上班打卡,要防止用户昨天及之前没有生成打卡记录Wrapper<ChuqinEntity> queryWrapper1 = new EntityWrapper<ChuqinEntity>().eq("yonghu_id",id).orderDesc(s);List<ChuqinEntity> list = chuqinService.selectList(queryWrapper1);if(list != null && list.size()>0){ChuqinEntity entity = list.get(0);String today = entity.getToday();//获取出勤表最大出勤Date todayTime = format1.parse(today);Calendar calendar = new GregorianCalendar();calendar.setTime(todayTime);calendar.add(calendar.DATE,1);String newToday = format1.format(calendar.getTime());if(date.equals(today)){//昨天id+1  等于今天的话  就是直接新增下午打卡ChuqinEntity chuqin = new ChuqinEntity();chuqin.setDownTime(d);chuqin.setChuqinTypes(2);chuqinService.insert(chuqin);}else if(!date.equals(newToday)){//当天日期 不是出勤最大日期加一天的话   就是补充缺勤日期chuqinList = this.getQueQin(d, format1, today, id);}if(chuqinList !=null && chuqinList.size() >0){chuqinService.insertBatch(chuqinList);}}}}else{//第一次打卡ChuqinEntity chuqin = new ChuqinEntity();chuqin.setDownTime(d);chuqin.setChuqinTypes(2);chuqinService.insert(chuqin);}}else {return R.error(511,"未知错误");}} catch (ParseException e) {e.printStackTrace();}catch (Exception e) {e.printStackTrace();}return R.ok();}
//
//
//
// /**
//    * 后端保存
//    */
//    @RequestMapping("/save")
//    public R save(@RequestBody ChuqinEntity chuqin, HttpServletRequest request){
//        logger.debug("save方法:,,Controller:{},,chuqin:{}",this.getClass().getName(),chuqin.toString());
//        Wrapper<ChuqinEntity> queryWrapper = new EntityWrapper<ChuqinEntity>()
//            .eq("yonghu_id", chuqin.getYonghuId())
//            .eq("today", chuqin.getToday())
//            .eq("chuqin_types", chuqin.getChuqinTypes())
//            .eq("overtimeNumber", chuqin.getOvertimeNumber())
//            ;
//        logger.info("sql语句:"+queryWrapper.getSqlSegment());
//        ChuqinEntity chuqinEntity = chuqinService.selectOne(queryWrapper);
//        if(chuqinEntity==null){
//            chuqin.setCreateTime(new Date());
//        //  String role = String.valueOf(request.getSession().getAttribute("role"));
//        //  if("".equals(role)){
//        //      chuqin.set
//        //  }
//            chuqinService.insert(chuqin);
//            return R.ok();
//        }else {
//            return R.error(511,"表中有相同数据");
//        }
//    }
//
//    /**
//    * 修改
//    */
//    @RequestMapping("/update")
//    public R update(@RequestBody ChuqinEntity chuqin, HttpServletRequest request){
//        logger.debug("update方法:,,Controller:{},,chuqin:{}",this.getClass().getName(),chuqin.toString());
//        //根据字段查询是否有相同数据
//        Wrapper<ChuqinEntity> queryWrapper = new EntityWrapper<ChuqinEntity>()
//            .notIn("id",chuqin.getId())
//            .eq("yonghu_id", chuqin.getYonghuId())
//            .eq("today", chuqin.getToday())
//            .eq("chuqin_types", chuqin.getChuqinTypes())
//            .eq("overtimeNumber", chuqin.getOvertimeNumber())
//            ;
//        logger.info("sql语句:"+queryWrapper.getSqlSegment());
//        ChuqinEntity chuqinEntity = chuqinService.selectOne(queryWrapper);
//                chuqin.setOnTime(new Date());
//                chuqin.setDownTime(new Date());
//        if(chuqinEntity==null){
//            //  String role = String.valueOf(request.getSession().getAttribute("role"));
//            //  if("".equals(role)){
//            //      chuqin.set
//            //  }
//            chuqinService.updateById(chuqin);//根据id更新
//            return R.ok();
//        }else {
//            return R.error(511,"表中有相同数据");
//        }
//    }/*** 删除*/@RequestMapping("/delete")public R delete(@RequestBody Integer[] ids){logger.debug("delete:,,Controller:{},,ids:{}",this.getClass().getName(),ids.toString());chuqinService.deleteBatchIds(Arrays.asList(ids));return R.ok();}/***字典表数据转换*/public void dictionaryConvert(ChuqinView chuqinView){//当前表的字典字段if(StringUtil.isNotEmpty(String.valueOf(chuqinView.getChuqinTypes()))){chuqinView.setChuqinValue(dictionaryMap.get("chuqin_types").get(chuqinView.getChuqinTypes()));}//级联表的字典字段if(StringUtil.isNotEmpty(String.valueOf(chuqinView.getZhiwuTypes()))){chuqinView.setZhiwuValue(dictionaryMap.get("zhiwu_types").get(chuqinView.getZhiwuTypes()));}if(StringUtil.isNotEmpty(String.valueOf(chuqinView.getZhichengTypes()))){chuqinView.setZhichengValue(dictionaryMap.get("zhicheng_types").get(chuqinView.getZhichengTypes()));}if(StringUtil.isNotEmpty(String.valueOf(chuqinView.getSexTypes()))){chuqinView.setSexValue(dictionaryMap.get("sex_types").get(chuqinView.getSexTypes()));}if(StringUtil.isNotEmpty(String.valueOf(chuqinView.getPoliticsTypes()))){chuqinView.setPoliticsValue(dictionaryMap.get("politics_types").get(chuqinView.getPoliticsTypes()));}if(StringUtil.isNotEmpty(String.valueOf(chuqinView.getMarriageTypes()))){chuqinView.setMarriageValue(dictionaryMap.get("marriage_types").get(chuqinView.getMarriageTypes()));}if(StringUtil.isNotEmpty(String.valueOf(chuqinView.getEducationTypes()))){chuqinView.setEducationValue(dictionaryMap.get("education_types").get(chuqinView.getEducationTypes()));}}/**** @param d   当前日期* @param format1 "yyyy-MM-dd"* @param newToday 数据库存的最大打卡日期 加一天* @param id    打卡人id* @return* @throws ParseException*/public static  List<ChuqinEntity> getQueQin(Date d,SimpleDateFormat format1,String newToday,Integer id) throws ParseException {List<ChuqinEntity> list = new ArrayList<>();// 返回的日期集合DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");Date start = dateFormat.parse(newToday);Calendar   calendar = new GregorianCalendar();calendar.setTime(d);calendar.add(calendar.DATE,-1); //当前时间减去一天,即一天前的时间Date end = dateFormat.parse(format1.format(calendar.getTime()));Calendar tempStart = Calendar.getInstance();tempStart.setTime(start);Calendar tempEnd = Calendar.getInstance();tempEnd.setTime(end);tempEnd.add(Calendar.DATE, +1);// 日期加1(包含结束)while (tempStart.before(tempEnd)) {ChuqinEntity chuqinEntity = new ChuqinEntity();chuqinEntity.setYonghuId(id);chuqinEntity.setToday(dateFormat.format(tempStart.getTime()));chuqinEntity.setCreateTime(d);chuqinEntity.setChuqinTypes(4);list.add(chuqinEntity);tempStart.add(Calendar.DAY_OF_YEAR, 1);}return list;}}

 

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

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

相关文章

C语言好题解析(二)

目录 递归类型例题1例题2例题3例题4例题5例题6 递归类型 例题1 根据下面递归函数&#xff1a;调用函数Fun(2)&#xff0c;返回值是多少&#xff08; &#xff09;int Fun(int n) {if (n 5)return 2;elsereturn 2 * Fun(n 1); } A.2 B.4 C.8 D.16【答案】 D 【分析】 …

Nginx运行Vue项目:基本运行

需求 在Nginx服务器中&#xff0c;运行Vue项目。 说明 Vue项目打包生成的生产文件&#xff0c;是无法直接在浏览器打开的。需要放到Nginx服务器中&#xff0c;才能够访问。 本文章只介绍最基本的情况&#xff1a;Nginx中运行一个Vue项目。 实际生产环境&#xff0c;一个Ng…

Vitis高层次综合学习——FPGA

高层次综合 什么是高层次综合&#xff1f;就是使用高级语言&#xff08;如C/C&#xff09;来编写FPGA算法程序。 在高层次综合上并不需要制定微架构决策&#xff0c;如创建状态机、数据路径、寄存器流水线等。这些细节可以留给 HLS 工具&#xff0c;通过提供输入约束&#xff…

【RP2040】香瓜树莓派RP2040之LED

本文最后修改时间&#xff1a;2022年09月05日 11:02 一、本节简介 本节介绍如何编写一个LED驱动。 二、实验平台 1、硬件平台 1&#xff09;树莓派pico开发板 ①树莓派pico开发板*2 ②micro usb数据线*2 2&#xff09;电脑 2、软件平台 1&#xff09;VS CODE 三、版权声…

P1955 [NOI2015] 程序自动分析

[NOI2015] 程序自动分析 题目描述 在实现程序自动分析的过程中&#xff0c;常常需要判定一些约束条件是否能被同时满足。 考虑一个约束满足问题的简化版本&#xff1a;假设 x 1 , x 2 , x 3 , ⋯ x_1,x_2,x_3,\cdots x1​,x2​,x3​,⋯ 代表程序中出现的变量&#xff0c;给…

FOSSASIA Summit 2023 - 开源亚洲行

作者 Ted 致歉&#xff1a;本来这篇博客早就该发出&#xff0c;但是由于前几个月频繁差旅导致精神不佳&#xff0c;再加上后续我又参加了 Linux 基金会 7/27 在瑞士日内瓦举办的 Open Source Congress&#xff0c;以及 7/29-30 台北的 COSCUP23&#xff0c;干脆三篇连发&#x…

FPGA_学习_14_第一个自写模块的感悟和ila在线调试教程与技巧(寻找APD的击穿偏压)

前一篇博客我们提到了&#xff0c;如果要使用算法找到Vbr&#xff0c;通过寻找APD采集信号的噪声方差的剧变点去寻找Vbr是一个不错的方式。此功能的第一步是在FPGA中实现方差的计算&#xff0c;这个我们已经在上一篇博客中实现了。 继上一篇博客之后&#xff0c;感觉过了很久了…

数据结构——栈(C语言)

需求&#xff1a;无 栈的概念&#xff1a; 栈&#xff1a;一种特殊的线性表&#xff0c;其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈顶&#xff0c;另一端为栈底。栈中的数据元素遵守后进先出&#xff08;LIFO&#xff09;原则。压栈&…

在一小时内构建您的深度学习应用程序

一、说明 我已经做了将近十年的数据分析。有时&#xff0c;我使用机器学习技术从数据中获取见解&#xff0c;并且我习惯于使用经典 ML。 虽然我已经通过了神经网络和深度学习的一些MOOC&#xff0c;但我从未在我的工作中使用过它们&#xff0c;这个领域对我来说似乎很有挑战性。…

理解持续测试,才算理解DevOps

软件产品的成功与否&#xff0c;在很大程度上取决于对市场需求的及时把控&#xff0c;采用DevOps可以加快产品交付速度&#xff0c;改善用户体验&#xff0c;从而有助于保持领先于竞争对手的优势。 作为敏捷开发方法论的一种扩展&#xff0c;DevOps强调开发、测试和运维不同团…

青翼科技自研2路250MSPS DA回放FMC子卡模块

FMC150_V30是一款基于VITA57.1规范的2路125MSPS采样率16位分辨率AD采集、2路250MSPS采样率16位分辨率DA回放FMC子卡模块。该模块遵循VITA57.1规范&#xff0c;可直接与符合VITA57.1规范的FPGA载卡配合使用&#xff0c;板卡ADC器件采用ADI公司的AD9268芯片&#xff0c;板卡DAC器…

React Native expo项目修改应用程序名称

https://expo.dev/accounts/xutongbao/projects npm install --global eas-cli && \eas init --id e32cf2c0-da5b-4a65-814a-4958d58f0ca7 eas init --id e32cf2c0-da5b-4a65-814a-4958d58f0ca7 app.config.js: export default {name: 学习,slug: learn-gpt,owner: x…

【C++】list容器

1.list基本概念 2.list构造函数 #include <iostream> using namespace std;#include<list> //链表list容器构造函数//输出list链表 void printList(const list<int>& L) {for (list<int>::const_iterator it L.begin(); it ! L.end(); it){cout &…

深度学习1:通过模型评价指标优化训练

P(Positive)表示预测为正样本&#xff0c;N(negative)表示预测为负样本&#xff0c;T(True)表示预测正确,F(False)表示预测错误。 TP&#xff1a;正样本预测正确的数量&#xff08;正确检测&#xff09; FP&#xff1a;负样本预测正确数量&#xff08;误检测&#xff09; TN…

小米有品众筹,小米上新3D打印机!米家3D打印机购买前必看的注意事项!

小米推出3D打印机&#xff0c;米家3D打印机购买前必看 3D打印机在人们的生活中发挥着巨大的作用&#xff0c;无论是在科研实验室还是家庭工作室&#xff0c;它们正以惊人的速度改变着我们的世界。最近&#xff0c;科技巨头小米也加入了这一领域&#xff0c;推出了一款全新的&q…

IT运维:使用数据分析平台监控深信服防火墙

概述 深信服防火墙自身监控可以满足绝大部分需求&#xff0c;比如哪个应用占了最大带宽&#xff0c;哪个用户访问了哪些网站&#xff1f;这里我们为什么使用鸿鹄呢&#xff1f;因为我们要的是数据的处理和分析&#xff0c;比如某个用户在某个事件都做了哪些行为&#xff0c;这个…

【人工智能124种任务大集合】-集齐了自然语言处理(NLP),计算机视觉(CV),语音识别,多模态等任务

大家好&#xff0c;我是微学AI&#xff0c;今天给大家介绍一下人工智能124种任务大集合&#xff0c;任务集合主要包括4大类&#xff1a;自然语言处理&#xff08;NLP&#xff09;、计算机视觉&#xff08;CV&#xff09;、语音识别、多模态任务。 我这里整理了124种应用场景任…

云安全攻防(十二)之 手动搭建 K8S 环境搭建

手动搭建 K8S 环境搭建 首先前期我们准备好三台 Centos7 机器&#xff0c;配置如下&#xff1a; 主机名IP系统版本k8s-master192.168.41.141Centos7k8s-node1192.168.41.142Centos7k8s-node2192.168.41.143Centos7 前期准备 首先在三台机器上都执行如下的命令 # 关闭防火墙…

【笔试题心得】物理内存和虚拟内存的区别和联系

物理内存和虚拟内存指的是什么——区别 物理内存&#xff1a; 定义&#xff1a; 物理内存是计算机实际存在的硬件内存&#xff0c;是CPU和其他硬件设备可以直接访问的存储空间。大小限制&#xff1a; 物理内存的大小是有限的&#xff0c;取决于计算机硬件的配置&#xff0c;通…

R-Meta分析与【文献计量分析、贝叶斯、机器学习等】多技术融合

Meta分析是针对某一科研问题&#xff0c;根据明确的搜索策略、选择筛选文献标准、采用严格的评价方法&#xff0c;对来源不同的研究成果进行收集、合并及定量统计分析的方法&#xff0c;最早出现于“循证医学”&#xff0c;现已广泛应用于农林生态&#xff0c;资源环境等方面。…