自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(68)
  • 资源 (5)
  • 收藏
  • 关注

原创 protobuf 2定义string常量

本文介绍如何在protobuf 2中定义string常量

2023-08-09 12:00:56 1169

原创 ES字符串从任意位置模糊查询(支持只匹配含连续字符串内容)

ES 任意位置模糊搜索 支持连续字符串匹配 支持条件含空格则视为多个查询值

2022-10-14 07:29:08 8477 1

原创 MySQL json字段 全值(全字符串)查询

巨人的肩膀mysql支持原生json使用说明背景:t表有个json类型的字段f,需查询出:f字段值为 ‘{“id”:1}’ 的数据结论需用cast转换入参为json:select * from t where f = cast('{"id":1}' as json);准备环境表结构create table t(id int auto_increment primary key,name varchar(10),f json);初始化数据insert into t(n

2022-02-22 17:11:10 1671

原创 多个远程Git仓库代码及版本同步

巨人的肩膀:How to keep two Git repositories in sync需求项目代码存在多个远程Git仓库里(例如:Github、Gitlab、Gitee),需确保不同远程仓库代码版本一致。初次搭建仅需3步!以后同步只需1步!操作步骤1、检出源仓中的项目# 到代码缓存目录cd ~/code-syncgit clone --mirror https://github.com/jack/my-project.git2、增加第二个远程仓库Gitcd my-project

2021-07-31 08:34:55 1629

原创 ES nested 数组元素增删改查

巨人的肩膀Update API | Elasticsearch Reference [7.11] | ElasticElasticsearch: remove/update field inside nested objectES中使用nested类型的内嵌对象需求对nested(数组)进行操作:增加元素删除元素更新某个元素的值查询包含有指定特性(如id)的缓存环境Docker中启动的ES、Kibana,版本号均为:7.8.1,搭建教程操作方便起见,咱们使用分组(Group

2021-03-18 11:23:07 4178

原创 Docker运行Elasticsearch和Kibana

巨人的肩膀docker安装es和kibana——非常简单Connect Kibana with Elasticsearch ContainerInstall Elasticsearch with Dockeredit版本:7.8.1命令# ES和Kibana网络桥接docker network create network-elas# esdocker run -it -d --name elasticsearch -p 9200:9200 -p 9300:9300 -e "d

2021-03-15 14:10:33 216

原创 Goland插件—git相关

GitToolBox行尾显示该行的最后一次修改人、时间

2021-03-12 15:26:51 4595

原创 Go 中文字符串 len()返回错误

s := "x张三"size := len(s)//7// 应使用 utf8.RuneCountInString(s)size = utf8.RuneCountInString(s)//3

2021-01-26 11:33:03 913

原创 Chrome “您的连接不是私密连接的方法” 解决办法

参考资料解决chrome提示您的连接不是私密连接的方法Troubleshooting Certificate Errors in Web Browsers现象:Chrome提示内容如图所示:解决办法1、[亲测有效]Mac OS:打开 终端(控制台),输入一下内容并回车,即可打开Chrome,此时访问原先页面将不会出现前面的拦截提示:/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --test-type --ig

2021-01-25 14:27:03 3991 2

原创 Docker Elasticsearch 报错:no Elasticsearch node available

报错信息panic: no active connection found: no Elasticsearch node available资源ES版本号:7.2.1原因参见在docker中运行elasticsearch时go程序无法连接到节点解决方案在创建es的client时,指定禁用Sniff即可import ( "fmt" "github.com/olivere/elastic/v7")var client *elastic.Clientfunc Init() { u

2021-01-22 18:39:08 3431

原创 Go gin Get请求参数 支持数组

思路:用string接收,然后通过反序列化成数组即可。controller/service:// str: [1,2]int8Slice := utils.ParamInt8Slice(str)// str: ["a@gmail.com", "b@gmail.com"]stringSlice := utils.ParamStringSlice(str)utils:func ParamInt8Slice(str string) []int8 { res := make([]int8, 0)

2021-01-20 11:28:34 7042 2

原创 Mac安装clang-format

巨人的肩膀:GoLand文件格式化配置操作步骤:1、更新homebrew资源brew update2、安装clang-formatbrew install clang-format# 安装成功后,可通过此命令知道clang-format路径,后面需要用到:which clang-format3、配置GolandArguments填的内容:-style="{BasedOnStyle: Google, IndentWidth: 4, ColumnLimit: 0, AlignCon

2021-01-13 17:31:05 5976 1

原创 go json标签(tag)

go中json序列化使用标签来进行拓展:1、忽略空值:type Person struct { Id int64 `json:"id, omitempty"`}2、忽略字段(不论是否为空值):type Person struct { Id int64 `json:"-"`}3、指定数据类型:type Person struct { Id int64 `json:"id,string"`}...

2020-12-24 10:27:31 2200

原创 Mac安装mysql-python报错:library not found for -lssl

报错信息:解决办法:参见这篇博文

2020-12-21 15:23:05 210

原创 读书也是风雅乐事

读书也是风雅乐事□鲁先圣我十分钦佩杨绛先生关于读书的观点:读书好比串门儿——隐身的串门儿。要参见钦佩的老师或拜谒有名的学者,不必事前打招呼求见,也不怕搅扰主人。翻开书面就闯进大门,翻过几页就登堂入室;而且可以经常去,时刻去,如果不得要领,可以不辞而别或者另请高明,和他对质。把读书看成了拜师访友,是那种没有任何功利的读书,优雅而闲适。如果我们真的能够像杨绛那样去看待读书,把读书当做是去拜访高人名流,那读书就存粹是一件风雅乐事了。苏格拉底对于读书另有高论。他声称,一册好书,能够引诱他走遍全世界。他是为求

2020-11-23 09:11:41 264

原创 go reflect.Value获取原始值

go reflect.Value获取原始值type Person struct { Name string}func main() { p := Person{ Name: "James", } // 获取反射 refPerson := reflect.ValueOf(p) // 获取通过反射获取原始值 fmt.Println(refPerson.Interface())}

2020-11-06 14:40:49 1694

原创 一种介于Push与Pull之间的模式

Push与Pull使用过消息中间件的同学,对于push与pull模式应该了然于胸。为了做个铺垫,在此将两者的对比图粘贴出来:图片出处:[转] 消息系统该Push/Pull模式分析简言之,就是:push模式:有数据变动时,由 服务器 主动向 客户端 发送消息pull 模式:客户端向服务器发送拉取请求,服务器将变动的数据返回给客户端,也可能没有变动的数据介于Push与Pull模式之间的“新模式”Google Chubby 是一款分布式锁服务,GFS、Big Table等大型系统均使用其解决

2020-09-06 15:30:33 393

原创 线程池RejectedExecutionHandler从FutureTask获取原始任务对象(Runnable、Thread等)

需求线程池拒绝策略中,需要将拒绝的任务进行特殊处理(如:任务处理状态标记为失败),故需获取到原始任务对象(称为oriWork)。拒绝策略回调中传参Runnable r为FutureTask对象(无法将该对象强转为oriWork类型),该对象的callable字段存储了oriWork,只是该对象被Executors的内部类RunnableAdapter封装着。思路通过反射先获取FutureTask.callable字段,然后通过反射获取Executors$RunnableAdapter中包装的原始任务

2020-08-11 11:06:17 1244 1

原创 MySQL—控制台 清屏

巨人的肩膀mysql命令行清屏mysql命令行怎么清屏system clear;

2020-07-24 16:59:02 948

原创 Nginx—windows环境 开启目录浏览 且于浏览器中显示.log后缀的文件内容

需求在windows环境,将指定目录(此处为:D:\data\deploy\logs)使用nginx“代理”显示,并在选中.log后缀的文件时,在浏览器中显示该文件内容。您可根据自身需求进行修改,如目录、后缀等。Nginx 配置:# 务必确保:location为/location / { root D:\data\deploy\logs; # 切记:该目录下不能有index.html,否则将只显示该html的内容 #index index.html; autoind

2020-07-24 15:26:00 1381

原创 Jenkins—在windows环境搭建Jenkins环境 并构建部署到本地Tomcat中

巨人的肩膀Jenkins「第一节」-win10环境tomcat部署高版本Jenkins关闭跨站请求伪造保护(CSRF)场景需要在Windows台式机上搭建Jenkins环境,构建并部署项目到本地tomcat。因该台式机放在公司局域网内,为了方便研发和测试人员构建,需要在该台式机上搭建Nginx并对jenkins进行反向代理。需要预先完成的操作为了方便看官,特将相关资源在百度云分享:链接:https://pan.baidu.com/s/1swd45m7V7f-O8NHFvK3QNw提取码:1

2020-07-22 18:13:16 2204

原创 线程池—ScheduledThreadPoolExecutor 存在OOM问题

原因ScheduledThreadPoolExecutor继承自ThreadPoolExecutor,而前者构造方法调用的是后者的构造方法,而且maximumPoolSize值为Integer.MAX_VALUE,这会导致缓冲队列中存在过多任务对象没有被处理并回收内存。demo@Testpublic void main() { int coreThreadCount = 1; ThreadFactory threadFactory = new ThreadFactoryBuilde

2020-07-16 18:29:58 3298

原创 Nginx开启压缩 提高静态资源获取速度

巨人的肩膀Nginx gzip 压缩Nginx启用Gzip压缩js无效的原因Nginx不自动压缩css和js文件解决方案具体操作确定nginx配置文件路径:输入:nginx -t结果:nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is oknginx: configuration file /usr/local/nginx/conf/nginx.conf test is success

2020-07-15 11:04:18 1242

原创 在Spring Filter中抛出异常的一种办法

先说办法,如果看官觉得合适再往下看原理吧解决办法步骤:1、创建一个专门抛出Filter中异常的Controller及接口方法,例如该接口地址为:/filter/login_auth_fail@RequestMapping("/filter")@RestControllerpublic class FilterController { @RequestMapping("/login_a...

2020-03-06 17:14:01 2925 4

原创 集合Stream流操作工具类

前言Java1.8发布的流操作支持Lambda表达式,省去for、foreach等架子,有效提升编码效率。但重复的拼装出相同的流操作表达式,又出现了原先for、foreach存在的架子问题,故而,本文将给出一些笔者日常工作中经常使用到的流操作工具方法,希望能减少不必要的重复代码,将宝贵的时间精力放在功能、产品、生活上。代码StreamUtils:package com.sqlu.too...

2020-01-06 19:09:44 1162

原创 POI操作工具类

前言经常有需求导出excel表格,本文将搭建excel的简单模型,并使用POI实现一些常用的功能。工具地址:Github地址看下效果示例代码:package com.sqlu.learn.excel;import com.sqlu.learn.tools.excel.poi.PoiUtil;import com.sqlu.learn.tools.excel.pojo.*;im...

2020-01-03 17:14:33 943

原创 SpringBoot 接口返回值类型转换报错 No converter found for return value of type

SpringBoot 接口返回值类型转换报错 No converter found for return value of type参考资料:No converter found for return value of type: class java.util.LinkedHashMap解决方法:/** * @author stonelu * @date 2019-09-27 18:1...

2019-10-29 15:04:42 724

原创 一次正式环境服务器CPU持续99%问题跟踪与解决

巨人的肩膀:Java线上应用故障排查之一:高CPU占用【转】事件回顾现象:从服务器控制台查看(未添加报警机制),发现服务器CPU持续8小时一直处于99%的使用状态处理:先查看当前哪些进程占用资源较高:进程按占用资源递减排序:输入top,然后输入p发现PID为8164的java进程占用CPU达到99.8%查看PID进程中耗时的线程:ps -mp PID -o THR...

2019-07-05 14:49:04 1469

原创 OpenCV定位二维码的三个定位点

效果:依赖:需要OpenCV的运行环境,Windows直接通过exe安装即可,Mac有些繁琐,Linux需要通过源码进行本地编译。具体参见其他资料,此处不再赘述。<dependency> <groupId>org.opencv</groupId> <artifactId>opencv</artifactId>...

2019-06-27 14:54:57 2985 3

原创 Java原生窗体(JFrame/JPanel)显示图片(支持OpenCV)

为便于比对OpenCV处理前后图片效果,需要将原始图片、处理后的图片、OpenCV矩阵图像显示出来。借鉴于网上的资料,在此处给出满足上述需求的工具类。支持:拖拽自适应图片大小,通过文件路径、Mat、Image显示图片参考资料:https://stackoverflow.com/questions/13871307/jframe-not-showing-a-picturehttps:...

2019-04-30 17:46:59 4206

原创 Docker之——安装

Docker之——安装注意因版本支持原因,墙裂建议使用CentOS 7及以上版本安装 或 其他OS的兼容版本,否则会出现很多意想不到的问题。详情参见官网。如果是低版本CentOS,可以参照这篇文章尝试升级。//TODO你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本...

2019-02-10 15:54:50 281

原创 CAS之——自定义改造

CAS之——自定义改造本文总结一些CAS集成过程中的自定义改造需求与实现,持续更新,也欢迎各位前辈提出意见与建议。环境CAS服务端:cas-4.0.0,下载部署参见此篇文章cas客户端:引用第三方jar包项目:JDK1.8、Spring Boot结构pom.xml:添加第三方jar包即可:Main.java:增加@EnableCasClient()注解即可W...

2018-12-30 13:07:34 2087

原创 maven构建报错:无效的目标发行版: 1.x

报错信息:Fatal error compiling: 无效的目标发行版: 1.x -&gt; [Help 1]原因:根据网上资料检查了一遍:确实已经安装jdk,且版本正确,cmd中也能查看到jdk版本信息,maven也正常安装了。换了个jdk包,好使了!!!!!! ,可能是之前的jdk包不正确。点击此下载正确的jdk1.8包...

2018-11-17 15:36:21 757

原创 James3之——Docker部署

WhyDocker容器技术极大地简化了软件的交付于部署,更多的优势在此便不再赘述了。利用Docker的volume技术可以部署多套相同配置的James邮件服务,加上域名映射即可完成负载功能(邮件相关数据需存于数据库中)。由于aliyun禁止25端口对外访问,无奈只能到墙外搭个James邮件发送服务器,然频繁被墙(T﹏T),有了Docker后只要将备份的配置文件上传到服务器然后做个volum...

2018-10-22 00:32:55 1909

原创 CentOS6.x升级到7

资料:Centos 6.x 升级到 7 CentOS 6.5升级至CentOS 7 centos6.x如何更新 风险:系统:ssh、yum不可用,需按文末步骤安装数据:从实验来看,不会清空 /opt、/home、/var 目录下的用户数据,部分应用(如Jenkins)会自动更新版本 详细步骤:1、查看当前CentOS版本cat /etc/redhat-r...

2018-10-21 21:37:44 25837 3

原创 Springboot集成Mybatis报找不到mapper

报错:nested exception is org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): 前缀包名.dao.AppMapper.list 原因:网上有其他原因点,下面是这次遇到的原因:maven打包时,没有将application.yml或properties、...

2018-10-15 17:42:41 3913

原创 James3之——安装与配置

Why?James-3.1.0 较于 2.3 功能更加完善,详情参见官网: https://github.com/apache/james-project/#apache-james-project 拥抱Docker,可以将数据卷挂载到Host上,还可集成ElasticSearch或Lucene(基于Guice): https://github.com/apache/james-proj...

2018-10-03 15:13:39 7686 23

原创 James之——集成TLS/SSL

Why?1、阿里云将SMTP的25端口封了2、为了数据安全,详情参见SSL/TLS说明 What?为了防止垃圾邮件泛滥成灾,国内外大部分服务器提供商均默认禁止25端口对外访问(以下简称:禁止25端口),阿里云默认禁止25端口,但可以从25端口接收外部发来的数据。 How?1、解决思路:有个曲线救国的办法:购买一台允许通过25端口对外发送数据的服务器,重...

2018-09-17 10:34:03 1141 2

原创 James之——使用log4j输出新加类的日志

Why?    新加的类,默认是不输出日志的,即便是在控制台输出,也不太方便后面的问题跟踪。What?    本文介绍如果使用log4j输出新加的类产生的日志。How?1、添加Log4j的jar包和配置文件:    在项目lib下添加log4j的jar包,在根路径下添加:log4j.properties 配置文件,因启动脚本中有如下的传参:    故可以用 ${phoenix.home}/apps...

2018-07-08 09:29:26 554

原创 James之——添加自定义服务

Why?    通过POP3可以获取到james中指定用户收取到的所有邮件,但没有提供获取邮件发送状态、最近联系人功能。鉴于两者在服务端功能上相似,此文取简单的做一下介绍:获取最近联系人功能。    当然,可以在这上面进行更多的拓展,获取邮件的发送状态便是一个不错的功能,以后有时间再详细介绍下。What?    可以站在巨人的肩膀上快速开发这个功能。其实james已经封装好了一套“流程”,添加几个...

2018-07-07 22:44:44 456

jdk1.8.0_111

一个能正常进行maven构建的jdk1.8免安装包,解压到指定目录并在IDE中做好指向即可

2018-11-17

SQL格式化_Prompt

MSSQL的智能提示速度真的是不敢恭维,Prompt能够帮助我们解决这一问题,并有其他一些更便捷的功能等你发现分享!

2016-05-31

fiddler抓包工具

一款非常强大的抓包工具,不仅能对主流的几大浏览器进行抓包,还能对VS进行抓包!

2016-05-31

Flash文件swf反编译工具

一个用于将Flash生成的文件swf反编译的工具

2016-05-31

Regex测试工具

一个界面简洁、功能强大的Regex正则表达式测试工具

2016-05-31

空空如也

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

TA关注的人

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