自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

每天进步一点就够了

人不该在奋斗的年纪选择安逸!

  • 博客(63)
  • 收藏
  • 关注

原创 微信小程序使用MQTT.js连接阿里云IoT物联网平台

随便在一个页面的js文件中加入以下代码,注意替换参数为自己产品和设备的参数问:为什么硬件设备连上之后小程序就断开或者小程序连上之后硬件设备就断开(或者反复断开和重连)?答:这是因为同一时间使用了同一组设备参数【ProductKey,DeviceName,DeviceSecret】

2019-02-23 02:15:31 53400 220

原创 Qt 获取自身运行时的进程ID

最近用qt做嵌入式上位机开发,需要观测下程序的内存占用情况,根据搜到的资料需要读取proc下对应的自身进程的文件信息,找了一圈资料都没一个说到点上的,都是说的QProcess什么的,最后还是在国外的网站上找到了,其实很简单,Qt自带就有了的,一开始自己也是这样想,但是苦于找不到。每个信息代表的什么大家关键字搜下就好了。那么查看自己的内存占用信息就简单了。运行之后打印信息如下。

2022-11-15 11:47:28 3678 6

原创 winform 自定义数值(数字)输入框

最近写winform程序,发现自带的TextBox没发设置输入类型,这就有点痛苦了,查找了网上,没看到比较符合需求的;该输入框可实现不同类型数值输入,包括整数,小数(可设置保留位数),还可以限制输入的最大最小值。"当指定输入数值类型为小数时保留小数点位数""指定控件数值输入的最小值""指定控件数值输入的最大值""指定控件数值输入类型"

2022-08-19 19:28:14 2653 3

原创 C# WinForm TextBox 文本垂直居中实现

众所周知,Winform TextBox 设置文本对齐方式只提供了左、中(水平居中)、右三种对齐方式,没有所谓的垂直居中,我们可以自己粗略的实现垂直居中效果思路其实很简单,就是通过换行的方式,所以这种方式严格上只有textBox的高度刚刚等于奇数行数的时候才是真的居中,其他情况只是看起来接近于居中。计算文本高度并根据textBox高度计算需要换行的行数效果:当然,能避免用textbox来实现就避免,直接用label这样支持的更好...

2022-06-10 18:53:00 8842

原创 Esp8266 nodemcu 使用PubSubClient连接阿里云物联网平台

之前写了一篇微信小程序使用MQTT.js连接阿里云IoT物联网平台,然后很多人问问题的时候顺带会问些硬件的问题,但是自己不会,没法回答。最近有些空闲的时间,自己也挺感兴趣,于是花了一个星期左右的时间看了c和c++入门,然后淘宝买了块esp8266 nodemcu开干,历经了许许多多的问题,终于是连接成功了。开发环境没有使用arduino官方的开发工具,因为太难用了,使用了vscode+platformio插件开发,很是方便,有代码提示还能看源码,非常推荐。具体的搭建就不多说了,网上很多教程,跟着来就行了

2022-05-20 18:39:00 4143

原创 Visual Studio Code PlatformIo IDE 新建项目下载慢的解决办法

假设你已经安装好了platformio插件关闭vscode,打开任务管理器,把platformio.exe以及所有的Python.exe进程全部结束掉,一定要全部关掉(实在不行就重启电脑,重启电脑之后不要打开vscode)配置pip镜像源为国内阿里云,打开platformio安装地址,C:\Users[你电脑的用户名].platformio夹进入penv文件夹,打开pip.conf文件改成如下内容:返回上一级,删除.cache文件夹里所有文件打开vscode,新建项目,

2022-05-14 23:36:37 23678 31

原创 win10使用win32-networkadapter系统api实现开启和禁用网卡

最近项目有需求,需要控制系统网卡的开关,查阅了相关资料后,最终参考C#语言实现定时开启或禁用网卡小程序实现文章中代码编写有些地方有缺陷,本文一一进行了改正,而且文章忽略了操作网卡需要管理员权限,否则是没有效果的,代码已经在win10上通过验证,修正后最终效果如下:gitee仓库参考代码地址参考资料:C#语言实现定时开启或禁用网卡小程序...

2022-04-20 12:04:55 1545 1

