当前位置: 首页 > news >正文

查看进程对应的路径查看端口号对应的进程ubuntu 安装ssh共享WiFi设置MyBatis 使用map类型作为参数,复杂查询(导出数据)

Linux 查询当前进程所在的路径

top  命令查询相应的进程号pid

ps -ef |grep 进程名

lsof -I:端口号

netstat -anp|grep 端口号

cd /proc/进程id

cwd 进程运行目录

exe 执行程序的绝对路径

cmdline 程序运行时输入的命令行命令

environ 记录了进程运行时的环境变量

fd 目录下是进程打开或使用的文件的符号连接

查看端口号对应进程

lsof -i :端口号

ubuntu 安装ssh

sudo apt-get install openssh-server

OpenGauss SpringBoot  配置

driver-class-name: org.postgresql.Driver

url:jdbc:postgresql://ip:port/db-name

共享WiFi

将带有无线网卡的电脑设置成热点(一般win10以上的系统)

右键转到设置,可编辑WiFi信息。

MyBatis 使用map类型作为参数,复杂查询(导出数据)

interface声明

/*** @author Be.insighted*/@Mapperpublic interface InterviewerMapper{IPage<TInterviewer> query(IPage<?> page, @Param("param") Map<String, ?> param);}

mapper.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.*.mapper.InterviewerMapper"><!--面试官查询 管理端 --><select id="query" resultType="com.*.entity.TInterviewer" parameterType="map">select * from t_tablewhere del_flag=0 and valid_flag='0'<if test="param.keyword != null and param.keyword != ''">and (INSTR(interviewer_name,#{param.keyword}) or interviewer_code = #{param.keyword})  <!--姓名或者工号--></if><if test="param.companyCode != null and param.companyCode != ''">and company_code = #{param.companyCode}  <!--企业编号--></if><if test="param.positionCode != null and param.positionCode != ''">and position_code = #{param.positionCode}  <!--岗位编码--></if><if test="param.label != null and param.label != ''">and INSTR(label,#{param.label})  <!--标签--></if><if test="param.interviewerStatus != null and param.interviewerStatus != ''">and interviewer_status = #{param.interviewerStatus} <!--状态--></if><if test="param.interviewerStatus == null">and interviewer_status = '0'  <!--状态--></if><if test="param.ids != null">AND id in<foreach collection="param.ids" index="index" open="(" close=")" item="item" separator=",">#{item}</foreach></if>order by create_time desc</select>
</mapper>

