自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(104)
  • 收藏
  • 关注

原创 Windows 平台 Mongodb C++ 已编译驱动 MSVC-64Bit 版可直接使用

点此下载链接:https://pan.baidu.com/s/1991Vv7lCZGCLi5awv3SS7g提取码:8kh6

2020-12-25 14:07:09 278

原创 Qt 使用http上传文件 与 Flask后台交互

C++部分以下HttpManager部分转载自:https://blog.csdn.net/m0_37987268/article/details/108712993已进行小小的改动。HttpManager.h#ifndef HttpManager_H#define HttpManager_H#include <QObject>#include <QNetworkReply>class QNetworkAccessManager;class LoadingWidg

2020-12-24 16:13:32 1098 1

原创 Qt QSqlDatabase: QMYSQL driver not loaded 解决方案

Qt版本以Mingw64编译器为例子声明:下面所涉及的路径都改为自己电脑上安装Qt时对应的路径即可。1.将libmysql.dll(下面会给下载链接)放到D:\Qt\Qt5.12.3\5.12.3\mingw73_64\bin下。2.将D:\Qt\Qt5.12.3\5.12.3\mingw73_64\bin和D:\Qt\Qt5.12.3\Tools\mingw730_64\bin添加到系统的Path环境变量中(不能跳过这一步)。3.重启Qt Creator,然后重新编译运行即可。libmysq

2020-12-24 10:30:07 472

原创 libevent系列[一] Windows平台初步编译及测试使用

libevent官网http://libevent.org/Github地址https://github.com/libevent/libevent本次测试编译版本为2.1.12准备工作1.安装cmake:https://www.cmake.org2.安装gcc编译器,因为我安装了qt顺便安装了mingw编译器3.将gcc.exe所在目录添加到PATH环境变量,我的在D:\Qt\Qt5.12.3\Tools\mingw730_64\bin步骤1.win键+x打开power shell2

2020-11-18 13:23:33 559

原创 [解决方案]Windows系统报错cx_Oracle.DatabaseError: DPI-1072: the Oracle Client library version is unsupported

安装好instantclienthttps://pan.baidu.com/s/1lMo3v0wluy1rMoK26o0A9A复制dll将安装好的instantclient目录下的所有dll复制到相应的python解析器Scripts文件夹下即可也可以将instantclient目录添加到PATH环境变量~

2020-11-16 14:30:25 3627 3

转载 64位整型网络字节序与主机字节序转换