原创 微信小程序使用MQTT.js连接腾讯云物联网开发平台

总体步骤和连接阿里云物联网平台差不多步骤如下:去Github下载MQTT.js 库;一开始没注意,搞了很久,还把项目下下来自己编译,各种报错,最终也编译出来了,可后来发现其实有现成的单文件可用的,https://unpkg.com/mqtt/dist/mqtt.min.js,点击打开链接然后右键另存为即可(当前版本:2.18.8),不要使用v4.2.0以上版本下载微信开发者工具,并新建一个项目拷贝刚刚下载的mqtt.min.js到utils目录中去勾选微信开发工具----【不校验合法域名、web

2022-04-06 16:30:07 2132 6

原创 微信小程序连接自搭建emq(emqx)的MQTT服务器

总体和连接阿里云物联网差不多,步骤如下:去Github下载MQTT.js 库;一开始没注意,搞了很久,还把项目下下来自己编译,各种报错,最终也编译出来了,可后来发现其实有现成的单文件可用的,https://unpkg.com/mqtt/dist/mqtt.min.js,点击打开链接然后右键另存为即可(当前版本:2.18.8)下载微信开发者工具,并新建一个项目拷贝刚刚下载的mqtt.min.js到utils目录中去勾选微信开发工具----【不校验合法域名、web-view(业务域名)、TLS 版本以

2022-03-11 17:06:07 2448 20

原创 Shiro session redis 序列化为Json

