自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

丁爸的博客

一个人搭建全栈系统

  • 博客(82)
  • 资源 (16)
  • 收藏
  • 关注

原创 ODBC实现跨数据库同步数据

odbc实现跨数据库同步数据,SQL server数据库同步到mysql数据库

2022-10-12 22:03:33 932 1

原创 python3调用Webservice接口

前段时间用python3调用Webservice接口,本文记录一下调用方法。一、组件介绍通过安装suds库,来实现调用webservice接口官网链接,suds是一个轻量级的基于SOAP的web服务客户端。安装.\venv\Scripts\python.exe -m pip install suds-py3注意: 用pip install suds命令安装 , 安装后运行报错ImportError: No module named client二、调用代码1. 简单实例,查询电话归属地fr

2021-12-18 17:44:45 2850

原创 python3后台开发缓存实战

一、问题描述后台项目中,经常会遇到复杂的业务查询(关联多张数据表),或者查询大量数据的分析统计结果,这样的请求都是耗时较长的,如果大量用户频繁出现这种操作,会给服务器很大压力,甚至出现崩溃的情况。二、解决思路查询操作时,把结果缓存起来,下次调用同样参数时直接返回缓存结果,就会节省处理时间,查询时间越长,效果越明显。非查询操作时,清空缓存,重新查询数据生成新缓存数据。三、项目实战Flask+Vue搭建系统,在之前的一篇文章中,实现问题的解决思路。缓存实现python官方文档自带缓存功能lr

2021-05-12 17:22:08 531 2

转载 技术职位介绍

CTO、技术VP、技术总监、首席架构师究竟什么是CTO,一个公司真的需要CTO么?哪些公司的职位对于技术管理者来讲真的是CTO的职位?同样是技术最高负责人,为什么有人叫CTO、有人叫技术总监、技术VP,有人叫首席架构师?他们之间的差别是什么?怎样才能成为一个合格的CTO?各职位之间的差异,从以下技术管理者需要的五个核心能力来区别开:领导力、文化构造能力、人员管理能力、体系搭建能力、技术实力。同样是最高技术负责人,在这五点能力上的强弱决定了最终自己在市场上“挣”出来的职位是什么。领导力:“成事”的能力

2021-05-12 16:21:06 417

原创 python3读取大文件

前段时间用python3读取大excel文件,读取过程中,内存耗尽,程序也报错了,本文记录一下python3读取大文件时内存耗尽的解决方法。一、导入代码原始代码,执行后内存耗尽from openpyxl import load_workbookdef read_excel(): # 打开excel文件 wb = load_workbook(filename='客户资料.xlsx') # 获取并打印 sheet 数量 # print("sheet 数量:", wb.sheet

2021-05-08 11:11:44 407 4

原创 python3操作USB设备

本文以读取USB无线测量设备数据举例说明。需要用到pyusb模块和libusb-1.0.dll,详细说明如下。一、配置libusb-1.0.dll下载libusb-1.0.22.7z,根据操作系统来选择对应的动态库,如下:32位操作系统:复制MS32\dll\libusb-1.0.dll到C:\Windows\SysWOW6464位操作系统:复制 MS64\dll\libusb-1.0.dll到C:\Windows\System32二、安装USB驱动打开zadig-2.5.exe

2020-12-31 19:22:31 6501 1

原创 python3 http.server跨域处理,亲测有效

在用python3创建简单http服务器时,碰到跨域问题,网上找的大多数方法都不行,下面整理出解决方法,亲测有效。一、代码import jsonfrom http.server import HTTPServerfrom http.server import SimpleHTTPRequestHandlerimport socketserverimport socketclass MyRequestHandler(SimpleHTTPRequestHandler): def _se

2020-12-31 16:51:17 4807

原创 python3用AES加密,VUE用AES解密

本文介绍前后端数据加密传输的一种方案,后台用Python3编写,前端用Vue编写,数据采用AES加密算法,模式用ECB,padding用pkcs7。一、后台实现后台用python编写,使用Crypto库安装AES加解密库pip install Crypto安装后如果提示:ModuleNotFoundError: No module named ‘Crypto’,把安装目录下包含crypto的改成Crypto,如图:python代码from Crypto.Cipher import

