- 博客(21)
- 资源 (2)
- 收藏
- 关注
原创 MQTT5协议报文格式
MQTT控制报文由三部分组成:固定头(Fixed header)+可变头(Variable header)+有效载荷(Payload)二、控制报文格式MQTT控制报文由三部分组成:固定头(Fixed header)+可变头(Variable header)+有效载荷(Payload)Fixed header 固定头部,MQTT协议分很多种类型,如连接,发布,订阅,心跳等。其中固定头是必须的,所有类型的MQTT协议中,都必须包含固定头 Variable he...
2022-03-23 17:14:34
10845
5
原创 Mavlink协议(第二版)
文章目录协议简介一、Mavlink协议主要特点二、数据结构不兼容标志 (MAVLink 2)兼容性标志 (MAVLink 2)有效载荷格式MAVLink 2 的数据包格式协议简介MavLink官网:https://mavlink.io/一、Mavlink协议MAVLink 是一种非常轻量级的消息传递协议,用于与无人机(以及机载无人机组件之间)进行通信。MAVLink 遵循现代混合发布-订阅和点对点设计模式:数据流作为主题发送/发布,而任务协议或参数协议等配置子协议是点对点重传。官方文档
2022-03-21 16:39:18
6783
原创 计算JTS缓冲区面积(Java)
根据两个点坐标,加上点幅宽计算点的路径面积,此为计算多边形面积,主动去掉重复面积。引入pom文件:<dependency> <groupId>com.vividsolutions</groupId> <artifactId>jts</artifactId> <version>1.13</version></dependency>处理demo:package com.demo.u
2021-10-19 10:29:43
1609
原创 坐标点/GPS点/经纬度/UTM的抽稀算法-道格拉斯算法
输入点集合进行抽稀,根据不同的抽稀力度获取不同的点集结果,力度越大,点集越稀疏。package com.hxkj.common.utils;import java.util.*;/** * 坐标处理类 GPS点的抽稀-道格拉斯算法 * * @author Elinx * @since 2021-05-31 10:28 */public class GisDouglasUtil { /** * 计算两点距离 * * @param point1 点
2021-10-19 10:17:06
1305
3
原创 XY坐标两点插值(加密)计算(Java)
已知两个点的坐标,这个两个点可以连成一条直线,目前在这条直线上按照固定距离进行插值,即增加更多点在这条直线上。package com.demo.utils;import lombok.Data;import java.util.ArrayList;import java.util.List;/** * 两点插值计算 * * @author elinx * @since 2021-09-24 14:05 */public class PointInterUtil { @D
2021-10-19 10:09:58
1327
转载 Git使用命令大全(整理备用)
Git常用命令指南Git仓库设置创建一个新仓库git clone git://github.com/elinxer/library.gitcd testtouch README.mdgit add README.mdgit commit -m "add README"git push -u origin master推送现有文件夹cd existing_foldergit initgit remote add origin git://github.com/elinxer/libr
2021-07-16 10:17:29
337
原创 thinkphp6 phpunit单元测试完整用法
概述折腾了一个上午搞这个单元测试,的亏是通了,不然要面壁去了。thinkphp6官方并没有支持phpunit的集成使用,不知道为什么,虽然不妨碍我们直接使用phpuint,单局限性很大,我们只能对通用类和不涉及框架层面进行测试,如接口验证之类。这样的单元测试意义并不大,不能注入到核心里面,还不如直接看接口返回得了,造啥测试,既然用了必然是想要代码质量更高的。打通任督二脉想要运行并测试框架内部的逻辑,那么怎么引入就成了最大的问题,官方没有说明,这里是基于折腾过的文章进行验证通过的。主要原理就是,
2021-03-26 16:17:41
3137
原创 MySQL单个大表增量备份+索引+结构变更简单方法
由于使用了低版本mysql,且是myisam引擎,在进行一个千万级数据表加索引时过于缓慢,安全起见采用增量模式备份新表,通过重命名方式迁移结构到新的备份表。测试版本,目前针对的是MySQL低版本模式进行的测试,与此版本无关。以下操作皆可以直接用于测试,是编写文章过程实际SQL思路,依据原始表,创建三个insert,update,delete表,依赖主键ID,并创建三个触发器,然后全量备份原始表为一个新表,因为原始表数据的增删改都会记录在三个表,故单表SQL的操作记录可以直接拿到。这时选一个时间,或做
2021-02-05 16:43:51
391
1
原创 关于后端编程‘闭环’的一些思考
注:本文仅为个人后端编程开发中的一些思考,如果帮助,甚是荣幸。1.编码curd的苦楚当我初初接触编程的时候,战战兢兢打开记事本写下第一个HTML hello并刷新浏览器显示,那种心情激动而自豪,目前是没有了。相信80%的后端程序员都在curd的业务中反反复复,挣扎着如何避免继续curd的过程中继续curd。对于广大后端达瓦里氏来说,编码就是对着业务编写curd相关逻辑,建个表,建个model,搞个控制这样的了,相差不大,业务复杂的来个服务类,又或者整个中间件之类。其实写了这么多年代码,回头一
2021-02-05 14:09:25
759
原创 Go生成json、解析json和多维json数组解析
go生成和解析json结构是按结构体模式解析的,所以结构体类型一定要多练习熟悉。完整代码(可以运行):// +build ignorepackage mainimport ( "encoding/json" "fmt")type Person struct { Name string Age int}type Family struct { Persons []Person}func main() { // 根据结构体生成json manJson := Pe
2020-08-19 10:07:18
7362
原创 Go语言基础语法之一
文章目录前提基础说明1.文件结构2.语法基础前提开发环境:vscode配套装完go版本: go version go1.14.4 windows/amd64基础说明1.文件结构package mainimport( "fmt")func main() { fmt.Println("fuck", "trump!")}以上是go语法基础结构,也是第一个代码。注意:Go常用只能用双引号,单引号初学阶段可以直接放弃记忆,当他不存在,后续强大了自己查原因。2.语法基础定义变量//
2020-08-17 14:18:18
201
原创 Easyui 分页工具条自动带指定查询参数queryParams
背景在一个后台管理模块有使用了easyUI组件,然而就如何自动带上搜索历史参数进行分页时也一致,保持结果符合搜索条件,如存在条件,结果为100页,点击下一页时也带入搜索条件。解决方式是使用 $grid.datagrid 的 queryParams 参数,非常简单,由于该问题查询了两次百度,故记录一下。场景和原理查询列表页,存在搜索条件,查询点击按钮,table列表页面加载时就会触发内容列表加载一次,当触发查询按钮时,触发函数 queryRecord 即重新加载一次$grid.datagrid(
2020-08-06 16:34:02
613
原创 Mysql行锁forUpdate实验以及记录锁、间隙锁,临键锁
背景在编写一个领取码的时候,业务复杂度不高,所以直接做了个查询的排它锁 for update,同时研究了行锁相关的内容,因为经人提点说,,MySQL行锁只在主键和唯一索引起效,根据个人经验,相信MySQL不会仅仅如此,故进行了这次实验。这里仅研究悲观锁(排它锁)。准备工具1.MySQL版本:8.0.162.命令行3.一张表4.一组范围查询sql,一组主键id查询sql5.插入1000条数据使用到的分析命令:SELECT version(); # 查询MySQL版本SET autocom
2020-07-25 15:42:00
971
原创 go编译找不到包golang.org/x/net
go编译找不到包golang.org/x/net运行环境编译发生错误问题原因解决办法运行环境go 版本:go version go1.14.4 windows/amd64使用包:net/httpimport ( "fmt" "net/http")编译发生错误在安装自定义包时无法获取包go get -u github.com/jackdanger/collectlinksunrecognized import path "golang.org/x/net/html": https f
2020-07-21 10:32:37
1397
原创 解决go包管理代理网址无法访问:proxy.golang.org
go相关官方地址被墙真的很让人暴躁:go版本:go version go1.13.6 windows/amd64安装gin框架时使用了:go get github.com/kardianos/govendor然后:go get github.com/kardianos/govendor: module github.com/kardianos/govendor: Get ht...
2020-03-09 12:03:39
22009
19
原创 go安装gin框架失败错误解决:sum.golang.org被墙
go版本:go version go1.13.6 windows/amd64在使用下面命令准备安装gin试用一下时,发现,是不是卡主,然后直接报错:go get -u github.com/gin-gonic/gingo: finding github.com/gin-gonic/gin v1.5.0go: downloading github.com/gin-gonic...
2020-03-09 11:50:00
6804
4
原创 PHP7.3.10编译安装
php7.3.10编译安装配置安装环境(裸机): centos7.2下载指定PHP版本源码包github https://github.com/php/php-src.gitdownload https://www.php.net/downloads.phpsu - root && cd ~/wget https://www.php.net/distribu...
2019-10-07 11:23:05
1268
原创 charles抓包使用说明+ssl
charles使用说明1.网上下载Charles工具,需要破解则自行破解2.Charles装证书抓取先开启Charles SSL设置https/ssl3.在系统内安装ssl证书,如何安装?随意打开一个手机内部浏览器,输入地址: chls.pro/ssl即可进行证书安装4.客户端进行WiFi链接设置,WiFi代理为本机局域网IP,并设置端口8888即可完成抓包charle...
2019-03-28 14:50:48
576
原创 android studio flutter代理设置问题classpath 'com.android.tools.build:gradle:3.2.1'
前提初次安装flutter,通过代理设置加快速度安装首次更新数据,但在添加设备并开始打包编译时出现classpath找不到的情况1.在初次启动IDE的时候会提示更新各种SDK包,此时一般会直接设置代理,我的系统时Ubuntu18.04,所以直接代理了本地vpn,127.0.0.1 端口10802.在编译打包的时候出现了找不到相关的包,原因是flutter三个默认配置的地方采用了Goog...
2018-11-28 10:19:57
10305
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人