自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(122)
  • 资源 (2)
  • 收藏
  • 关注

原创 Springboot屏蔽htmlunit多余日志

htmlunit老是报很多异常,干扰正常的日志判断,很烦人2021-08-28 00:02:22.428 WARN 1986 --- [nio-8888-exec-2] c.g.htmlunit.IncorrectnessListenerImpl : Obsolete content type encountered: 'application/x-javascript'.解决方法是springboot yml配置com.gargoylesoftware: offlogging: leve

2021-08-28 15:43:42 544

原创 java程序异常关闭后自动重启

创建监控脚本#!/bin/bashif ps -ef |grep zhmb.jar |grep -v grep >>/dev/nullthen echo "$(date +%F%n%T) zhmb is in Running status" >> /opt/zhmb/monitor_resultelse java -jar /opt/zhmb/zhmb.jar echo "$(date +%F%n%T) restart zhmb" >> /op

2021-07-10 16:05:43 896

原创 2021问题记录

1.如何设置容器居中 margin:0 auto;

2021-05-23 16:12:46 137

原创 Vue CLI的使用

安装vue CLInpm install -g @vue/cli查看vue CLI的版本vue -V创建vue工程vue create project选择模板项目文件说明package,json内有vue的版本信息

2021-05-23 01:24:45 212

原创 centos7安装mysql5.7

一、下载并安装mysql官方的yum repositorywget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpmyum -y install mysql57-community-release-el7-10.noarch.rpm然后用yum安装mysqlyum -y install mysql-community-server此时mysql安装成功启动mysqlsystemctl sta

2020-12-22 01:16:27 136

原创 QT实现滚动条