2020-11-28 17:32:02 685 1

原创 python3调用c++动态库(二)python3调用dll动态库

python3调用c++动态库(一)生成c++动态库,讲了c++生成dll动态库,本文讲python3调用dll动态库。代码如下:import ctypesdef test_dll(): # 加载动态库,需要绝对路径 lib = ctypes.cdll.LoadLibrary('{0}\CAesDll.dll'.format(os.path.join(os.getcwd()))) #测试传入int型参数,返回int型参数 a, b = 9, 3 value = li

2020-11-27 14:53:56 785 1

原创 python3调用c++动态库(一)生成c++动态库

本文介绍c++生成dll动态库,在win10系统,使用vs2017生成。一、创建工程说明:AES.cpp和AES.h是实现AES加解密的文件CAesDll.cpp和CAesDll.h是调用AES.h里面函数,封装成类CAes256CApi.cpp和CApi.h是导出dll动态库的外部调用接口二、封装AES加解密类CAes256类,封装AES加解密功能:#ifndef ENCRYPT_DECRYPT_H#define ENCRYPT_DECRYPT_H#include <s

2020-11-27 13:53:45 497

原创 Java带KeyGenerator(密钥生成器)生成AES加密,c++里面AES解密

之前文章Java里面生成AES加密,c++里面AES解密介绍了Java代码加密,c++代码解密。本文介绍:Java带KeyGenerator(密钥生成器)生成AES加密,c++里面AES解密一、Java代码加密:public static void OutPut(byte[] content) { for (int i=0; i<content.length; i++) { System.out.print(content[i] + ", "); } System.out.pr

2020-11-26 20:01:32 6551

原创 Java里面生成AES加密,c++里面AES解密

之前文章c++实现AES加密解密算法介绍了c++实现加解密,本文介绍:用Java代码生成AES加密字符串,在c++代码里面解密字符串一、Java代码加密:public static String encrypt(String content) { try { if (content.isEmpty()) return ""; String password = "t7CLWhtUTAgAFbw0"; SecretKeySpec key = new SecretKeySp

2020-11-26 19:33:06 777

原创 c++实现AES加密解密算法

本文讲解c++实现AES加密解密功能,主要包含两部分:实现AES加密解密功能的静态库实现调用静态库的测试文件本文代码是在win10系统,VS2013下调试。一、AES加解密静态库创建静态库工程CAesLib创建外部调用类CAes256#ifndef ENCRYPT_DECRYPT_H#define ENCRYPT_DECRYPT_H#include <string>using namespace std;class CAes256{public: CAe

2020-11-26 10:04:40 5250

原创 数据库select构造一条常量记录和多条常量记录

我们写数据库查询时,数据表里面存的数值(如订单状态),但是实际需要返回数值对应的订单状态描述,虽然在代码里面很容易转换,但是这里介绍另一种方法:直接构造多条常量记录,再关联查询一、构造一条常量记录不指定字段名,会以常量作为字段名select '星期一','星期二','星期三','星期四','星期五','星期六','星期日';2. 指定字段名select '星期一' fd1,'星期二' fd2,'星期三' fd3,'星期四' fd4,'星期五' fd5,'星期六' fd6,'星期日' fd7

2020-11-21 16:25:48 8352

原创 python3操作sqite3删除数据表字段

本文介绍python3对sqite3数据库的常用操作,sqite官网。一、创建数据库操作类class CDBManage: def __init__(self, dbname: str = None): self.__dbname = 'local.db' if dbname: self.__dbname = '{0}.db'.format(dbname) self.__conn = sqlite3.connect(se

2020-11-14 16:21:00 1740

原创 python实现excel单元格位置转10进制坐标

最近项目中碰到excel单元格位置转10进制坐标,如下面几个例子:h5 =》(5, 8),表示第5行,第8列c3 =》(3, 3),表示第3行,第3列aDh32 =》(32, 788),表示第32行,第788列代码实现如下:def excel_item_to_rowcol(item: str): idx_num = 0 for i, v in enumerate(item): if v.isdigit(): idx_num = i

2020-11-14 12:13:01 670

原创 Flask框架(七)uwsgi配置websocket

本文介绍Flask里面uwsgi配置使用websocket功能1、创建websocketfrom flask_uwsgi_websocket import WebSocketapp = create_app(DevelopConfig)try: sockets = WebSocket(app)except Exception as e: logging.error("Error: flask_uwsgi_websocket, {0}".format(e))注意:uwsgi创建

2020-10-24 16:22:28 2075

原创 Flask框架(六)websocket应用

本文介绍Flask中websocket功能,下面用实现“服务端主动向前端推送消息”功能来详细介绍:技术栈如下:前端: Vue2.0 + element-ui后台: Flask一、后端代码实现1、创建websocket# 创建Flask Appapp = create_app(DevelopConfig)# 跨域请求CORS(app, supports_credentials=True)# 创建WebSocket,用于服务器主动向web端推送消息,避免web端轮询查询soc

2020-10-23 15:42:16 6773 2

原创 python3封装微信分账功能

之前一篇文章介绍python3封装成类调用微信JSAPI下单、支付、生成付款码,本文介绍python实现微信分账功能。微信支付里面分账接口调用时需要证书,本文介绍python使用证书。1 JSAPI文档地址JSAPI文档,普通商户微信分账是通过https请求实现的。2 代码实现封装一个类WxPay,实现微信分账,有如下接口:普通商户添加分账接收方普通商户删除分账接收方普通商户单次分账请求普通商户查询分账请求普通商户完结分账2.1 类主体框架import loggingimpor

2020-10-18 12:08:30 595 3

原创 linux命令汇总(一)查找和比较

总结平常工作中经常用到的linux命令,本文讲一些查找和比较命令1. 查看当前目录下所有各个文件夹的大小[root@a23a40b943b3 tools]# du -hs ./*20K ./install.sh202M ./Python-3.7.222M ./Python-3.7.2.tgz2. 查看当前目录的大小[root@a23a40b943b3 tools]# du -hs ./224M ./3. 查找大文件如查找当前目录下超过10M的文件,会递归查

2020-10-16 17:13:47 108

原创 python3封装微信退款功能

之前一篇文章介绍python3封装成类调用微信JSAPI下单、支付、生成付款码,本文介绍python实现微信退款功能。微信支付里面像退款等涉及到资金回滚接口调用时需要证书,本文介绍python使用证书。1 JSAPI文档地址JSAPI文档,微信下单和支付是通过https请求实现的。2 代码实现封装一个类WxPay,实现退款申请、退款查询2.1 类主体框架import loggingimport requestsimport timeimport hashlibheaders = {

2020-10-10 16:12:06 768 1

原创 Flask框架(五)访问资源文件

本文介绍Flask访问资源文件,下面详细介绍:1、配置资源文件目录class Config: DEBUG = False # 文件上传配置 UPLOAD_FOLDER = 'static/uploads/' # 上传目录 MAX_CONTENT_LENGTH = 100 * 1024 * 1024 # 上传大小限制}2、启动配置static_folder = 'static'app = Flask(__name__, template_folder=stat

2020-10-04 18:51:13 1094 1

原创 Flask框架(四)通过数据模型名称访问模型

本文介绍Flask中,通过数据模型名称访问数据模型,下面详细介绍:1、定义数据模型基类定义数据模型基类BaseModel,数据模型继承这个基类from flask_sqlalchemy import SQLAlchemyimport loggingimport json# 客户数据库连接,用作数据模型# 此处db是默认的数据库引擎连接SQLALCHEMY_DATABASE_URI,指向数据库根目录,运行sql语句时要指定具体数据库db = SQLAlchemy()class BaseM

2020-10-04 18:33:44 275

原创 Flask框架(三)多个数据库间切换

本文介绍Flask连接多个数据库,不同数据库间切换,下面详细介绍:一、数据库配置class Config: DEBUG = False SQLALCHEMY_DATABASE_URI = 'mysql+pymysql://{0}:{1}@{2}:3306'.format(DB_USER, DB_PWD, DB_ADDR) # 默认数据库引擎,数据库根目录 # 配置多个数据库连接 SQLALCHEMY_BINDS = { 'client': 'mysql+

2020-10-04 17:47:12 1454

原创 python3调试企业微信(二)企业微信推送消息

上篇文章介绍了python3调试企业微信(一)创建企业应用,本文介绍企业微信推送消息。1 JSAPI文档地址JSAPI文档,企业微信推送消息是通过https请求实现的。2 代码实现封装一个类QyWeixin,实现企业微信推送消息2.1 类主体框架import loggingimport requestsimport jsonheaders = { 'Accept': 'application/json, text/javascript, */*; q=0.01', 'A

2020-09-30 21:43:18 374

原创 python3调试企业微信(一)创建企业应用

本文介绍python3调试企业微信相关文章,本文介绍创建企业应用。1 注册微信企业账号进入企业微信官网,注册企业微信账号,如图:2 登录进入管理后台管理员扫码进入管理员后台3 进入应用进入"应用管理"菜单,选择"自建",“创建应用”,如图:上传应用图标输入应用名称和描述添加应用成员创建好应用后,如图:4 查看应用信息点击"消息推送"应用,查看应用信息说明:AgentId:企业应用的id,整型,用于企业内部开发Secret:企业应用密码可见范围:表示企业用户里面

2020-09-29 16:03:29 715

原创 python3封装微信下单和微信支付功能

本文介绍python3封装成类调用微信JSAPI下单、支付、生成付款码。1 JSAPI文档地址JSAPI文档,微信下单和支付是通过https请求实现的。2 代码实现封装一个类WxPay,实现下单和支付功能、生成付款码2.1 类主体框架import loggingimport requestsimport timeimport hashlibheaders = { 'Accept': 'application/json, text/javascript, */*; q=0.01'

2020-09-27 22:17:42 742

原创 python3实现扫码获取微信openid功能

本文介绍python3实现获取openid功能。1 实现原理根据"微信url"和"微信网页授权域名"组成的字符串生成二维码用微信扫描二维码,查询到用户授权信息后,微信把查询的结果当作url参数传给授权的网页域名用fastapi网页框架作后台,绑定微信授权的网页域名,处理微信回调把查询的信息保存本地openid.json文件fastapi提供查询微信信息信息接口2 代码实现2.1 设置微信网页授权域名登录开通的微信公众号,操作如图:2.2 创建web服务# 1.创建app对象a

2020-09-25 09:12:37 3140 1

原创 python3用PIL+tkinter实现屏幕选取区域截图功能

本文介绍用PIL和tkinter实现屏幕选取区域截图功能。一、实现思路用tkinter创建全屏窗口,设置窗口半透明,用作截图窗口用tkinter绑定鼠标按下、释放、按下移动事件,获取截取区域的起始坐标用PIL实现通过起始坐标截图二、代码实现from time import sleepfrom PIL import Image, ImageGrabimport tkinterimport ctypesclass CTkPrScrn: def __init__(self):

2020-09-22 19:59:40 2365 12

原创 python3用自带的库获取原始分辨率和缩放后的分辨率

本文介绍不用安装第三方库,实现获取windows系统原始分辨率和缩放后的分别率,直接上代码:if __name__ == '__main__': import ctypes user32 = ctypes.windll.user32 gdi32 = ctypes.windll.gdi32 dc = user32.GetDC(None) widthScale = gdi32.GetDeviceCaps(dc, 8) # 分辨率缩放后的宽度 heightScale

2020-09-22 19:31:14 992 1

原创 python调用微信截图功能

本文介绍python调用微信截图功能实现:监听键盘按键,触发截图功能一、技术原理通过dos方式调用PrScrn.dll来实现截图功能通过监听键盘按键触发截图二、安装库venv\Scripts\python.exe -m pip install -i https://pypi.tuna.tsinghua.edu.cn/simple/ keyboardvenv\Scripts\python.exe -m pip install -i https://pypi.tuna.tsinghua.edu.

2020-09-19 17:35:24 1606 1

原创 python清空windows系统剪切板数据

本文介绍python清空windows系统剪切板数据方法一、实现原理通过python ctypes模块,调用windows API实现二、实现代码from ctypes import windllif windll.user32.OpenClipboard(None): # 打开剪切板 windll.user32.EmptyClipboard() # 清空剪切板 windll.user32.CloseClipboard() # 关闭剪切板...

2020-09-19 16:40:37 2240

原创 python调用system执行命令时不显示dos窗口

python代码里面有时候会执行windows命令时会出现一个dos窗口,虽然不影响功能,但是看着不好看,下面介绍不显示dos窗口的方法:很简单,加一个参数:start /B xxxx,如调用windows系统计算器:os.system('start /B calc')start命令参数详细说明:...

2020-09-19 16:03:37 5611 2

原创 Flask框架(二)数据库操作

本文介绍Flask的数据库操作,是用flask_sqlalchemy进行相关操作,下面详细介绍:一、flask_sqlalchemy安装这里是安装在虚拟环境里面,采用了镜像加速,安装命令如下:venv\Scripts\python.exe -m pip install -i https://pypi.tuna.tsinghua.edu.cn/simple/ pymysqlvenv\Scripts\python.exe -m pip install -i https://pypi.tuna.tsing

2020-09-16 07:05:22 209

原创 Flask框架(一)flask配置

作者结合实际项目总结Python flask框架的一些使用经验,本文先介绍:flask配置一、官方文档链接http://docs.jinkan.org/docs/flask/config.html#id2官方文档里面有详细介绍flask的相关配置。二、Flask常用功能配置配置数据库连接# 默认数据库引擎SQLALCHEMY_DATABASE_URI = 'mysql+pymysql://{0}:{1}@{2}:3306'.format(DB_USER, DB_PWD, DB_ADDR)

2020-09-15 20:13:45 320

原创 提升领导力(四)调动员工热情,提高工作质量

领导在工作过程中,经常会碰到员工存在以下问题:工作积极性不高工作效率低下工作超期工作完成质量差本文根据作者在日常工作中的总结,给出一些处理建议:调动员工热情调动员工热情主要是领导负责,可以从以下几个方面着手:制定切实可行的考核激励制度找到员工的定位,根据员工个人情况安排任务和工作量知人善用,合适的人做合适的事,让每个员工都参与进来,提高参与感肯定员工的努力,明确员工的责任,提高员工团队荣誉感和归属感适当安排员工进行业务和制度培训提高工作质量提高工作质量需要领导和员工共同努

2020-09-13 13:53:04 327

原创 提升领导力(三)上下级沟通

在日常工作中常会出现领导和下属谈话的场景,领导喜欢以势压人,造成员工口服心不服,甚至心里怨恨的情况;员工恃宠而骄,得意忘形,在工作中讨价还价;出现上面情况,都是上下级沟通不好导致的,这时工作一般很难顺利开展。碰到上面问题,领导需要:淡化级别,员工需要:心存级别领导-淡化级别领导要摆正心态,不要觉得高人一等,尊重员工,把员工放到对等角度沟通领导沟通时语气放平和,一步一步引导员工说出内心想法领导要多站在员工的角度思考问题领导沟通不畅时先学会自我检讨领导要尽量客观公正,为人处世不带感情色彩

2020-09-13 12:08:56 635

原创 提升领导力(二)合格领导的必备要素

在多年日常工作中,我总结出一个合格领导应该具备三个要素:能力、胸怀、眼光,下面具体谈一下这三个方面:能力:主要指专业能力。作为领导首先自己的专业能力要过硬,这样就能保证决策准确性,团队不会带偏。所谓"一将无能,累死千军",就是这个道理。胸怀:指要有容人之量,为人正直。能"背锅",能忍员工犯错,能容员工比自己优秀,不给员工"穿小鞋",对员工不带感情色彩。眼光:知人善用,善于发现和培养人才。从面试和日常工作中发现优秀员工,把优秀员工培养成骨干;人员根据具体情况合理搭配,能起到事半功倍的效果。...

2020-09-13 11:15:54 528

原创 Qt5信号槽传递自定义数据

本文介绍Qt5传递自定义数据,异步处理请求,代码如下;#include <QApplication>// 接口命令数据结构typedef struct _CmdRequest { QString func; QMap<QString, QString> params;} CmdRequest;// 命令处理结果数据结构typedef struct _RstResponse { int retCode; QString func;

2020-09-12 21:19:08 1163

原创 Qt+vue开发桌面应用程序(三)程序打包

前面两章介绍了Qt+vue开发桌面应用程序(一)Qt部分介绍和Qt+vue开发桌面应用程序(二)Vue部分介绍,本文介绍程序打包发布一、原理介绍Qt程序打包是通过windeployqt来实现,打包的windeployqt要与编译器一致。如:选择MSVC2019 64bit编译时,要选择Qt5.15\5.15.0\msvc2019_64\bin\目录下的windeployqt来打包打包命令:windeployqt <release版执行程序>二、打包程序配置程序图标在工程文件p

2020-09-12 17:02:53 3141

CAesDll.zip

win10系统,VS2017创建的生成AES加解密功能的动态库CAesDll.dll,动态库可以供python3调用

2020-11-27

c++ AES加密.zip

本资源是演示c++ AES加密功能,在VS2013下调试。资源包括两个工程:AES静态库和调用静态库测试。

2020-11-24

python3封装微信支付功能

资源是用python3封装了一个微信支付的类WxPay,类里面包含:微信下单、生成付款码、微信退款、微信分账等功能,使用时只需要设置自己的appid、key、mch_id。

2020-10-18

PythoPrc.zip

资源是python调用微信截图功能,详细教程https://blog.csdn.net/yyt593891927/article/details/108683478

2020-09-19

Qt + vue.zip

本文资源是利用Qt5+vue实现一个windows桌面应用程序,采用QWebEngineView加载html页面,QWebChannel和QThred实现和html页面异步交互

2020-09-12

python+html桌面应用实例

本资源是python+html桌面应用实例。主要是用vue实现前端页面,用pywebview来加载、显示html页面。

2020-08-29

mysql复杂存储过程实例(游标、临时表、循环、递归)

本资源结合实例实现一个复杂的存储过程,存储过程中有用到游标、临时表、循环、递归等知识,sql文件附有实例数据表创建的sql语句。

2020-08-18

mysql创建存储过程和计划任务实例

本资源是mysql创建存储过程和计划任务实例,实现"待付款订单下单后15分钟未付款就取消订单"的需求。

2020-08-14

动态添加docker映射端口python脚本

本资源是动态添加docker容器映射端口的python脚本,在终端命令行里面只需要执行一下脚本,就能自动添加容器映射端口。

2020-08-13

Qt5_11QMLDemo-WebAssembly.zip

本资源是Qt for WebAssembly的一个QML演示demo,demo里面有登录页面、3D展示页面、charts图表页面、tableview表格页面

2020-08-11

Qt5_12QMLDemo.7z

QML+mysql实现的小系统,系统数据处理和页面实现是异步的。登录到系统里面,有展示qml-threejs、qml-chart、qml-tableview等功能

2020-08-02

Qt5.15 qsqlmysql.zip

Qt5.15版本mysql访问动态库,基于Desktop Qt 5.15.0 MinGW 64-bit编译

2020-08-01

VueMobileDemo.zip

利用html5+技术开发的移动端的混合APP应用,该APP运用了Vue2.0 + mint-ui + axios + echart + three.js等技术。

2020-06-26

VueDemo.zip

这是一个人搭建全栈系统教程中的前端源码,是用Vue + element-ui编写,展示three.js加载gltf格式3D模型;展示echart画图

2020-06-15

FlaskDemo.zip

这是一个人搭建全栈系统教程中的后台源码,是用Flask编写,Vue前端页面打包到static目录,完整教程:https://blog.csdn.net/yyt593891927/article/details/106507132

2020-06-14

测试用例例子

进度测试用例,涵盖的测试中大部分例子,具有很强的指导性。

2015-10-16

空空如也

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

TA关注的人

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