对应的controller

    @GetMapping(value = "/interviewer/en/export")@ApiOperation(value = "面试官导出")public void export(HttpServletResponse response, InterviewerParams params) throws IOException, IllegalAccessException {LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();String companyCode = sysUser.getCompanyId();TInterviewer interviewer = interviewerConvert.toEntity(params);interviewer.setCompanyCode(companyCode);interviewer.setDelFlag(false);IPage<?> page = new Page();page.setCurrent(params.getPageNo());page.setSize(params.getPageSize());Map<String, Object> paramMap = new HashMap<>();String id = params.getIds();if (StrUtil.isNotBlank(id)) {EnInfo enInfo = enInfoService.getById(companyCode);String companyName = enInfo.getEnName();// 导出选中的数据paramMap.put("ids", id.split(","));List<TInterviewer> records = interviewerService.lambdaQuery().in(TInterviewer::getId, id.split(",")).list();List<InterviewerVO> temps = records.stream().map(item -> {InterviewerVO vo = new InterviewerVO();BeanUtils.copyProperties(item, vo);vo.setCompanyName(companyName);return vo;}).collect(Collectors.toList());List<String> positionCodes = records.stream().map(TInterviewer::getPositionCode).collect(Collectors.toList());List<String> collect = positionCodes.stream().distinct().collect(Collectors.toList());Map<String, String> positionCode2NameMap = new HashMap<>(collect.size());if (!CollectionUtils.isEmpty(collect)) {List<TPosition> positions = positionService.lambdaQuery().in(TPosition::getPositionCode, collect).list();positionCode2NameMap = positions.stream().collect(Collectors.toMap(TPosition::getPositionCode, TPosition::getPositionName));for (int i = 0; i < temps.size(); i++) {temps.get(i).setPositionName(positionCode2NameMap.get(temps.get(i).getPositionCode()));}}if (!CollectionUtils.isEmpty(temps)) {ExcelUtil<InterviewerVO> excelUtil = new ExcelUtil();excelUtil.setClose(false);excelUtil.buildExcel(response, temps);}return;} else {paramMap.put("keyword", params.getKeyword());paramMap.put("interviewerStatus", params.getInterviewerStatus());paramMap.put("positionCode", params.getPositionCode());paramMap.put("label", params.getLabel());paramMap.put("companyCode", companyCode);}IPage<TInterviewer> pageInfo = interviewerService.query4En(page, paramMap);List<TInterviewer> records = pageInfo.getRecords();EnInfo enInfo = enInfoService.getById(companyCode);String companyName = enInfo.getEnName();List<InterviewerVO> temps = records.stream().map(item -> {InterviewerVO vo = new InterviewerVO();BeanUtils.copyProperties(item, vo);vo.setCompanyName(companyName);return vo;}).collect(Collectors.toList());List<String> positionCodes = records.stream().map(TInterviewer::getPositionCode).collect(Collectors.toList());List<String> collect = positionCodes.stream().distinct().collect(Collectors.toList());Map<String, String> positionCode2NameMap = new HashMap<>(collect.size());if (!CollectionUtils.isEmpty(collect)) {List<TPosition> positions = positionService.lambdaQuery().in(TPosition::getPositionCode, collect).list();positionCode2NameMap = positions.stream().collect(Collectors.toMap(TPosition::getPositionCode, TPosition::getPositionName));for (int i = 0; i < temps.size(); i++) {temps.get(i).setPositionName(positionCode2NameMap.get(temps.get(i).getPositionCode()));}}if (!CollectionUtils.isEmpty(temps)) {ExcelUtil<InterviewerVO> excelUtil = new ExcelUtil();excelUtil.setClose(false);excelUtil.buildExcel(response, temps);}}

导出Excel工具类

package com.*.utils;import cn.com.*.annotation.Column;
import cn.com.*.annotation.Title;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.io.IoUtil;
import cn.hutool.core.util.ReflectUtil;
import cn.hutool.core.util.URLUtil;
import lombok.Data;
import org.apache.commons.lang3.StringUtils;
import org.apache.poi.hssf.usermodel.*;
import org.apache.poi.ss.usermodel.BorderStyle;
import org.apache.poi.ss.usermodel.FillPatternType;
import org.apache.poi.ss.usermodel.HorizontalAlignment;
import org.apache.poi.ss.usermodel.VerticalAlignment;
import org.apache.poi.ss.util.CellRangeAddress;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.OutputStream;
import java.lang.reflect.Field;
import java.math.BigDecimal;
import java.net.URLEncoder;
import java.sql.Time;
import java.sql.Timestamp;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;/*** @author Be.insighted* @title: ExcelUtil* @description: 默认每个sheet最多50000条数据  超过另起一个sheet* @date @date 2023-11-14 15:42*/
@Data
public class ExcelUtil<T> {/*** 设置每行的宽度 每个值的index 对应第几列  如{1500,1000} 表示第一个1500长度 第二个1000长度 以此类推*/private int[] size;/*** 查询条件文本描述*/private String queryCriteria;/*** 是否关闭流 默认关闭*/private boolean close = true;public ExcelUtil() {this.queryCriteria = null;}public ExcelUtil(String queryCriteria) {this.queryCriteria = queryCriteria;}public void buildExcel(HttpServletResponse response, List<T> list, String filename) throws IOException, IllegalAccessException {String name = Objects.isNull(filename) ? "" : filename;OutputStream output = response.getOutputStream();response.reset();response.setCharacterEncoding("UTF-8");name = URLEncoder.encode(name + DateUtil.format(new Date(), "yyyyMMddHHmmss") + ".xls", "UTF-8");response.setHeader("Cache-Control", "no-cache, no-store, must-revalidate");response.setHeader("Content-Disposition", "attachment; filename=" + URLUtil.encode(name, "UTF-8"));response.setHeader("Pragma", "no-cache");response.setHeader("Expires", "0");response.setContentType("application/msexcel;charset=utf-8");List<String> parameter = new ArrayList<>();List<Field> fieldArrayList = new ArrayList<>();if (CollUtil.isNotEmpty(list)) {Class<?> clazz = list.get(0).getClass();Field[] fields = clazz.getDeclaredFields();for (Field field : fields) {if (field.getAnnotation(Column.class) != null) {if (!StringUtils.isEmpty(field.getAnnotation(Column.class).name())) {parameter.add(field.getAnnotation(Column.class).name());} else {parameter.add(field.getName());}fieldArrayList.add(field);}}Title title = clazz.getDeclaredAnnotation(Title.class);if (title != null) {name = title.title();}} else {return;}HSSFWorkbook hssfWorkbook = new HSSFWorkbook();try {final int sheetNum = (int) Math.ceil((float) list.size() / 50000);HSSFCellStyle style = hssfWorkbook.createCellStyle();style.setFillForegroundColor((short) 22);style.setFillPattern(FillPatternType.SOLID_FOREGROUND);style.setBorderBottom(BorderStyle.THIN);style.setBorderLeft(BorderStyle.THIN);style.setBorderRight(BorderStyle.THIN);style.setBorderTop(BorderStyle.THIN);style.setAlignment(HorizontalAlignment.CENTER);style.setVerticalAlignment(VerticalAlignment.CENTER);//2022年4月8日17:16:09 增加,解决:导出数据之后数据并未换行,只有双击之后才展现换行效果style.setWrapText(true);HSSFFont font = hssfWorkbook.createFont();font.setFontHeightInPoints((short) 12);style.setFont(font);HSSFCellStyle style2 = hssfWorkbook.createCellStyle();style2.setAlignment(HorizontalAlignment.CENTER);//垂直居中style2.setVerticalAlignment(VerticalAlignment.CENTER);//2022年4月8日17:16:09 增加,解决:导出数据之后数据并未换行,只有双击之后才展现换行效果style2.setWrapText(true);for (int n = 1; n <= sheetNum; n++) {final HSSFSheet sheet = hssfWorkbook.createSheet("sheet" + "-" + n);List<T> toOut = null;if (sheetNum > 1) {if (n == sheetNum) {toOut = getSubList(list, 0, list.size() - 1);} else {toOut = getSubList(list, 0, 50000);}} else {toOut = list;}if (CollUtil.isNotEmpty(toOut)) {Class<?> clazz = toOut.get(0).getClass();HSSFRow row1 = sheet.createRow(0);HSSFCell cellTitle = row1.createCell(0);cellTitle.setCellStyle(style);Title title = clazz.getDeclaredAnnotation(Title.class);if (title != null) {if (StringUtils.isNotBlank(queryCriteria)) {cellTitle.setCellValue(title.title() + "                         " + queryCriteria);} else {cellTitle.setCellValue(title.title());}sheet.addMergedRegion(new CellRangeAddress(0, 0, 0, parameter.size() - 1));}if (getSize() != null && getSize().length > 0) {for (int i = 0; i < getSize().length; i++) {sheet.setColumnWidth(i, getSize()[i]);}} else {int length = parameter.size();this.size = new int[length];for (int i = 0; i < length; i++) {this.size[i] = 10000;sheet.setColumnWidth(i, getSize()[i]);}}HSSFRow row2 = sheet.createRow(1);for (int i = 0; i < parameter.size(); i++) {HSSFCell cell = row2.createCell(i);cell.setCellStyle(style);cell.setCellValue(parameter.get(i));}for (int i = 0; i < toOut.size(); i++) {HSSFRow row = sheet.createRow(i + 2);for (int j = 0; j < fieldArrayList.size(); j++) {Field field = fieldArrayList.get(j);Object value = ReflectUtil.getFieldValue(toOut.get(i), field);HSSFCell cell = row.createCell(j);cell.setCellStyle(style2);Column column = field.getDeclaredAnnotation(Column.class);if (value != null && !"null".equals(value)) {String rule = column.timeFormat();boolean rate = column.rate();boolean condition = StringUtils.isNotBlank(rule) && (field.getType().equals(Date.class) ||field.getType().equals(java.sql.Date.class) ||field.getType().equals(Time.class) ||field.getType().equals(Timestamp.class));if (condition) {SimpleDateFormat simpleDateFormat = new SimpleDateFormat(rule);cell.setCellValue(simpleDateFormat.format(value));} else if (rate && field.getType().equals(BigDecimal.class)) {BigDecimal valueReal = (BigDecimal) value;cell.setCellValue(valueReal.multiply(new BigDecimal("100")) + "%");} else {cell.setCellValue(value.toString());}} else {if (field.getType().equals(Integer.class) || field.getType().equals(Long.class) ||field.getType().equals(Double.class) || field.getType().equals(Float.class) ||field.getType().equals(BigDecimal.class)) {cell.setCellValue(0);} else {cell.setCellValue("");}}}}}}hssfWorkbook.write(output);} finally {IoUtil.close(hssfWorkbook);if (close) {IoUtil.close(output);}}}/*** 截取list  含左不含右** @param list* @param fromIndex* @param toIndex* @param <T>* @return*/private static <T> List<T> getSubList(List<T> list, int fromIndex, int toIndex) {List<T> listClone = list;List<T> sub = listClone.subList(fromIndex, toIndex);return new ArrayList<>(sub);}}

column、title注解定义

@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.FIELD)
@Inherited
@Documented
public @interface Column {String name() default "";String timeFormat() default "";boolean rate() default false;
}

@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.TYPE)
@Inherited
@Documented
public @interface Title {String title() default "";}

导出的对象定义

@Data
@Accessors(chain = true)
@ApiModel(value = "面试官表示")
@Title(title = "面试官信息")
public class InterviewerVO implements Serializable {private String id;/**
     * 企业编码
     */@Excel(name = "企业编码")@Column(name = "企业编码")@Dict( dictTable="sys_depart",dicCode="id",dicText="depart_name")private String companyCode;/**
     * 企业名称
     */@Excel(name = "企业名称")@Column(name = "企业名称")private String companyName;/**
     * 面试官名称
     */@Excel(name = "面试官名称")@Column(name = "面试官名称")private String interviewerName;/**
     * 面试官编号,取黄河人才网的id
     */private String interviewerCode;/**
     * 部门
     */private String department;/**
     * 岗位名称
     */@Excel(name = "岗位名称")@Column(name = "岗位名称")private String positionName;/**
     * 岗位code
     */private String positionCode;/**
     * 标签
     */@Excel(name = "标签")@Column(name = "标签")private String label;/**
     * 联系方式
     */@Excel(name = "联系方式")@Column(name = "联系方式")private String contactInfo;/**
     * 面试官类别
     */@Dict(dicCode = "interviewer_type")private String interviewerType;/**
     * 面试官状态
     */@Dict(dicCode = "interviewer_status")private String interviewerStatus;/**
     * 面试官有效标识
     */private String validFlag;/**
     * 创建人姓名
     */@Excel(name = "创建人")@Column(name = "创建人")private String createName;/**
     * 创建人工号
     */private String createCode;/**
     * 创建时间
     */@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")private Date createTime;/**
     * 更新人
     */private String updateName;/**
     * 更新时间
     */private Date updateTime;
}

相关文章:

查看进程对应的路径查看端口号对应的进程ubuntu 安装ssh共享WiFi设置MyBatis 使用map类型作为参数,复杂查询(导出数据)

Linux 查询当前进程所在的路径 top 命令查询相应的进程号pid ps -ef |grep 进程名 lsof -I:端口号 netstat -anp|grep 端口号 cd /proc/进程id cwd 进程运行目录 exe 执行程序的绝对路径 cmdline 程序运行时输入的命令行命令 environ 记录了进程运行时的环境变量 fd 目录下是进…...

医院信息系统集成平台—安全保障体系

​​​​​​隐私保护措施 隐私保护及信息安全是医院信息平台所要重点解决的问题,应从患者同意,匿名化服务,依据病种、角色等多维度授权,关键信息(字段级、记录级、文件级)加密存储等方面展开。电子病历等医疗数据进行调阅时,包括强身份认证需求、角色授权需求、责任认…...

【信息论与编码】习题-填空题

目录 填空题1.克劳夫特不等式是判断&#xff08; &#xff09;的充要条件。2.无失真信源编码的中心任务是编码后的信息率压缩接近到&#xff08;&#xff09;限失真压缩中心任务是在给定的失真度条件下&#xff0c;信息率压缩接近到&#xff08; &#xff09;。3.常用的检纠错方…...

二叉树的层序遍历经典问题(算法村第六关白银挑战)

基本的层序遍历与变换 二叉树的层序遍历 102. 二叉树的层序遍历 - 力扣&#xff08;LeetCode&#xff09; 给你二叉树的根节点 root &#xff0c;返回其节点值的 层序遍历 。 &#xff08;即逐层地&#xff0c;从左到右访问所有节点&#xff09;。 示例 1&#xff1a; 输入…...

信息学奥赛一本通:装箱问题

题目链接&#xff1a;http://ybt.ssoier.cn:8088/problem_show.php?pid1917 题目 1917&#xff1a;【01NOIP普及组】装箱问题 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 4117 通过数: 2443 【题目描述】 有一个箱子容量为V&#xfffd;(正整数&#xff0c…...

ReactNative 常见问题及处理办法(加固混淆)

ReactNative 常见问题及处理办法&#xff08;加固混淆&#xff09; 文章目录 摘要引言正文ScrollView内无法滑动RN热更新中的文件引用问题RN中获取高度的技巧RN强制横屏UI适配问题低版本RN&#xff08;0.63以下&#xff09;适配iOS14图片无法显示问题RN清理缓存RN navigation参…...

算法基础之合并果子

合并果子 核心思想&#xff1a; 贪心 Huffman树(算法): 每次将两个最小的堆合并 然后不断向上合并 #include<iostream>#include<algorithm>#include<queue> //用小根堆实现找最小堆using namespace std;int main(){int n;cin>>n;priority_queue&l…...

CSS 使用技巧

CSS 使用技巧 引入苹方字体 苹方提供了六个字重&#xff0c;font-family 定义如下&#xff1a;苹方-简 常规体font-family: PingFangSC-Regular, sans-serif;苹方-简 极细体font-family: PingFangSC-Ultralight, sans-serif;苹方-简 细体font-family: PingFangSC-Light, sans…...

typescript,eslint,prettier的引入

typescript 首先用npm安装typescript&#xff0c;cnpm i typescript 然后再tsc --init生成tsconfig.json配置文件&#xff0c;这个文件在package.json同级目录下 最后在tsconfig.json添加includes配置项&#xff0c;在该配置项中的目录下&#xff0c;所有的d.ts中的类型可以在…...

web前端javaScript笔记——(7)Math和Date方法

Math -Math和其他的对象不同&#xff0c;它不是一个构造函数&#xff0c; 它属于一个工具类不用创建对象&#xff0c;它里边封装了数学运算相关的属性和方法 比如 Math.PI 表示的圆周率 使用方法Math.方法(); Math.abs()可以用来计算一个数的绝对值 Math.ceil()可以对一…...

深入理解Java中资源加载的方法及Spring的ResourceLoader应用

在Java开发中&#xff0c;资源加载是一个基础而重要的操作。本文将深入探讨Java中两种常见的资源加载方式&#xff1a;ClassLoader的getResource方法和Class的getResource方法&#xff0c;并介绍Spring框架中的ResourceLoader的应用。 1. 资源加载的两种方式 1.1 ClassLoader…...

实时记录和查看Apache 日志

Apache 是一个开源的、广泛使用的、跨平台的 Web 服务器&#xff0c;保护 Apache Web 服务器平台在很大程度上取决于监控其上发生的活动和事件&#xff0c;监视 Apache Web 服务器的最佳方法之一是收集和分析其访问日志文件。 Apache 访问日志提供了有关用户如何与您的网站交互…...

Java实战项目五:文本冒险游戏

文章目录 一、实战概述二、知识点概览&#xff08;一&#xff09;条件分支与循环结构&#xff08;二&#xff09;面向对象设计&#xff08;三&#xff09;用户交互与事件处理 三、思路分析&#xff08;一&#xff09;系统架构设计&#xff08;二&#xff09;功能模块划分详解 四…...

docker_ROS的usb_cam使用与标定

目录 准备 准备标定板 新建容器 新建usb_cam话题的ROS功能包 编写代码 编译 运行功能包 标定 安装camera_calibration标定功能包 启动发布usb_cam话题的功能包 启动camera_calibration标定功能包 准备 usb相机 标定板 一个带有ROS的docker镜像。 准备标定板 图…...

记一次RabbitMQ服务器异常断电之后,服务重启异常的处理过程

转载说明&#xff1a;如果您喜欢这篇文章并打算转载它&#xff0c;请私信作者取得授权。感谢您喜爱本文&#xff0c;请文明转载&#xff0c;谢谢。 问题描述&#xff1a; 机房突然停电&#xff0c;rabbitmq的主机异常断电&#xff0c;集群服务全部需要重启。但是在执行service…...

rime中州韵小狼毫 help lua Translator 帮助消息翻译器

lua 是 Rime中州韵/小狼毫输入法强大的武器&#xff0c;掌握如何在Rime中州韵/小狼毫中使用lua&#xff0c;你将体验到什么叫 随心所欲。 先看效果 在 rime中州韵 输入效果一览 中的 &#x1f447; help效果 一节中&#xff0c; 我们看到了在Rime中州韵/小狼毫输入法中输入 h…...

C++完成使用map Update数据 二进制数据

1、在LXMysql.h和LXMysql.cpp分别定义和编写关于pin语句的代码 //获取更新数据的sql语句 where语句中用户要包含where 更新std::string GetUpdatesql(XDATA kv, std::string table, std::string where); std::string LXMysql::GetUpdatesql(XDATA kv, std::string table, std…...

ARCGIS PRO SDK 访问Geometry对象

一、Geometry常用对象 二、主要类 1、ReadOnlyPartCollection&#xff1a;Polyline 和 Polygon 使用的 ReadOnlySegmentCollection 部件的只读集合&#xff0c;属性成员&#xff1a;​ 名字描述Count获取 ICollection 中包含的元素数。TIEM获取位于指定索引处的元素。Spatial…...

数据结构之各大排序(C语言版)

我们这里话不多说&#xff0c;排序重要性大家都很清楚&#xff0c;所以我们直接开始。 我们就按照这张图来一一实现吧&#xff01; 一.直接插入排序与希尔排序. 这个是我之前写过的内容了&#xff0c;大家可以通过链接去看看详细内容。 算法之插入排序及希尔排序&#xff08…...

c++ 中多线程的使用

如果你的其他逻辑必须在线程 t1 和 t2 之后执行&#xff0c;但你又希望这些线程能够同时运行&#xff0c;你可以在主线程中使用 std::thread::detach 将线程分离&#xff0c;让它们在后台运行。这样&#xff0c;主线程不会等待这些线程的完成&#xff0c;而可以继续执行其他逻辑…...

理解二叉树的遍历(算法村第七关白银挑战)

二叉树的前序遍历 144. 二叉树的前序遍历 - 力扣&#xff08;LeetCode&#xff09; 给你二叉树的根节点 root &#xff0c;返回它节点值的 前序 遍历。 示例 1&#xff1a; 输入&#xff1a;root [1,null,2,3] 输出&#xff1a;[1,2,3]解 LeetCode以及面试中提供的方法可能…...

所有单片机使用的汇编语言是统一的吗?

所有单片机使用的汇编语言是统一的吗&#xff1f; 在开始前我有一些资料&#xff0c;是我根据网友给的问题精心整理了一份「单片机的资料从专业入门到高级教程」&#xff0c; 点个关注在评论区回复“888”之后私信回复“888”&#xff0c;全部无偿共享给大家&#xff01;&…...

C ++类

定义一个Person类&#xff0c;私有成员int age&#xff0c;string &name&#xff0c;定义一个Stu类&#xff0c;包含私有成员double *score&#xff0c;写出两个类的构造函数、析构函数、拷贝构造和拷贝赋值函数&#xff0c;完成对Person的运算符重载(算术运算符、条件运算…...

STM32疑难杂症

1.keil的奇怪问题 创建的数组分配内存到0x10000000地址的时候&#xff0c;数据总是莫名其妙的出现问题&#xff0c;取消勾选就正常了 stm32f407内部有一个CCM内存&#xff0c;这部分内存只能由内核控制&#xff0c;任何外设都不能够进行访问。这样问题就来了&#xff0c;如果使…...

GIT使用简介

Git 是一种版本控制系统&#xff0c;常用于团队协作开发和管理代码。下面是 Git 的基本使用方式&#xff1a; 安装 Git&#xff1a;首先&#xff0c;在你的计算机上安装 Git。你可以从 Git 官方网站&#xff08;https://git-scm.com/&#xff09;下载适合你操作系统的版本&…...

easycode 插件配置文件

easycode是一个idea生成文件的插件&#xff0c;以下是我的一个项目中配置信息&#xff0c;需要的可以拿走&#xff0c;保存成json文件导入即可 {"author" : "XXX","version" : "1.2.8","userSecure" : "","…...

elasticsearch系列四:集群常规运维

概述 在使用es中如果遇到了集群不可写入或者部分索引状态unassigned&#xff0c;明明写入了很多数据但是查不到等等系列问题该怎么办呢&#xff1f;咱们今天一起看下常用运维命令。 案例 起初我们es性能还跟得上&#xff0c;随着业务发展壮大&#xff0c;发现查询性能越来越不…...

6.6 会话与输入事件(三)

三,Pointer会话 3.1 Pointer会话及其属性 指针输入会话使用SCREEN_EVENT_POINTER类型创建,通常用于控制光标的形状和位置。 指针会话的SCREEN_PROPERTY_MODE属性未使用。但是,可以使用下面的会话属性配置指针会话: SCREEN_PROPERTY_ACCELERATION表示一组六个整数,表示x…...

【自动化测试总结】优点、场景、流程、项目人员构成

一、自动化测试的概念 以程序测试程序&#xff0c;以代码代替思维&#xff0c;以脚本的运行代替手工测试&#xff0c;可以大大提高工作测试的效率。 二、自动化测试的优点 1.回归测试更为方便&#xff0c;可靠。自动化测试最主要的任务和特点&#xff0c;特别是在程序修改比较…...

杨中科 ASP.NETCore Rest

什么是Rest RPC 1、Web API两种风格: 面向过程(RPC) 、面向REST (REST) 2、RPC:“控制器/操作方法“的形式把服务器端的代码当成方法去调用。把HTTP当成传输数据的通道&#xff0c;不关心HTTP谓词。通过QueryString请求报文体给服务器传递数据。状态码。比如/Persons/GetAll…...

wordpress点餐主题/百度seo关键词排名优化工具

今天上午&#xff0c;微信出现重大Bug&#xff01; 从其他App分享内容给个人或微信群&#xff0c;均无法正常分享。 此外&#xff0c;图片、文档的发送以及网页版微信登陆也短暂地出现了故障。 持续时间约30分钟&#xff0c;目前各项功能已全部恢复&#xff0c;相关帐号信息…...

wordpress集成文库插件/seo优化包括哪些

一、学生背景学生姓名 &#xff1a; 韦同学成绩概况 &#xff1a; 绩点 2.7所学专业 &#xff1a; Computer science就读学校 &#xff1a; 明尼苏达录取专业 &#xff1a; informationtechnology留学层级 &#xff1a; 硕士录取结果 &#xff1a; 悉尼大学*二、申请诊断分析优…...

哪个网站可以做加工代理的/seo培训机构

参考资料&#xff1a;http://blog.csdn.net/wo_984633714/article/details/52869851 安装tfs2015的时候&#xff0c;提示需要安装KB2919355的更新。然后我就去下载了&#xff0c;使用了百度云网盘的那个离线安装。然后安装这个更新。 提示KB2919355这个更新有问题&#xff1f; …...

wordpress 手机页面停/公司做个网站多少钱

>>>>>Unit 11.行提示符例如&#xff1a;[kioskfoundation0 Desktop]$kiosk ##打开shell的用户 ##分隔符foundation0 ##主机名称Desktop ##工作目录名称$ ##身份提示符&#xff0c;#表示超级用户&#xff0c;$表示普通用户注&#xff1a;命令要在行提示符之后输入…...

网站色差表/软文代写公司

晚上帮同事解决一个merge问题的时候&#xff0c;发现了我去年在上一家公司时候写的一篇非常不错的关于git的文章&#xff0c;分享出来&#xff0c;有助于更加高效地使用git。 &#xff08;1&#xff09;配置lg2 git默认的日志查看命令是“git log”&#xff0c;界面显示如下&am…...

网站标题的写法/常州seo招聘

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 G3锅炉水处理报名考试考前必练&#xff01;安全生产模拟考试一点通每个月更新G3锅炉水处理考试报名题目及答案&#xff01;多做几遍&#xff0c;其实通过G3锅炉水处理证考试很简单。 1、【多选题】甲基橙指示剂在pH&…...