unsigned long long ntohll(unsigned long long val) { if (__BYTE_ORDER == __LITTLE_ENDIAN) { return (((unsigned long long )htonl((int)((val << 32) >> 32))) << 32) | (unsigned int)htonl((int)(val >> 32)); }

2020-11-11 10:40:57 800

转载 Python中对字节流/二进制流的操作:struct

前言前段时间使用Python解析IDX文件格式的MNIST数据集,需要对二进制文件进行读取操作,其中我使用的是struct模块。查了网上挺多教程都写的挺好的,不过对新手不是很友好,所以我重新整理了一些笔记以供快速上手。注:教程中以下四个名词同义:二进制流、二进制数组、字节流、字节数组在struct模块中,将一个整型数字、浮点型数字或字符流(字符数组)转换为字节流(字节数组)时,需要使用格式化字符串fmt告诉struct模块被转换的对象是什么类型,比如整型数字是’i’,浮点型数字是’f’,一个ascii

2020-11-02 14:00:06 1319

转载 Qt出现Parse Error 解决方案

#ifndef Q_MOC_RUN#include <pcl/visualization/cloud_viewer.h>#include <pcl/io/io.h>#include <pcl/io/pcd_io.h>#endif#include <QWidget>将Qt外的头文件放在#ifndef…#endif里面即可

2020-10-30 10:27:04 3393

原创 Qt无法定位程序输入点QXXXX于动态链接库XXXX问题的解决方法

可能的原因在PATH变量中搜索路径时的顺序问题。比如MinGW编译器的路径在MSVC编译器的路径前面时,这时候你使用MSVC编译器来编译构建项目,这时候在Qt里点击运行是没有问题的。但是如果使用windeployqt xxx.exe然后在文件里双击运行时就会报“无法定位程序输入点QXXXX于动态链接库XXXX问题”。解决方法改变Path变量中相关路径的顺序像这样把MSVC的路径放大MinGW前即可。然后在cmd窗口中set Path=test,再双击运行程序,成功。...

2020-10-26 15:03:35 6738 2

原创 Mongodb C++ 的简单封装

Mongodb.h#ifndef MONGODB_H#define MONGODB_H#include <bsoncxx/builder/stream/document.hpp>#include <bsoncxx/types.hpp>#include <mongocxx/client.hpp>#include <mongocxx/instance.hpp>#include <mongocxx/uri.hpp>#include &l

2020-10-13 12:01:49 932

转载 Mysql 错误 Error loading schema content

出现错误的原因在MySQL5.1.X升级到MySQL5.5.X的时候,升级完成之后需要更新系统表,而出现以上错误是因为没有更新系统表解决方法mysql_upgrade -u root -p转自:https://blog.51cto.com/fanfusuzi/1662891

2020-10-12 10:48:00 1254

原创 Ubuntu设置时区

sudo apt install ntpdatesudo tzselect 然后按照提示输入数字进行选择sudo cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtimesudo ntpdate time.windows.comPS:如果是使用date来修改时间之后,记得修改硬件CMOS的时间:sudo hwclock --systohc...

2020-10-11 18:45:18 202

转载 Ubuntu18Sever安装图形界面

第一步:换阿里源sudo vim /etc/apt/sources.listdeb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiversedeb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiversedeb http://mirrors.aliyun.com/ubuntu/ bionic

2020-10-11 18:11:53 468

原创 Ubuntu18.04-live-server配置静态IP

说明Vmware使用Nat模式注意先在Vmware中查看Nat信息,注意网关是多少配置netplancd /etc/netplanlsls列出的文件名可能不一样,编辑它就是了sudo vim 50-cloud-init.yaml注意:冒号后面要有个空格配置DNSsudo vim /etc/resolv.conf保存后重启尝试是否可访问外网PS:如果访问不了外网,DNS好像也跟/etc/systemd/resolved.conf这个文件有关系,可尝试把它里面的DNS的注

2020-10-11 16:34:45 728 1

原创 Ubuntu18安装Mongodb

导入公钥sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 2930ADAE8CAF5059EE73BB4B58712A2291FA4AD5创建源列表文件MongoDBecho "deb http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.6 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3

2020-10-11 15:29:17 226

转载 MD5 - C++实现

MD5.h#ifndef MD5_H#define MD5_H #include <string>#include <fstream> /* Type define */typedef unsigned char byte; using std::string;using std::ifstream; /* MD5 declaration. */class MD5 {public: MD5(); MD5(const void *input, size

2020-10-10 10:38:02 233

原创 Qt练习项目 - 个人网盘开发 - [ Sloot Netdisk ] (一) 界面开发

说明这是本人在毕业设计之前的一个学校的小任务 [ 专项设计 ] 。突发奇想,就想做个个人用的网盘,模仿百度网盘的部分功能。登录界面 : 参考QQ登录界面布局 。主界面 : 参考百度网盘界面布局 。界面初步效果图接下来,进行数据库设计和服务器程序编写...

2020-10-08 13:15:41 3333 21

原创 解决Qt设置无边框后无法通过鼠标拖动修改窗口大小问题

头文件#ifndef ABSTRACTMAINWINDOW_H#define ABSTRACTMAINWINDOW_H#include <QMainWindow>#include <QPainter>#include <QPaintEvent>#include <QStyleOption>#include <QMouseEvent>#include <QPoint>#include <QResizeEvent&

2020-10-05 12:00:46 1770 1

原创 Linux Mysql C++ API 封装 以及使用方法

头文件#ifndef _MYMYSQL_H#define _MYMYSQL_H#include <string>#include "mysql.h"using namespace std;class MyMysql { protected: bool m_hasRead = false; //执行exec后,是否已调用过mysql_read int m_curReadValueIndex = -1; //执行mysql_read后,下次取第几行的数据

2020-10-05 00:42:31 343

原创 深入浅出处理器

初步认识处理器处理器中的中断处理器中的内存管理老问题:为什么访问0地址的时候,程序会崩溃?因为0地址(虚拟地址)在页表中对应的页的属性(权限)是不可访问的。处理器中的缓存伪代码void process(message* msg){ static parser* cache = nullptr; //一级缓存 if((cache) && (cache->type == msg-&

2020-09-26 16:29:59 119

原创 Mysql插入中文字符错误解决方案

在my.cnf中添加如下内容[client] default-character-set=utf8mb4 [mysqld] character-set-server = utf8mb4 collation-server = utf8mb4_unicode_ci init_connect='SET NAMES utf8mb4' skip-character-set-client-handshake = true [mysql] default-character-

2020-09-25 17:12:52 418

原创 Linux下Qt的QMediaPlayer无法播放视频

在系统自带软件中心中安装该软件即可

2020-09-16 17:10:25 1980 2

原创 JAVA部分语法注意点笔记

1.类成员变量有默认初始值,局部变量必须初始化2.super()必须出现在构造函数的第一句3.多态:继承,然后覆盖方法;成员变量不能多态4.父类对象 isinstanceof 子类对象 返回 True5.final修饰的类不能被继承,修饰的方法不能被重写,修饰的变量不能被改变6.程序中成员变量赋值的执行顺序:(1)声明成员变量的默认初始化(2)显式初始化、多个初始化块依次被执行(同级别下按先后顺序执行)(3)构造器再对成员进行初始化操作(4)通过”对象.属性”或”对象.方法”的方

2020-09-02 23:28:46 129

原创 QTableView设置columnWidth无效

1.确保在设置列宽之前,先设置模型。2.有时候设置模型了再设置列宽,依然无效,经过试验,在设置模型并设置列宽后,可以在插入新数据后,再执行一次设置列宽的操作,实测有效。

2020-09-02 22:48:18 2027 1

原创 解决QProcess启动进程后kill无效

问题背景Windows下,使用QProcess的start函数调用python外部程序,想杀死进程的时候,调用kill无效。解决方法QProcess::startDetached("taskkill -t -f /pid " + QString::number(proc->processId()));

2020-09-02 22:25:07 2214

原创 Qt报错:qt.qpa.plugin: Could not find the Qt platform plugin “windows“ in ““

1.安装pyside2pip install -U pyside2 -i https://pypi.doubanio.com/simple2.在环境变量中添加变量名:QT_QPA_PLATFORM_PLUGIN_PATH变量值:D:\Anaconda3\Lib\site-packages\PySide2\plugins3.注销重新登录windows系统4.打开相关编译器的cmdwin键+scd /d 你的exe所在目录windeployqt xxxxxxx.exe重新运行即可

2020-08-29 11:36:02 3748

转载 解决 Qt 对象跨线程调用问题

Qt有很多IO相关的类,比如说QTcpSocket、QFile,总的来说,在Qt的框架内使用,还是非常方便的。但是用过其他框架IO类的人,可能有一个很不习惯,就是Qt的所有IO类,都不推荐或者不可以跨线程操作,不然就会报错,比如说操作QTcpSocket跨线程调用write接口,就会报错:socket notifiers cannot be enabled from another thread要解决这个问题,直观的说就是不要跨线程操作,网上也有很多类似的说明。这也是有道理的,很多时候真的是设计问

2020-08-25 10:09:57 6412

原创 Kafka 基础入门

消息队列的两种模式(1)点对点模式(一对一,消费者主动拉取数据,消息收到后消息清除)消息生产者生产消息发送到Queue中,然后消息消费者从Queue中取出并且消费消息。消息被消费以后,queue中不再有存储,所以消息消费者不可能消费到已经被消费的消息。Queue支持存在多个消费者,但是对一个消息而言,只会有一个消费者可以消费。(2)发布/订阅模式(一对多,消费者消费数据之后不会清除消息)消息生产者(发布)将消息发布到topic中,同时有多个消息消费者(订阅)消费该消息。和点对点方式不同,发布到t

2020-08-24 10:57:40 150

原创 JAVA 操作 Kafka

IDEAPom文件<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache

2020-08-23 14:17:17 106

原创 集群分发脚本

scp(secure copy)安全拷贝(1)scp定义:scp可以实现服务器与服务器之间的数据拷贝。(from server1 to server2)(2)基本语法scp -r $pdir/$fname $user@hadoop$host:$pdir/$fname命令 递归 要拷贝的文件路径/名称 目的用户@主机:目的路径/名称注意:如果目标目录不存在,直接将源test放到opt目录下scp -r test/ root@hadoop

2020-08-21 11:32:55 277

原创 Hadoop HA 高可用

HA概述所谓HA(High Available),即高可用(7*24小时不中断服务)。实现高可用最关键的策略是消除单点故障。HA严格来说应该分成各个组件的HA机制:HDFS的HA和YARN的HA。Hadoop2.0之前,在HDFS集群中NameNode存在单点故障(SPOF)。NameNode主要在以下两个方面影响HDFS集群(1)NameNode机器发生意外,如宕机,集群将无法使用,直到管理员重启(2)NameNode机器需要升级,包括软件、硬件升级,此时集群也将无法使用HDFS HA功能

2020-08-20 10:43:11 195

原创 ZooKeeper 入门

特点数据结构把节点看做是一个目录应用场景提供的服务包括:统一命名服务、统一配置管理、统一集群管理、服务器节点动态上下线、软负载均衡等。本地安装部署1.安装JDK2.下载Zookeeper安装包,解压到指定目录下3.配置修改(1)将/opt/module/zookeeper-3.4.10/conf这个路径下的zoo_sample.cfg修改为zoo.cfgmv zoo_sample.cfg zoo.cfg(2)修改dataDirdataDir=/opt/module/zookee

2020-08-17 22:29:23 402

原创 Qt中使用MSVC编译器通过调用QProcess来执行python代码时This application failed to start because it could not find......

说明现在做的Qt项目(用C++写)中需要调用Python文件,所以通过QProcess来调用。之前是使用MinGW编译器编译程序的,通过QProcess来调用.py文件没问题。今天有特殊需要,要换成msvc2017编译器,在调用Python文件的时候提示:解决办法pip install PyQt5 -i https://pypi.tuna.tsinghua.edu.cn/simple/pip install pyqt5-tools -i https://pypi.tuna.tsinghua.e

2020-08-13 13:57:05 303

转载 Windows使用MSVC编译Mongodb C/C++ Driver

C语言版驱动https://www.cnblogs.com/music-liang/p/12779013.htmlC++语言版驱动https://www.cnblogs.com/music-liang/p/12780094.html

2020-08-12 17:19:06 226

原创 Windows使用MinGW编译Mongodb C/C++ Driver

准备工作1.下载mongo-c-driver,地址:https://github.com/mongodb/mongo-c-driver/releases。我选择的是1.15.3版本的。2.下载mongo-cxx-driver,地址: https://github.com/mongodb/mongo-cxx-driver/releases。我选择的是r3.5.0版本的。3.下载安装msys2,地址:msys2.github.io。选择x86_64 版本, 非 i686.4.进入msys2的安装目录

2020-08-12 17:11:29 838

原创 MapReduce - 压缩

压缩位置的选择压缩参数配置要在Hadoop中启用压缩,可以配置如下参数:

2020-08-09 20:14:09 115

原创 MapReduce - 计数器 与 数据清洗

计数器数据清洗一般是在map阶段,对输入的数据进行一些合法性检查。对于不合法的数据,在map函数中直接return,合法的才继续走下去。

2020-08-09 18:10:23 90

原创 MapReduce - Map Join 案例

数据基于https://blog.csdn.net/u012321968/article/details/107863294使用场景Map Join适用于一张表十分小、一张表很大的场景。优点思考:在Reduce端处理过多的表,非常容易产生数据倾斜。怎么办?在Map端缓存多张表,提前处理业务逻辑,这样增加Map端业务,减少Reduce端数据的压力,尽可能的减少数据倾斜。具体办法:采用DistributedCache(1)在Mapper的setup阶段,将文件读取到缓存集合中。(2)在驱动函数中

2020-08-09 15:15:22 150

原创 MapReduce - Reduce Join 案例

Reduce Join工作原理Reduce Join案例实操2.需求分析通过将关联条件作为Map输出的key,将两表满足Join条件的数据并携带数据所来源的文件信息,发往同一个ReduceTask,在Reduce中进行数据的串联相关代码TableBean.javapackage MapReduceJoin;import org.apache.hadoop.io.Writable;import org.apache.hadoop.io.WritableComparator;impo

2020-08-07 15:30:45 539 1

原创 MapReduce自定义OutputFormat

3.驱动类中job.setOutputFormatClass(MyOutputFormat.class);注意自定义了OutputFormat,那么在Driver中也要FileOutputFormat.setOutputPath指定输出路径,因为MapReduce本身还要输出一些额外的文件,如crc文件相关代码(以WordCount为例)MyOutputFormat.javapackage MapReduceCustomOutputFormat;import org.apache.hadoo.

2020-08-07 11:12:54 246

空空如也

空空如也

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

TA关注的人

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