实现滚动条需要有两个Widget,分别在QScrollArea的内层和外层void Form::initForm(){ QHBoxLayout *layout=new QHBoxLayout(); QHBoxLayout *layoutMain=new QHBoxLayout(); QScrollArea *scrollArea=new QScrollArea(); for(int i=0;i<15;i++) { QLabel *label=

2020-10-20 00:58:06 2767 1

原创 QT线程同步

首先看一下经典的卖票问题,有5个线程同时售卖100张票:#ifndef SELLER_H#define SELLER_H#include <QObject>#include <QThread>class Seller : public QThread{ Q_OBJECTpublic: explicit Seller(QObject *parent = nullptr);private: static int tickets;protecte

2020-10-04 17:48:53 201

原创 QT的进程和线程

进程线程为什么需要使用xin线程的创建与停止线程的标识符方法二:使用moveToThread函数创建线程

2020-10-03 18:23:09 150

原创 Iperf测试服务器上下行带宽

有一个阿里云服务器,想在windows电脑下测试一下带宽1.首先在windows下下载iperf32.在linux服务器下安装iperf3wget -O /usr/lib/libiperf.so.0 https://iperf.fr/download/ubuntu/libiperf.so.0_3.1.3wget -O /usr/bin/iperf3 https://iperf.fr/download/ubuntu/iperf3_3.1.3chmod +x /usr/bin/iperf3可能会遇

2020-09-20 13:55:46 8259 2

原创 customplot

**1.rescaleValueAxis **根据图像最高点最低点自动缩放坐标轴//Y轴CustomPlot->graph(2)->rescaleValueAxis(true); //X轴 CustomPlot->graph(2)->rescaleKeyAxis(true); //X、Y轴 CustomPlot->graph(2)->rescaleAxes(true); 2.设置时间坐标轴QSharedPointer<QCPAxisTickerD

2020-09-18 18:22:56 570

原创 QT的对象模型和容器类

信号和槽注意事项:信号和槽的关联:QT5中的信号和槽对象树与拥有权:非顶层窗口被关闭只是被隐藏主窗口要创建在栈上QT的容器类

2020-09-10 15:57:48 88

原创 linux问题记录

1.gnome桌面下文件管理器打不开解决方法:gnome下文件管理器叫做nautilusps -ef |grep nautilus然后killall掉进程killall nautilus在命令行:nautilus .可以打开当前文件夹2.gnome桌面下VNC全屏无法退出解决方法:Vinagre是gnome下的VNC客户端ps -ef |grep nautilus然后kill -9 process3.gnome桌面卡死ps -ef |grep "gnome-shel

2020-09-09 09:24:37 362

原创 QT库文件的引入

库库是一种可执行代码的二进制形式,可以被操作系统载入内存执行。库有两种:静态库(.a、.lib)和动态库(.so、.dll)静态库在链接阶段,会将汇编生成的目标文件.o与引用到的库一起链接打包到可执行文件中。因此对应的链接方式称为静态链接。特点:1、静态库对函数库的链接是放在编译时期完成的。2、程序在运行时与函数库再无瓜葛,移植方便。3、浪费空间和资源,因为所有相关的目标文件与牵涉到的函数库被链接合成一个可执行文件。动态库使用动态库的原因:1、静态库会浪费空间。2、静态库对程序的更新、

2020-09-01 17:17:10 1372

原创 QT操作文件

QDirQDir类提供了访问系统目录结构及其内容的方式。QDir类使用相对或绝对文件路径来指向一个文件/目录。初始化:QDir mdir(path)目录和导航操作QString path():获得QDir类对象所关联的目录路径;bool setPath():设置新的路径;QString absolutePath():获得目录的绝对路径;QString dirName():获得目录名;bool mkdir():创建一个目录;bool rename():重命名目录;rmdir():移除一

2020-09-01 15:06:11 270

原创 centos安装KDE桌面

1、查看可用的环境组yum grouplist2、安装KDE桌面yum -y groups install “KDE Plasma Workspaces”3、生成 .xinitrc 文件echo “exec startkde” >> ~/.xinitrc4、启动KDE桌面startx

2020-08-23 23:34:16 5356

原创 QT窗口笔记

1、QT的窗口有以下几种状态:**删除:**是指窗口被销毁,也就是说窗口不存在了。比如窗口使用new创建的,则表示窗口被delete了,被销毁的窗口不能被再次使用,否则会发生内存错误。**隐藏:**是指窗口不可见,但窗口并未被销毁,使用show()等函数,可以让该窗口再次可见。**关闭:**是指窗口不可见,但窗口有可能是被删除了,也有可能是被隐藏了,这要视情况而定。窗口被删除时,会同时删除其子对象,而隐藏则不会。2、关闭窗口和终止程序一个(应用)程序通常拥有多个窗口,关闭(或删除)一个窗口,并不

2020-08-08 15:38:30 717

原创 在qt5.12下引入iphlapi.h

因为在项目中需要使用WINAPI读取网络信息,所以需要用到iphlapi库#include "winsock2.h" #include "windows.h"#include "winsock.h"#include "iphlpapi.h"发现直接使用函数会报错,提示undifined refernce to XXX解决方法是把iphlpapi.h和libiphlapi.a复制到项目目录下qt项目页右键添加库,链接到系统库然后会在pro文件下新增:uinx|win32:LIBS+=-lip

2020-08-06 16:24:39 962

原创 va_list、va_start和va_end的用法

c语言提供了函数的不定长参数使用,比如 void func(int a, …)。三个省略号,表示了不定长参数。va_listva_list宏定义了一个指针类型,这个指针类型指向参数列表中的参数。va_startvoid va_start ( va_list ap, prev_param );prev_param:变参表前面的函数用va_start函数来获取参数列表中的参数va_endvoid va_end(va_list ap)参数列表访问完以后,参数列表指针与其他指针一样,必须收回.

2020-08-05 15:25:28 358

原创 qt区分操作系统

条件编译#ifdef、#elif、#else、#endif指令这几个指令称为条件编译指令,可对程序源代码的各部分有选择地进行编译。跟一般的if、else if、else语句类似,如果一个条件上的值为真,则编译它对应的代码,否则提过这些代码,测试下一个条件上的值是否为真。注意,作为条件的表达式是在编译时求值的,它必须仅含常量及已定义过的标识符,不可使用变量,也不可以含有操作符sizeof(sizeof也是编译时求值)在中,定义了各个系统的宏定义如Q_OS_WINQ_OS_LINUX有QObjec

2020-08-03 15:38:06 876

原创 解决Mysql 的Access denied for user‘root‘@‘lP‘ (using password: Yes)问题

发现用navicat连接mysql提示Access denied for user’root’@‘IP’ (using password: Yes),而且这个IP为本机的IP,确认用户名和密码输入无误。解决方法:设置mysql允许其他IP访问mysql> update mysql.user set host = ‘%’ where user = ‘root’;mysql> flush privileges;...

2020-08-02 15:26:44 500

原创 C++笔记

指针指针是一个变量,存储的是值的地址。如何找到常规变量的地址,只需要对变量使用地址运算符(&),便可获得它的位置。运算符被称为间接值或者解除引用运算符,将其应用于指针,就可以得到该地址处存储的值。例如manly是一个指针,则manly表示的是一个地址,而manly表示的是这个地址的值。使用new来分配内存,使用delete来释放内存:int *pn =new int;delete pn;对象和类通常把类定义放在头文件中,而把代码的实现放在源代码中实现类的成员函数使用类构造函数

2020-07-31 01:15:10 115

原创 QT问题记录

1、Qt undefined reference to `vtable for’”问题的原因及解决方法原因:手动添加了Q_OBJECT解决:重新运行qmake。Qt Creator 中,点击菜单栏 Build 中的 Run qmake,然后重新运行就会正常

2020-07-30 11:26:17 100

原创 QT显示当前日期时间

1、进入设计模式,将Label组件拖入主设计区2、在头文件中声明显示时间的槽#ifndef MYDIALOG2_H#define MYDIALOG2_H#include <QDialog>namespace Ui { class myDialog2;}class myDialog2 : public QDialog{ Q_OBJECTpublic: explicit myDialog2(QWidget *parent = 0); ~my

2020-07-30 00:49:18 5830 5

原创 QT学习笔记

窗口和基类QtCreator提供的默认基类有QMainWindow 、QWidget和Qdialog这3种,QMainWindow是带有菜单栏和工具栏的主窗口类,QDialog是各种对话框的基类,而它们全部继承自·QWidget,不仅如此,其实所有的窗口类都继承自QWidget。基础窗口部件QwidgetQWidget类是所有用户界面对象的基类,被称为基础窗口部件。Qwidget继承自QObject类和QPaintDevice类,其中QObject类是支持所有Qt对象模型的基类,QPaintDevic

2020-07-28 11:52:56 329

原创 linux远程连接服务器

远程连接服务器远程连接服务器通过文字或者图形接口的方式来远程登录系统,让你在远程的终端前面登陆linux主机来取得操作主机的接口(Shell)远程连接的类型:文字接口名为传输:Telnet、RSH为主,目前十分少用文字接口加密:SSH为主,已经取代了上述的Telnet、RSH等明文传输方式图形接口:XDMCP,VNC,XRDP等较为常见文字接口登录的连接服务器中,主要以明文传送数据的Telnet服务器,以及利用加密技术加密再传送的SSH服务器。图形接口:主要使用VNC,如果要使用类似Windo

2020-07-22 11:53:18 265

原创 linux笔记(二)

linux查看日志的方式cat、more、less:cat命令可以一次显示整个文件,如果文件比较大,查看不是很方便。可以按 shift+g 即可跳到文件底部,要返回文件顶部的时候按 gg即可。more命令可以让屏幕在显示满一屏幕时暂停,此时可按空格健继续显示下一个画面,或按Q键停止显示;less命令也可以分页显示文件,和more命令的区别就在于它支持上下键卷动屏幕,当结束浏览时,只要在less命令的提示符“: ”下按Q键即可;多数情况下more和less命令会配合管道符来分页输出需要在屏幕上显示的

2020-07-18 11:30:55 122

原创 创建react工程与引入antd

创建create-react-app工程npx create-react-app my-app引入antdnpm install antd --save安装按需引入的插件npm install babel-plugin-import --save-dev暴露配置npm run eject然后再根目录的package.json加个字段"babel": { "presets": [ "react-app" ], "plugins": [

2020-07-16 02:42:10 166

原创 CSS笔记

CSS盒模型Content box: 这个区域是用来显示内容,大小可以通过设置 width 和 height.Padding box: 包围在内容区域外部的空白区域; 大小通过 padding 相关属性设置。Border box: 边框盒包裹内容和内边距。大小通过 border 相关属性设置。Margin box: 这是最外面的区域,是盒子和其他元素之间的空白区域。大小通过 margin 相关属性设置。注: margin 不计入实际大小 —— 当然,它会影响盒子在页面所占空间,但是影响的是盒子外部

2020-07-14 15:57:26 131

原创 JS笔记

定义:ES6允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Destructuring)const { date } = this.state;//等价于const date = this.state.date

2020-07-14 11:48:07 96

原创 react入门笔记

Hello worldReactDOM.render( <h1>Hello, world!</h1>, document.getElementById('root'));JSXconst element = <h1>Hello, world!</h1>;既不是字符串也不是html的标签在JSX中嵌入表达式const name = 'Josh Perez';const element = <h1>Hello, {name}

2020-07-13 11:19:51 116 1

原创 echart笔记

从镜像网站下载源码后进入shell,执行npm install再执行npm run build即可生成dist然后可以在html中引入echart.jsEchart的基础概念:echarts 实例。一个网页中可以创建多个 echarts 实例。每个 echarts 实例 中可以创建多个图表和坐标系等等(用 option 来描述)。准备一个 DOM 节点(作为 echarts 的渲染容器),就可以在上面创建一个 echarts 实例。每个 echarts 实例独占一个 DOM 节点。系列。系列.

2020-07-12 23:17:52 199

原创 linux学习

1、ls 查看文件列表-l, long -a,all -h, --human-readablels -l 查看文件的详细信息ls -la 显示所有文件,包括隐藏文件ls -lh 以更易读的方式显示文件pwd(print working directory,打印工作目录)cd (change directory,切换工作目录)cd ~切换到家目录mkdir(make directory)创建目录touch 创建文件cp 复制文件mv 移动文件rm删除文件-f 即使原档案属性设为唯读

2020-05-31 03:47:52 75

原创 JAVA多线程知识总结

线程与进程进程:一个程序在内存中运行,就对应一个进程线程:程序执行的基本单元,一个进程可以对应一个或多个线程并发与并行并行:同一时刻执行多个事件,并发是多个实体的同一事件并发:同一时间间隔执行多个事件,并发是同一实体的多个事件并行是针对进程,并发是针对线程的多线程的优势线程在程序中是独立、并发的执行流,与分隔的进程相比,进程中线程之间的隔离程度要小。由于多个线程共享内存,因此可以极...

2020-04-15 00:09:09 85

原创 leetcode算法题记录(一)

(1)两数之和可以使用暴力遍历法,即用数组中的数减去目标数,然后遍历数组,看一下数组中有没有符合要求的数。class Solution { public int[] twoSum(int[] nums, int target) { for(int i=0;i<nums.length;i++) { int a=target-...

2020-04-14 03:34:32 128

原创 leetcode数据库题目记录(一)

(1)连接表可以使用外连接进行查询select Person.FirstName,Person.LastName,Address.City,Address.State from Person left outer join Address on Person.PersonId=Address.PersonId(2)第二高的薪水select distinct 检索不同的列limit...

2020-04-12 02:55:16 188

原创 消息队列的知识总结

什么是消息队列消息队列就是存放消息的一个队列容器,当我们需要使用消息时可以从消息队列依次取出消息。目前使用较多的消息队列有RabbitMQ、Kafka。使用消息队列的好处1、通过异步处理提高系统的性能,削峰,降低系统响应的时间。当用户高并发的请求过来时,数据库的压力剧增,系统的响应会变慢。通过消息队列,可以把高并发的消息事务储存在消息队列中,先给用户返回响应,再由消息队列的消费者进程从消息...

2020-04-10 01:44:47 239

原创 分布式的知识总结

系统架构的发展(1)单一应用架构。一个单体应用部署在一个服务器上。当流量越来越大的时候,可以将同一个应用部署到多台服务器上,然后进行负载均衡。(2)分布式架构。将应用按照业务逻辑拆分成各个模块,各个模块部署在不同的服务器上,各个模块通过API互相调用服务。当服务越来越多的时候,此时用于提升服务质量的服务治理中心是关键。什么是分布式分布式就是利用物理架构由多个自治处理元素,自治之间不共享内存...

2020-04-10 00:46:15 144

原创 Redis知识总结

什么是Redisredis是一个键值对数据库,它是非关系型的数据库。redis的特点:单线程,读写速度快,并且支持丰富的数据类型,具有丰富的特性。Redis的应用场景数据缓存功能分布式锁的功能,保证一个方法或属性在高并发情况下的同一时间只能被同一个线程执行支持数据持久化支持事务支持消息队列redis 支持的数据类型有哪些string、list、hash、set、zset...

2020-04-08 18:15:41 76

原创 mysql数据库相关知识总结

数据库的三大范式:事务的性质(ACID):Atomicity:原子性。一个事务要么全部完成,要么失败回滚,不会停留在中间状态。Consistency:一致性。事务开始之前和事务结束之后,事务的完整性没有被破坏。Isolation:隔离性。在并发环境中,并发的事务是相互隔离的,一个事务不能对另一个事务造成干扰。Durability:持久性。事务处理结束之后,对于数据的修改是持久的。事务的...

2020-04-08 04:42:58 148

原创 阿里云6379端口被攻击

使用top命令查看cpu使用率,发现使用率达98%分别杀掉进程和守护进程

2020-03-23 03:17:28 1688

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除