- 博客(190)
- 资源 (20)
- 收藏
- 关注
原创 windows cmd执行远程长脚本
为了简化软件使用者的理解成本,或快速在新电脑初始化一些配置,可以给使用者一段更简单、CMD可执行的脚本初始化电脑中的设置。
2023-11-25 08:41:22 344
原创 解决WebMvcPatternsRequestConditionWrapper.getPatterns NullPointerException 启动失败
Spring Boot2.6之后,swagger的包,WebMvcPatternsRequestConditionWrapper.getPatterns NPE 异常文章目录Spring Boot2.6之后,swagger的包,WebMvcPatternsRequestConditionWrapper.getPatterns NPE 异常报错现象堆栈截图排查过程解决方案报错现象堆栈2022-03-13 02:40:28.000 ERROR [16312] --- [ main]
2022-03-13 03:04:59 7815 8
原创 2021 有趣AI算法简介
本文面向图像处理方向,结构为列举算法、以及其原理、训练所需要的数据、训练注意点,是对当前热门AI算法的一个介绍,暂不包含手把手教程。其中开发者如果想定制某个算法,可以通过定制算法、训练需要输入数据,来调整自己的模型。非AI开发者可以使用他人已有的模型,图像化的方式直接应用这些AI 算法。文章目录形象替换应用算法举例算法大概原理人类思维映射超分辨率重建应用算法举例算法大概原理人类思维映射训练需要的输入数据注意点AI 声音模仿应用算法举例算法大概原理人类思维映射训练需要的输入数据图像消除应用算法举例算法大概
2021-12-12 18:27:38 5780
原创 记录一次磁盘超限报警
故障发现6.3 日上午起床后发现自己闲置的服务器出现了告警(自己搭建的告警体系),立即查看监控系统,看看是什么原因。故障分析首先查看主机整体监控看到明显的磁盘占用空间上升,凌晨和傍晚有两次磁盘读写尖峰,伴随 CPU 占用上升。立即怀疑是否是某中间件发生了频繁的 GC、以及不停打印 GC 日志导致,于是打开容器监控:发现 kibana 占用特别高,非常反常,因为正常来说 es 的占用会高于 kibana,且监控上并没有 es 的数据,猜测 es 挂掉,导致 kibana 连不上,不断重试,
2021-06-03 22:56:12 794
原创 AspecJ 无法拦截接口上的方法加注解
Controller 接口上的方法加注解无法被 AspecJ 拦截AspecJ 无法拦截接口上的方法加注解,只能作用在实现类的方法上,这时需要利用 MethodInterceptor 来实现。 @Bean public Advisor methodPointcutAdvisor() { AopTestMethodPointcutAdvisor advisor = new AopTestMethodPointcutAdvisor(); advisor.setAdvi
2021-01-31 01:13:57 520
原创 2020 小结
2020 小结2020 年写博客非常少,一方面是毕业进入工作,进入了人们所说的国内顶尖互联网大厂,发现自身有非常多的进步空间,没那么多充足的时间专门用来写博客,而是积累经验并应用于实践。初出茅庐毕业后,身份从学生狗换成了打工人,工作和学校中学的内容差异还是非常大的,但这并不妨碍,因为在我看来,进入该行的大都是有自行、主动学习过项目的开发的,只要你在学习中真正自己做过系统,会发现 just so so,你做的事情,就是你学过的,只不过是实现方式可能有差异罢了。初窥门径很快,你会熟悉自身部门的业务
2021-01-30 12:47:17 116
原创 mysql并发插入死锁
mysql并发插入死锁场景多个线程同时执行条件插入语句SQL:INSERT INTO system_lock (resource, owner, token, version, lock_time, release_time) SELECT ?, ?, ?, 0, ?, ? FROM DUAL WHERE NOT EXISTS(SELECT resource FROM system_lock WHERE resource = ?)状态跟踪执行命令查看 innodb 状态show engine
2020-11-18 19:24:16 3362
原创 我把 Snowflakes 的算法性能提升了万倍!!
我把 Snowflakes 的算法性能提升了万倍全局 id 生成器,老生常谈的雪花算法,看了一下网上的实现,基本都是类似这种(仅举例)class SnowFlakeIdGenerator { /** * 起始的时间戳(a special day for me) */ private final static long START_STAMP = 1555776000000L; /** * 每一部分占用的位数 */ private
2020-10-23 02:52:02 450
原创 linux 实时监控shell执行命令 记录日志
linux 系统 实时监控shell执行命令 记录日志原理在linux系统中,history命令可以输出历史命令,历史命令默认保存在文件~/.bash_history中。扩展HISTFILESIZE 定义了在 .bash_history 中最大保存命令的记录数HISTSIZE 定义了向.bash_history文件中追加的最大行数,一般这两个值相等方式1创建日志目录并且设置权限mkdir -p /var/log/his修改profile文件export HISTFILE="/var
2020-10-20 00:54:56 2802
原创 create from archetype 很慢
create from archetype 很慢通过 Intellij IDEA 新建 maven 工程时,勾选 create from archetype 不管选哪个 archetype ,创建后加载都很慢。原因根据 archetype 创建 maven 工程时,每次去请求 http://repo1.maven.org/maven2/archetype-catalog.xml,这个文件有 9.52M,网速不好情况下,下载非常耗时,如果是10kb/s的网速单下载这个文件就需要 15分钟。解决思路从
2020-10-08 01:05:05 3443
原创 StackoverflowError Spring Security Oauth clientDetailsService
StackoverflowError Spring Security Oauth clientDetailsService背景在使用 Spring security oauth 的认证服务器时,出现了 StackoverflowError 错误错误信息如下java.lang.StackOverflowError: null at java.lang.ReflectiveOperationException.<init>(Unknown Source) ~[na:1.8.0_45
2020-10-04 02:05:11 1689 2
原创 延时任务算法比较与源码分析
延时任务算法比较主流工具包与算法小顶堆,时间排序算法JDK 的 TimerScheduledThreadPoolDelayQueue 配合线程池时间轮算法netty 实现kafka 实现比较小顶堆算法优势:延时时间较精确,简单劣势:插入和修改复杂度 O(N),存在排序开销适用场景:少量任务、延迟时间疏散的场景时间轮算法优势:插入修改复杂度 O(1),性能较好劣势:精确度固定,误差较大,不能很好的支持较长延时执行的任务,有固定的线程切换周期,容易导致无意义的线程
2020-08-30 16:57:11 295
转载 删除 .iml .idea文件
del .idea /s /f /Qdel *.iml /f /sD:\code\demo>help del删除一个或数个文件。DEL [/P] [/F] [/S] [/Q] [/A[[:]attributes]] namesERASE [/P] [/F] [/S] [/Q] [/A[[:]attributes]] names names 指定一个或多个文件或者目录列表。 通配符可用来删除多个文件。
2020-08-24 02:56:18 1327
原创 nacos启动后一直打印ClientWorker日志
nacos启动后一直打印ClientWorker日志现象一直打印ClientWorker日志2020-08-24 00:57:30.977 INFO [12932] --- [.cn_8848-public] c.a.n.client.config.impl.ClientWorker : [fixed-nacos.itlym.cn_8848-public] [data-received] dataId=common.yml, group=DEFAULT_GROUP, tenant=public
2020-08-24 01:21:07 12789 6
原创 Nacos grafana显示为空
Nacos grafana显示为空在搭建 Shoulder-Platform 时,根据 Nacos 官方教程对 Nacos 监控时,未正确显示数据,仪表盘为空。检查后发现是以下两个原因导致的:数据源不正确- [nacos 官方给的监控模板](https://github.com/nacos-group/nacos-template)中的数据源名称为 `prometheus` ,而 `Grafana` 默认的 Prometheus 数据源名称为 `Prometheus`(P大写),由于不匹配,导致不会
2020-08-20 03:13:05 1251
原创 ES定时清理索引
ES 定时清理索引ES会将索引存放在内存中,以加速查询性能,但如果长期将使用不频繁的数据放入内存,将会浪费我们的一些资源,下面先举例子一个由于无用数据过多导致的问题自动清理脚本#!/bin/bash####################################删除早于十天的ES集群的索引###################################function delete_indices() { comp_date=`date -d "10 day ago"
2020-08-11 23:15:43 4626 1
原创 设计短链接系统
设计短链接系统短链接转换是将任意一个长的 url 如 https://github.com/ChinaLym/Shoulder-Framework 转为一个固定长度的url,如 itlym.cn/sd5D1R,并可以通过访问短 url 来跳转到长url上。场景举例用户分享动态内容时有字数限制(微博、推特、朋友圈),如果分享一个长网址,很容易就超出限制,发布出去。短网址服务可以把一个长网址变成短网址,方便在社交网络上传播。调用短信服务发送短信时,会有字数限制或因字数长短收取不同费用。设计考虑点
2020-08-10 02:07:33 1257
原创 Java 寻找指定文件夹里特定字符串
import java.io.*;import java.util.ArrayList;/** * 找出特定文件夹下的所有代码中出现的某个字符串,并回显在哪里出现过 */public class Finder { private static final String BASE_DIR = "E:\\files\\code\\java\\msgCollect\\src\\m...
2020-08-09 16:27:57 652
原创 注解 和 xml 比较
一句话总结优先注解不易发生变动 配置。优先配置文件易变更、第三方、环境相关 配置。优先考虑 注解:类级别的配置一般不会变动的依赖关系,如 service 和对应 dao其他不容易变更的配置优先考虑 配置文件:第三方的类(只能用配置文件形式)数据库、消息队列、redis 等中间件 或 基础环境依赖 组件配置线程池、定时任务、日志等个性化的项理由合理使用注解,...
2020-08-09 16:19:02 547
原创 毕设答辩
毕设答辩整体流程- 介绍 - 选题 ( 实际问题 ) - 功能模块 ( 需求分析,核实,为什么砍 ) - 成员介绍 (只有一人) - 技术方案 ( 概要设计 ) - 功能演示 - 盈利模式 ( 补充 )- 提问- 结论选题 (切合实际)Situation: 辅导员发...
2020-08-09 16:13:00 591
原创 docker redis 安装布隆过滤器插件 redBloom filter
安装:docker:可以直接使用其提供的镜像,但若考虑到可能装其他插件,推荐自己编译,可以参考它的 Dockerfile稍微改动,主要是利用 redis 的插件机制(modules)测试BF.ADD mybf 123BF.EXISTS mybf 123新建时候指定容错BF.RESERVE {key} {error_rate} {size}指定默认容错--loadmodule /usr/local/redis/src/rebloom.so INITIAL_SIZE 10000000 ER
2020-08-09 15:54:42 1811
原创 OpenJdk 下载jdk源码
OpenJdk 下载jdk源码打开自己 %JAVA_HOME% 目录,查看 release 文件最后一行的源码版本号,如下IMPLEMENTOR="Oracle Corporation"IMPLEMENTOR_VERSION="18.9"JAVA_VERSION="11"JAVA_VERSION_DATE="2018-09-25"MODULES="java.base java.compiler java.datatransfer java.xml java.prefs java.desktop
2020-08-09 15:29:47 268
原创 docker 安装 mysql8
docker 安装 mysql8安装命令docker run \-p 3306:3306 \--name mysql \--restart=always \-e TZ="Asia/Shanghai" \-v /opt/dockers/mysql/log:/var/log/mysql \-v /opt/dockers/mysql/conf:/etc/mysql \-v /opt/dockers/mysql/data:/var/lib/mysql \-e MYSQL_ROOT_PASSWOR
2020-08-09 15:28:17 119
原创 maven 插件如何加载项目中的类
maven 插件如何加载项目中的类有不少插件希望扫描所在项目的类,如利用反射加载项目中的类,但如果不看官方文档直接开发,最初特别容易掉入一个深坑——ClassNotFoundException。因为不了解Maven插件的类加载器机制,maven 插件里是没法直接加载项目中的类,当且仅当以特殊方式编码才能加载。获取项目编译环境类路径在插件中如何获取项目类路径呢?官方插件(maven-compiler-plugin)为我们做出了示例,源码:Apache Maven Compiler Plugin 源码
2020-07-29 03:07:11 2138
原创 git误提交密码到开源仓库(git大佬必会技能)
git误提交密码解决方案当我们不小心提交了密码且推送到远程仓库后,这时如果只是删除密钥再提交,其他人还可以通过提交记录看到你的密码,这时有以下两个方法把多喝提交记录合并为一个,并推送到远程分支(适合对git有一定了解的,适合修改了少量文件,很在乎代码的修改是几次提交)自由的决定如何修改提交记录但可能需要解决冲突,尤其是最近几个commit提交了大量文件时会很繁琐利用 git reset --hard 强制回到提交之前的最后一个 commit , 先强制推送到远程仓库(删除提交记录),再提交
2020-07-27 02:23:13 2072
原创 linux 发布jar到maven中央仓库
linux 发布jar到maven中央仓库linux 中发布与 windows 中发布不同点仅在于公钥证书生成方式不同,本文着重讲解该部分。前戏注册 sonatype 账号提交 issue验证通过。这里我们假设你已经在做过这些步骤了(如在windows中发布过,但没在linux中发布过),故暂不展开,详细步骤参考这里。安装 gnupg安装 gnupg 用来加密传输和签名,windows 则使用 Gpg4winyum install -y gnupg创建自己的公钥信息与window
2020-07-22 01:39:44 417 2
原创 只有一个jar如何发布到中央仓库
maven将jar发布到中央仓库发布一个已有的 jar可以只有 jar,没有 pom.xml,使用以下命令发布mvn deploy:deploy-file -DgroupId=cn.itlym -DartifactId=shoulder-lombok -Dversion=0.0.1 -Dpackaging=jar -Dfile=shoulder-lombok-0.0.1.jar -Durl=https://oss.sonatype.org/service/local/staging/deploy/m
2020-07-21 01:09:56 304
原创 解决 Spring Cloud 中 context has been closed already
context has been closed already 解决方案报错代码有这样一段代码,在运行中可能会发生 context has been closed already 错误,且一旦发生,以后每次运行到这必定出错。@Componentpublic class SpringContextUtil implements ApplicationContextAware { private static ApplicationContext context = null; @O
2020-07-17 20:05:10 14681 7
转载 Srping源码学习
Spring源码解析之ApplicationContext,主要内容是介绍Spring上下文初始化时的一些主要步骤Spring源码解析之默认标签的解析,主要内容是<bean/>、<beans/>、<import/>、<alias/>四个默认标签的解析过程Spring源码解析之自定义标签的解析,主要内容是除了默认标签外其他自定义标签的解析过程Sp...
2020-07-14 19:06:57 76
原创 Hotspot 源码入门
准备了解一下 JVM 源码,大概整理了下目录轻量级版本├─agent Serviceability Agent的客户端实现├─make 用来build出HotSpot的各种配置文件├─src HotSpot VM的源代码│...
2020-07-14 19:06:21 632
原创 Prometheus Grafana mysqld-exporter监控 mysql
Prometheus Grafana mysqld-exporter监控 mysql1. 安装 Prometheus Grafana略2. 安装 mysqld-exporter以 docker 为例
2020-07-06 16:32:30 459
原创 grafana node exporter监控主机状态可视化
Grafana 官方和社区对已经做好了常用的 DashBoard,可以访问 https://grafana.com/grafana/dashboards 进行查询:选择下载最多的,点击进去,查看id,我这里选了8919然后打开grafana import摘自 https://blog.csdn.net/u010562966/article/details/99621760...
2020-07-06 11:07:30 911
原创 mvn jar包安装到本地、上传到远程仓库
本地安装mvn install:install-file \-DgroupId=com.xinyartech \-DartifactId=easyexcel \-Dversion=1.1.1 \-Dpackaging=jar \-Dfile=/root/shell/easyexcel-1.1.1.jar -DgroupId groupId-DartifactId artifactId-Dversion version-Dpackaging 包类型 jar 或 war-Dclas
2020-07-02 19:53:23 754
原创 yapi内网部署
直接部署https://hellosean1025.github.io/yapi/devops/index.htmldocker 部署https://github.com/fjc0k/docker-YApiIDEA 插件 Api Generator:https://github.com/Forgus/api-generator
2020-07-01 16:08:08 283
原创 CentOS7 创建虚拟内存
linux创建虚拟内存有时候1. 初始化交换文件dd if=/dev/zero of=/dev/mySwap bs=4096 count=1024000dd 命令介绍:按块拷贝磁盘文件中的数据,if(input file)输入文件,of(output file)输出文件,bs(block size)块大小,这里使用 4k 对齐;cout 次数,我们打算分配4G的空间,因此使用 4G/4096 = 1024000查看更多帮助,使用:man dd这里用 0 初始化一个每块4k,总大小为4G的文
2020-06-30 15:50:11 415
原创 elastic search ik 词库热更新
实现 elastic search ik 词库热更新,修改后发送钉钉提醒ik 是 elastic search 一个常用的分词插件,自带了一些中文得词库,但在特定领域,这些词库远远不能满足我们的名称,比如有些词语:品牌名称、游戏人物名称、剧情名称、产品种类等,在特定领域时我们需要添加一定的领域词语。ik配置文件解析进入 ik 插件的 config 目录,发现有个文件IKAnalyzer.cfg.xml,这个文件就是ik的配置文件,内容如下:<?xml version="1.0" encodin
2020-06-29 20:11:32 752
原创 git工程化 自动生成changeLog 发布版本
git log 生成 changeLog在进行git仓库的自动化管理时,发布前往往需要CI服务器自动生成 CHANGELOG.MD ,本文介绍如何自动changeLog.md自动生成的思路。生成流程多次 commit -m “xxx”使用命令 git log > log 生成提交记录 log 文件处理 log 文件提取关心的信息, 然后转成 CHANGELOG.MD 文件.思路:(log文件中包含了所有的commit信息, 包括id, author, date以及comment等)前
2020-06-21 15:30:36 7243
原创 .gitattributes 作用详细讲解(git大佬必会技能)
git 的隐藏文件 .gitattributes本文以 Spring 在 github 中的代码为例,介绍 git 的几个隐藏文件的作用、写法、含义。文章目录git 的隐藏文件 `.gitattributes``.gitattributes`介绍.gitattributes 文件中可以定义的属性texteoldiffdiffer 规则`.gitattributes` 示例示例1示例2`.gitattributes`生效顺序使用为新的Git库设置统一的.gitattributes文件:为已有Git库设置统
2020-06-21 14:02:13 34751 2
原创 docker 创建maven 镜像
创建maven docker镜像本文将介绍如何创建自己的 maven docker 镜像。由于官方的镜像默认使用中央仓库,在国内构建时会比较慢,虽然缓存是一种策略,但改为国内仓库何尝不是一种更好的方式。准备材料vim settings.xml按 a 进入编辑模式,并把以下内容复制进 settings.xml<?xml version="1.0" encoding="UTF-8"?><settings xmlns="http://maven.apache.org/SETTING
2020-06-19 02:21:57 725
转载 Maven命令参数介绍
mvn命令格式:mvn [options] [<goal(s)>] [<phase(s)>] 其中:-U和 [options] 和 [goals] 位置没有关系mvn命令参数:mvn -v --version显示版本信息; mvn -V --show-version 显示版本信息后继续执行Maven其他目标; mvn -h --help 显示帮助信息; mvn -e --errors 控制Maven的日志级别,产生执行错误相关消息...
2020-06-18 13:57:34 1313
数据库表导出为word表格 自动生成数据库文档
2019-04-03
数据库表 导出word表格 自动生成数据库文档
2019-04-03
基于 cropper 图片上传pc、移动端均可(支持旋转、拖拽、剪裁、缩略图、高亮等)
2019-03-29
自动生成实体类的Controller, Service, ServiceImpl, Repository
2019-03-03
web项目里用到的工具类(正则校验、图片验证码、json解析、订单号生成)
2018-11-04
Spring+SpringMVC+MyBatis框架
2018-11-04
自动生成实体类和mybatis的mapper和xml
2018-11-04
一笔画完_任意关破解_全自动通关
2018-11-03
SQL学习指南
2018-06-05
王者荣耀官网的UI模型
2018-06-05
网上订餐,网购数据库设计
2018-06-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人