shiro 默认的SimpleSession的属性都是标记为transient ,不能直接序列化,它自己重写了序列化的方法,但是只适用jdk序列化,无法使用json序列化,如果想要使用json,则需要自己重写相关方法,步骤如下:1. 参照SimpleSession 编写自己的JsonSession,去掉transient 以及不必要的方法public class JsonSession implements ValidatingSession { //TODO - complete Java

2022-01-22 17:40:49 1680 7

原创 springboot 2.6.+中文资源名称无法访问,英文正常

原因:从2.6.0开始Spring MVC 处理程序映射匹配请求路径的默认策略已从 AntPathMatcher 更改为PathPatternParser。基本可以确定是这个更改导致的,不知道是不是bug,更改之后具体的不知道改动了哪些,能力有限,暂时未知解决办法:1.UrlPathHelper 设置不decodeurl从ResourceHttpRequestHandler调试发现,在使用PathPatternParser 后,现在传进来的url是原始的未decode过的url,但是UrlPath

2022-01-12 17:42:55 2805 11

原创 springboot 2.5.2 redis 动态切换db

//设置之前判断一下db是不是一样,一样的话就跳过LettuceConnectionFactory lettuceConnectionFactory = (LettuceConnectionFactory) redisTemplate.getConnectionFactory();//默认连接使用的是Lettuce,共享底层一个连接,同步阻塞执行(可配置成线程池)lettuceConnectionFactory.setDatabase(1);redisTemplate.setConnectionFa

2022-01-07 10:36:16 1392

原创 利用github actions 部署vue项目

准备工作参考我的另一篇利用github actions自动部署gradle构建的springboot 项目打包的war包到tomcat服务器,这里直接上配置,关键的地方都写了注释# This is a basic workflow to help you get started with Actionsname: CI# Controls when the action will run. on: # Triggers the workflow on push or pull request

2021-04-26 18:14:40 519

原创 利用github actions自动部署gradle构建的springboot 项目打包的war包到tomcat服务器

准备工作:一台安装好了tomcat的服务器(需要知道服务器ip地址,ssh登录用户名和密码以及端口号),如果没有装,可以看看我之前的安装教程给项目配置服务器信息(当然如果你的项目是私有的,图方便也可以不用配置,直接写到action里也可以)采用gradle 构建的springboot项目,打包方式为war,并配置打包的war包名称(方便读取)plugins { id 'org.springframework.boot' version '2.4.5' id 'io.

2021-04-26 11:55:33 976 2

原创 CentOS7 部署Tomcat9 指定war包Spring boot项目启动配置文件

Spring boot 项目开发,一般我们会指定多个环境配置文件然后通过配置spring.profiles.active来指定启用哪个配置文件,当打包时需要手动进行改动,有点麻烦,于是乎为了简单,可以配置tomcat启动参数,直接启动时指定配置文件即可,打包的时候不用手动修改步骤:1. 进入tomcat的bin目录,找到文件catalina.sh打开,找到JAVA_OPTS(大概269行)配置2. 在后面添加参数-Dspring.profiles.active=启用的配置文件名称(记得和前面的参

2021-04-25 17:57:33 1088

原创 CentOS7利用openresty和Redis通过lua脚本动态配置Nginx反向代理地址

注:openresty 自带Nginx,所以要先卸载或者停掉原来系统的Nginx1. 安装openresty简单,通过官方教程安装数据源,然后执行命令安装即可# add the yum repo:wget https://openresty.org/package/centos/openresty.reposudo mv openresty.repo /etc/yum.repos.d/# update the yum index:sudo yum check-updatesudo yum

2021-04-23 10:38:00 752

原创 AndroidStudio Build Output乱码解决方案

1. 找到你的android studio安装目录,打开bin文件夹2. 根据你使用的是32位还是64位(两个一起都改也可以),修改对应的vmoptions文件,在后面一行加上**-Dfile.encoding=UTF-8**保存,重启你的android studio即可正常显示中文。参考:AndroidStudio Build Output乱码解决Android Studio Build Output 栏内汉字出现乱码的解决方案...

2020-12-28 18:49:07 685

原创 SpringBoot + shiro 导致通过ResourceHandlerRegistry配置的静态资源中文名称无法访问原因

项目场景:项目使用的springboot+shiro,出于其他原因考量,静态资源是直接使用的springboot 框架本身的ResourceHandlerRegistry来进行配置访问的,没有使用Nginx,Apache等问题描述:项目中的一些静态资源是通过配置ResourceHandlerRegistry来进行访问的,即通过复写WebMvcConfigurer,列如:@Slf4j@Configurationpublic class WebConfig implements WebMvcCo

2020-12-25 17:32:01 2562 9

原创 CenterOS(7.8)安装TypeScript 后执行tsc报tsc command not found 解决办法

起因:在CenterOS安装typesctipt编译环境npm install -g typescript查看版本tsc -v报tsc command not found错误解决:进入nodejs安装目录bin目录cd /usr/local/node-v12.18.4/bin/查看文件[root@flymegoc bin]# lsnode npm npx tsc tsserver[root@flymegoc bin]#正确的话能看到文件tsc试试运行[root

2020-09-29 09:02:08 7632 1

原创 CenterOS(7.8)+egg.js搭建Puppeteer 运行环境

什么是Puppeteer Github ?egg.js(方便提供对外接口调用,可选)搭建环境:CenterOS版本[root@flygoc ~]# cat /etc/redhat-releaseCentOS Linux release 7.8.2003 (Core)[root@flygoc ~]#步骤1. nodejs环境搭建下载二进制nodejswget https://nodejs.org/dist/v12.18.4/node-v12.18.4-linux-x64.tar.gz

2020-09-24 18:27:24 500

原创 支付宝小程序使用MQTT over WebSocket连接阿里云IoT物联网平台

前言之前写了一篇微信小程序使用MQTT over WebSocket连接阿里云IoT物联网平台,介绍了如何使用mqtt.js在微信小程序上连接mqtt服务器,文中顺带提了mqtt.js是支持支付宝小程序的,但是我本人没有实际编写过,后来有小伙伴来问我相关的问题,正好有空,于是稍微研究了一下,踩了不少坑,最后连接上了,以此记录,希望能给后来人一点帮助。坑点支付宝小程序和开发工具环境目前差距挺大,有时候开发工具能跑到真机就GG支付宝mqtt.js连接参数要传入一个my(mqtt.js文档里没写这点,看

2020-08-22 10:53:51 2940 1

原创 error TS2304 Cannot find name Omit

写小程序 项目使用typescript构建,升级官方的api-typings库之后,编译报error TS2304: Cannot find name 'Omit'. 虽然项目跑起来没问题,但是强迫症看起来难受,于是寻找解决办法,去官方issues下没有相关错误最后在https://stackoverflow.com/questions/56440272/cannot-find-name-omit-in-typescript#找到了原因,于是升级项目ts为最新版本,然后tsc编译一样报错,明明已经是

2020-06-12 16:30:07 11091 4

原创 Spring boot JPA+Gradle+QueryDSL 完美配置生成Q文件依赖

1. 环境(理论上不限)IDEA 2019.3.5springboot 2.3.0gradle 6.3querydsl 4.2.1JDK 1.82. 核心配置(build.gradle )buildscript { ext { queryDslVersion = '4.2.1' lombokVersion = '1.18.12' } repositories { maven{ url 'http://maven

2020-05-29 19:03:36 7189 13

原创 Spring Boot 2.2.6 Redis 自定义缓存过期时间

1. 自定义CacheManager 继承RedisCacheManagerpackage com.xingte.hmiserver.cache.redis;import com.xingte.hmiserver.utils.StringUtils;import lombok.extern.slf4j.Slf4j;import org.jsoup.internal.StringUtil;...

2020-04-20 16:48:54 1070

转载 【转】Jackson之多态反序列化(父类转不同子类)

1.场景描述JSON作为一种轻量级的数据交换格式,其清晰和简洁的结构能够轻松地与Java对象产生映射关系。例如,一个Coke(可口可乐)类的java代码如下:public class Coke{ String name = "Coke"; int capacity= 500; }用json描述该类:{ "name":"Coke", "capa...

2020-03-28 15:20:23 8336 2

原创 vue cli3 h5配合Nginx开启gizp和http2优化首次加载速度

前言:最近部署vue写的项目,由于公司服务器带宽较小,第一次加载时间相当长,体验不是很好,于是查找相关资料,进行了一些优化,效果还不错。1. Vue 发布构建时打包成Gzip压缩安装compression-webpack-plugin npm install compression-webpack-plugin --save-dev配置vue.config.js// 导入co...

2019-12-26 12:04:29 1111

原创 Okhttp 多网络通信选择实现方式

最近项目需求,需要android同时可以访问内网以及外网,即不同的通信走不同的网络,查阅相关资料后确定可行,但需一定的条件1. 前提必备条件:1) 控制板搭载的android系统版本需要5.0以上 2) 控制板搭载的android系统需要同时支持多网络连接共存,即满足wifi网络,移动网络,网卡能够同时连接且分配到各自网络的IP地址,不能出现连接一个网络后自动将另一个网络断开(反例...

2018-09-14 11:09:10 2889 4

原创 Android 系统Button 默认样式buttonStyle引发的一些问题以及思考

很多时候我们在自定义button的背景时会发现,无论如何button的大小总是那么什么…首先selector:<?xml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.android.com/apk/res/android"> <!--点击背景--&gt..

2018-08-28 19:20:01 13694 2

原创 Android 导出CSV文件,解决中文乱码问题

乱码,无非就是编码对不上的问题,只要编码一样那就没问题,使用了Okio,直接上代码: try { //写入文件 String data = stringBuilder.toString(); File file = new File(getExportF...

2018-08-09 16:54:57 2340

原创 记一次Linux服务器磁盘空间占用,大文件查找

好久没写东西了,很久之前弄了个服务器玩玩,写了点东西在上面放着,一直在不停的抓数据,也就没怎么看,最近闲来无事登录后台查看,发现我的妈呀,服务器磁盘快满了 刚开始以为抓取的太多,数据库数据膨胀占用了,于是登录MySQL查看,发现有20多万条记录,咋看似乎占了挺多的容量,于是尝试删掉了一些,发现根本不起作用,那究竟是什么东西占了这么多的空间,于是开始搜索资料,查找Linux查看磁盘占用的一些命...

2018-06-19 13:04:50 12170

原创 EventBus 和RxLifecycle 一起使用所引发的问题及解决办法 -java.lang.NoClassDefFoundError: android/os/PersistableBundle

之前一直用RxLifecycle 也没啥事,但是在引入EventBus之后引发了一个异常:java.lang.NoClassDefFoundError: android/os/PersistableBundle ,这个异常刚开始没发现,因为开始时使用的时高版本测试的,但是当打包准备发布时测试,发现在4.4机子上直接崩溃了02-03 09:02:01.527 4190-4190/com.u9

2018-02-03 18:52:17 2075

原创 黑苹果MacOS Sierra读写Windows NTFS盘的方法(非第三方软件)

安装了黑苹果之后,通常我们是双系统的,然后会发现可以识别Windows盘,但是呢只能读不能写,这就有点尴尬了。这时候就开始各种搜,然后发现搜出来的基本都是那一两个软件(paragon ntfs),而且都是收费了,再然后又开始搜po解版,忙活了半天发现没用呀,基本都是无功而返。就在某一天,又想读写Windows盘里的东西了,然后又搜一下,偶然间在知乎看到一个回答:如何将 Mac 里的文件复制到 NTF

2017-07-16 12:08:45 29377 6

原创 Springboot @RequestBody + Retrofit @Body 之实体类字段含有日期Date类型的提交方式

有时候进行参数提交时需要提交很多的参数,一个个参数写太麻烦,则可以利用POST即两者的注解直接实体类进行提交,他们会自动进行字段的映射,相当于json数据格式提交,可以省很多事,但是需要注意字段为日期Date类型时的处理。演示代码:springboot controller类:@RequestMapping("addNewConference/") public BaseResult<Con

2017-05-09 02:11:41 6949 3

原创 springboot vue.js axios.js ajax请求纯HTML页面传值

么有用官方模板,vue.js + axios.js 纯HTML前端,纯属个人娱乐传值方式://存localStorage["uid"]=res.data.data.userId;window.location.href = "/index.html";index.html界面取console.log(localStorage["uid"]);参考: https://segmentfault.c

2017-05-07 15:35:31 4374

原创 Spring Boot Unregistering JMX-exposed beans on shutdown

创建springboot项目运行的时候报这个错误Unregistering JMX-exposed beans on shutdown,搜索发现第一条是:Spring boot 嵌入的tomcat不能启动: Unregistering JMX-exposed beans on shutdown但是这并不是我碰到的,其实还有其他的原因,就是创建项目的时候没有引入web组件,即<dependency>

2017-05-02 18:00:06 7530

原创 Mac DBeaver Client home is not specified for connection解决办法

问题: 一般出现这个问题是由于DBeaver 程序无法自动找到数据库的安装目录,在进行数据的导入导出时无法执行,这是因为执行指令需要数据库相关命令的支持。解决办法: 我用的是mysql,这里拿mysql举例,其他的数据库类似。在安装的时候选择数据库的安装目录 window下很好找,这里关键是mac不好找,如果是手动下载的官方压缩解压的方式那也很好找,如果是安装官方的安装包方式,则需要费点功

2017-04-17 23:30:19 8337 4

原创 Skipped 60 frames! The application may be doing too much work on its main thread

最近发现app界面跳转时界面很是卡顿,非常的明显,看看日志打印了如下Skipped 60 frames! The application may be doing too much work on its main thread很简单也很直白的提示了,跳过了60帧,有可能在主线程做了较为耗时的操作,但是这些操作又不至于到使程序达到ANR的地步。既然原因找到了咱们就动手了,于是开始查找activ

2017-04-17 22:44:57 28843 8

原创 CenOS 7 手撸springboot 自动部署脚本autodeploy.sh

最近玩springboot,自己有一个服务器,写完了都放到服务器去部署,刚开始用的gui-manager方式,但是慢慢的发现,这个方法部署太慢了。大家都知道一般的小水管宽带的上传也就70k左右,部署一次等n久。于是想着能不能自动部署,每次把代码提交即可。经过查找资料结合自身已有的了解,找到了Jenkins,很强大,但是配置什么的略微麻烦,看网上的教程貌似也要编写脚本,于是想着何不自己直接撸个脚本算

2017-04-17 22:44:55 2502

原创 CentOS 7 生成SSH连接GitHub的SSH-key

生成秘钥//换成你自己的邮箱ssh-keygen -t rsa -C "[email protected]"//一直next并记住生成的地址Generating public/private rsa key pair.Enter file in which to save the key (/root/.ssh/id_rsa):Created directory '/root/.ssh'.

2017-04-17 22:44:52 7082

原创 CentOS 7 安装mysql

下载mysql源安装包wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm安装mysql源yum localinstall mysql57-community-release-el7-8.noarch.rpm检查mysql源是否安装成功yum repolist enabled | grep "mys

2017-04-17 22:44:49 451

空空如也

空空如也

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

TA关注的人

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