一灰灰blog_社区达人页

个人头像照片
一灰灰blog
已加入开发者社区2023

勋章 更多

个人头像照片
专家博主
专家博主
个人头像照片
星级博主
星级博主
个人头像照片
技术博主
技术博主
个人头像照片
初入江湖
初入江湖

成就

已发布229篇文章
1条评论
已回答0个问题
0条评论
已发布0个视频
github地址

我关注的人 更多

技术能力

兴趣领域
  • Java
  • 数据库
擅长领域
技术认证

暂无个人介绍

暂无精选文章
暂无更多信息

2022年05月

  • 05.25 20:13:44
    发表了文章 2022-05-25 20:13:44

    Guava HashMultimap使用及注意事项

    guava基本上可以说是java开发项目中,大概率会引入的包,今天介绍的主角是一个特殊的容器 – HashMultmap,可以简单的将它的数据结构理解为Map<K, Set<V>>
  • 05.19 18:23:14
    发表了文章 2022-05-19 18:23:14

    如何用Java实现位图转矢量图?

    通过前面几篇图片转字符、灰度图的文章介绍之后,接下来我们再来看一个有意思的东西,基于前文的基础,实现位图转矢量图的功能
  • 05.19 18:20:37
    发表了文章 2022-05-19 18:20:37

    ElasticSearch不支持分组查询么?

    在使用es进行组合查询的时候,遇到一个非常有意思的场景,特此记录一下 某些场景下,直接针对某个Field进行分组查询,居然无法返回结果,会给出类似Text fields are not optimised for operations that require per-document field data like aggregations and sorting, so these operations are disabled by default的提示信息,接下来看一下这个问题是个什么情况,以及如何解决
  • 05.19 18:18:31
    发表了文章 2022-05-19 18:18:31

    Java实现GIF图转字符动图实例demo

    上一篇文章介绍了静态图转字符的实现demo;接下来也该是动态图转字符的demo了 从前面几篇文章的学习过程中,要想实现这个功能就属于信手拈来了 单张图转字符完成之后,动图无非是每一张静态图都转一遍,保存最后的结果即可 这里我们就不介绍基础的JDK写法了(感兴趣的可以到前面几篇文章中获取),我们直接进入进阶的玩法 接下来我们借助开源项目 github.com/liuyueyi/qu… 来迅速的实现输出Gif字符图
  • 05.19 18:16:13
    发表了文章 2022-05-19 18:16:13

    Java实现图片转字符输出示例demo

    前面几篇博文介绍了使用jdk来对图片做一些有意思的转换,接下来我们再介绍一个有意思的玩法,直接根据图片,输出一个二维字符数组,实现用字符来实现绘画的场景 各位小伙伴可能都有看到过一些有趣的注释,比如大佛,美女之类的,通关本文,相信你也很可以很简单的实现类似的场景 作者:一灰灰 链接:https://juejin.cn/post/7033040253673799711 来源:稀土掘金 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
  • 05.19 18:14:13
    发表了文章 2022-05-19 18:14:13

    Java实现Gif图转字符动图

    前面介绍了两篇基于jdk实现图片灰度处理、转字符图片的操作,接下来我们在将之前的能力扩展一下,支持将一个gif图灰度化或者转gif字符图 本文的实现主要在前面两篇文章的基础上来实现,推荐没有看过的小伙伴也可以瞅一眼
  • 05.19 18:12:06
    发表了文章 2022-05-19 18:12:06

    SpringBoot系列之Prometheus自定义埋点姿势二

    关于Prometheus的自定义埋点,前一篇博文已经介绍了,为啥这里又来一次? 看过前文的小伙伴可能会知道,之前采用的simpleclient包定义的几个metric来实现的,实际上有更简单方便的姿势,那就是直接借助MeterRegistry来创建Metric来实现数据采集即可
  • 05.19 18:09:59
    发表了文章 2022-05-19 18:09:59

    【Spring系列】SpringContext.getBean()方法调用导致NPE?

    在实际的业务开发中,为了方便获取Spring容器中的Bean对象,一个常见的case就是创建一个SpringUtil类,内部持有SpringContext上下文,然后提供一个静态的方式获取bean对象,然而这种使用姿势,一个不小心可能导致npe 今天我们来看一下这个场景
  • 05.19 18:07:26
    发表了文章 2022-05-19 18:07:26

    Java实现图片转字符图片示例demo

    前面介绍了一篇java实现图片灰度化处理的小demo,接下来再介绍一个有意思的东西,将一个图片转换成字符图片 借助前面图片灰度化处理的知识点,若我们希望将一张图片转成字符图片,同样可以遍历每个像素点,然后将像素点由具体的字符来替换,从而实现字符化处理 基于上面这个思路,具体的实现就很清晰了
  • 05.19 18:05:32
    发表了文章 2022-05-19 18:05:32

    SpringBoot系列之拦截器注入Bean的几种姿势

    在SpringBoot中,通过实现WebMvcConfigurer的addInterceptors方法来注册拦截器,那么当我们的拦截器中希望使用Bean时,可以怎么整?
  • 05.19 18:03:35
    发表了文章 2022-05-19 18:03:35

    SpringBoot + thymeleaf foreach踩坑记录

    话说自从前后端分离之后,前后端放在一起的场景就很少了,最近写个简单的后台,突然踩坑了,使用themeleaf模板渲染时,发现th:each来遍历生成表单数据,一直抛异常,提示Property or field 'xxx' cannot be found on null 接下来看一下这个问题到底是个什么情况
  • 05.19 18:01:38
    发表了文章 2022-05-19 18:01:38

    Java也可以非常简单的实现图片灰度化

    本文通过一个简单的实例,演示如何使用java来实现图片灰度化处理,主要借助下面两种策略来处理颜色
  • 05.19 17:59:49
    发表了文章 2022-05-19 17:59:49

    Js实现粘贴板中写入text

    很久不写前端代码了,最近整一个chrome插件时,希望将数据保存到粘贴版,试了好几种方式,结果发现都不太好使,直接基于输入框来实现赋值粘贴可行,若直接往粘贴板中写数据却没试出来;作为一个前端菜鸟就只能猥琐一点的实现了
  • 05.19 17:58:06
    发表了文章 2022-05-19 17:58:06

    Guava之Supplier缓存使用示例

    使用guava作内存缓存,大多数小伙伴应该都使用过,通过CacheBuilder创建LoadingCache一个kv格式的缓存,如果我们需要缓存的只是一个value呢? 针对这种场景,接下来介绍一种基于Supplier来实现的缓存方式
  • 05.19 17:57:03
    发表了文章 2022-05-19 17:57:03

    SpringBoot系列之Prometheus自定义埋点上报

    之前介绍了一篇SpringBoot集成Prometheus实现数据上报的博文,在前面一篇博文中,更多的是一个SpringBoot应用如何最小成本的接入Prometheus,并结合Grafana配置一个完整的应用监控大盘 有看过前文的小伙伴可能知晓,SpringBoot接入Prometheus之后,基本上不用做额外的开发,就已经实现了我们关心的JVM情况、GC情况、HTTP调用请求等信息,然而在实际的业务开发过程中,我们总会遇到一些需要手动上报的场景,那么我们可以怎么处理呢?
  • 05.19 17:54:32
    发表了文章 2022-05-19 17:54:32

    封装一个根据路径获取文件资源的工具类

    通常我们最多的场景是从本地资源中读取文件,这个时候我们经常需要注意的是相对路径、绝对路径问题; 除了从本地获取文件之外,从网络中获取文件资源(如图片)也属于相对常见的场景,接下来我们封装一个工具类,可以支持以上各种类型的数据读取
  • 05.19 17:52:29
    发表了文章 2022-05-19 17:52:29

    mysql索引过长Specialed key was too long问题记录

    在创建要给表的时候遇到一个有意思的问题,提示Specified key was too long; max key length is 767 bytes,从描述上来看,是Key太长,超过了指定的 767字节限制
  • 05.19 17:51:23
    发表了文章 2022-05-19 17:51:23

    Mybatis之ParameterMap、ParameterType传参类型指定使用姿势

    在使用Mybatis开发时,借助xml来写具体的sql,再写传参类型或者返回结果类型时,通常会与ParameterType, ParameterMap, ResultMap, ResultType这四个打交到,那么这个Type与Map到底怎么区别,什么时候要指定类型,什么时候又可以不指定呢?
  • 05.19 17:49:31
    发表了文章 2022-05-19 17:49:31

    Gson流式反序列化JsonReader

    前面介绍了一片Gson的流式序列化,接下来我们看一下流式的反序列化,主要借助JsonReader来实现
  • 05.19 17:48:25
    发表了文章 2022-05-19 17:48:25

    实战小技巧20:jar包执行传参使用小结

    虽说我们现在大多不太直接使用jar包运行方式,目前比较主流的是将自己的服务丢在某个容器中(如tomcat,jetty等)运行,比如我之前所属的电商公司,就是将项目打包为war包,丢到tomcat容器中运行的 在使用SpringBoot时,可能会出现直接打包一个可执行的jar,然后运行,这种时候,通过java命令执行时,时可以传参的,那么问题来了,main方法可以如何优雅的解析这些传参呢?
  • 05.19 17:46:13
    发表了文章 2022-05-19 17:46:13

    实战小技巧19:Map转换的几种方式

    在日常开发过程中,从一个Map转换为另外一个Map属于基本操作了,那么我们一般怎么去实现这种场景呢?有什么更简洁省事的方法么?
  • 05.19 17:44:47
    发表了文章 2022-05-19 17:44:47

    实战小技巧18:BigDecimal除法使用不当导致精度问题

    在使用BigDecimal的除法时,遇到一个鬼畜的问题,本以为的精度计算,结果使用返回0,当然最终发现还是使用姿势不对导致的,因此记录一下,避免后面重蹈覆辙
  • 05.19 17:42:08
    发表了文章 2022-05-19 17:42:08

    GuavaCache返回Null的注意事项

    Guava在实际的Java后端项目中应用的场景还是比较多的,比如限流,缓存,容器操作之类的,有挺多实用的工具类,这里记录一下,在使用GuavaCache,返回null的一个问题
  • 05.19 17:41:09
    发表了文章 2022-05-19 17:41:09

    Gson流式序列化JsonWriter

    通常我们序列化使用时,是直接使用Gson将整个对象转换为Json串,如果有看过gson源码的小伙伴会发现其内部实际上是基于JsonWriter来实现流式序列化的 接下来我们来看一下JsonWriter的使用姿势
  • 05.19 17:40:11
    发表了文章 2022-05-19 17:40:11

    Gson序列化输出Ignore策略 -- Map篇

    前面介绍了几种gson在序列化时,忽略某些字段数输出的方式,然而当时的实例中,需要序列化的对象都是Java bean对象,如果我们需要序列化的是Map对象,又可以怎么处理呢? 接下来我们通过实际的case,来演示如何实现Map忽略指定key的功能
  • 05.19 17:39:06
    发表了文章 2022-05-19 17:39:06

    Java Email邮件阿里云发不了怎么处理

    最近升级了一下SpringBoot的版本,结果发现之前工作的好好的邮件突然罢工了,罢工的原因还不止一个,接下来记录一下解决方案
  • 05.19 17:37:49
    发表了文章 2022-05-19 17:37:49

    Grafana+prometheus变量支持include all设置方法

    使用Prometheus进行采样收集,借助Grafana进行大盘展示,可以说是系统监控层面的基本操作了,在grafana的大盘配置时,借助变量的灵活性,来展示不同维度的数据表盘比较常见 现在有这样一个场景,一个应用有多台机器,我们设置一个变量 instance 来表示具体的实例ip,支持通过ip来选择不同机器的监控,怎么操作?
  • 05.19 17:35:53
    发表了文章 2022-05-19 17:35:53

    Mybatis传参类型如何确定?

    最近有小伙伴在讨论#{}与${}的区别时,有提到#{}是用字符串进行替换,就我个人的理解,它的主要作用是占位,最终替换的结果并不一定是字符串方式,比如我们传参类型是整形时,最终拼接的sql,传参讲道理也应该是整形,而不是字符串的方式 接下来我们来看一下,mapper接口中不同的参数类型,最终拼接sql中是如何进行替换的
  • 05.19 17:33:26
    发表了文章 2022-05-19 17:33:26

    Gson之序列化指定忽略字段的三种写法

    在我们日常使用json序列化框架过程中,经常会遇到在输出json字符串时,忽略某些字段,那么在Gson框架中,要想实现这种方式,可以怎么处理呢? 本文介绍几种常见的姿势
  • 05.19 17:31:59
    发表了文章 2022-05-19 17:31:59

    一个简单的配置实现es全文检索支持

    在es的使用过程中,全文搜索属于一个常见的场景,特别是当我们将es作为日志存储检索来使用时,根据关键字查询对应的日志信息,可以怎么处理呢?
  • 05.19 17:30:37
    发表了文章 2022-05-19 17:30:37

    三分钟速记知识点:域名解析命令

    三分钟速记知识点:域名解析命令
  • 05.19 17:29:26
    发表了文章 2022-05-19 17:29:26

    ZooKeeper安装及初体验

    ZooKeeper安装以及基本功能体验
  • 05.19 17:28:14
    发表了文章 2022-05-19 17:28:14

    构建一个创建Map的工具类来辅助理解可变传参

    虽说java作为编译语言,但是它本身也提供了很多运行时能力,今天介绍一个非常基础的知识点,可变参数传递 在日常的开发过程中,创建Map对象还是比较常见的,现在我希望写一个工具类,可以非常简单创建并初始化Map对象 因此我们可以实现一个MapUtil工具类,来支持这个场景
  • 05.19 16:06:48
    发表了文章 2022-05-19 16:06:48

    git ammend知识点小结

    在实际使用git的过程中,难免会存在手误的场景,比如 git commit之后,发现提交的描述信息不太合适,想调整一下;或者发现本地有多个零碎未提交的commit,想合并成一个提交... 当我们出现这些需求场景的时候,可以考虑使用git commit --amend来实现
  • 05.19 15:54:28
    发表了文章 2022-05-19 15:54:28

    Java实现获取本机Ip工具类

    获取本机Ip算是比较常见的一个需求场景了,比如业务报警,可能就会带上出问题的机器IP,方便直接上去看日志定位问题,那么问题来了,如何获取机器IP呢?
  • 05.19 15:52:23
    发表了文章 2022-05-19 15:52:23

    Mybatis之转义符的使用姿势

    在 mybatis 的 xml 文件中直接写 sql 比较方便简洁,但是需要注意的是,在 xml 文件中,经常会遇到一些需要转义的场景,比如查询 id < xxx的数据,这个小于号就不能直接写在 sql 中,接下来我们将看一下,mybatis 中的有哪些转义符,可以怎么处理转义问题
  • 05.19 15:50:49
    发表了文章 2022-05-19 15:50:49

    git diff ^M不同操作系统下换行符统一的小知识

    不同操作系统下的换行不一致,当一个项目的开发者分别再linux/mac/win下做了代码提交改动之后,使用git diff命令时,可能会发现,即便啥也没改,当时有很多变动,显示^M的差别 主要原因就是换行的问题 解决这个问题的一个办法就是统一换行 今天介绍的一个小技巧就是通过设置全局的换行来实现多操作系统的换行符统一
  • 05.19 15:48:11
    发表了文章 2022-05-19 15:48:11

    Mybatis接口参数与xml占位符的几种映射关系介绍

    在 mybatis 的日常开发中,mapper 接口中定义的参数如何与 xml 中的参数进行映射呢?除了我们常用的@Param注解之外,其他的方式是怎样的呢?
  • 05.19 15:45:11
    发表了文章 2022-05-19 15:45:11

    中秋到了,是时候给你的二维码加个月饼了

    又一年的中秋将至,要怎么样才能蹭一波它的热度呢?作为一个coder,是不是可以用代码写首诗?想法是好,可惜难度有点大,那么就简单点,给自己的二维码上,加个月饼吧
  • 05.19 15:40:44
    发表了文章 2022-05-19 15:40:44

    Mysql 字符集不一致导致连表异常

    做一个简单的如下的连表查询,居然直接提示错误,居然是字符集不一致的问题,本文记录一下mysql的字符集类型,以及下面这个问题的解决方案
  • 05.19 15:38:28
    发表了文章 2022-05-19 15:38:28

    SpringBoot + Mybatis系列之CURD基本使用姿势-注解篇

    上面一篇博文介绍了mybatis + xml配置文件的使用方式,在上文中介绍到,xml文件是可以省略掉的,直接使用java注解来实现CURD,接下来我们看一下,如何使用注解来实现等同的效果
  • 05.19 14:04:01
    发表了文章 2022-05-19 14:04:01

    实战小技巧17:随机数生成怎么选

    随机数生成,java中有一个专门的Random类来实现,除此之外,使用Math.random的也比较多,接下来我们简单学习下,随机数的使用姿势
  • 05.19 13:58:32
    发表了文章 2022-05-19 13:58:32

    实战小技巧16:Properties配置文件自动装载JavaBean

    SpringBoot的配置自动装载,使用起来还是很舒爽的,可以非常简单的将properties配置文件的内容,填充到Java bean对象中,如果我们现在是一个脱离于Springboot框架的项目,想实现上面这个功能,可以怎么来做呢?
  • 05.19 13:57:17
    发表了文章 2022-05-19 13:57:17

    实战小技巧15:如何判断类为基础类型or基础类型的包装类

    判断一个类是否为基础类型属于常规操作了,一般我们遇到这种case,要怎么处理呢? 一个一个的if/else判断? 还是其他的操作姿势?
  • 05.19 13:56:09
    发表了文章 2022-05-19 13:56:09

    实战小技巧14:配置文件Properties

    properties配置文件,相信各位小伙伴都不会太陌生,常用Spring的可能会经常看到它,虽说现在更推荐的是使用Yaml配置文件,但是properties配置文件的使用频率也不低 在jdk中有一个直接关连的类Properties,接下来我们来看一下它的用法
  • 05.19 13:54:54
    发表了文章 2022-05-19 13:54:54

    实战小技巧13:进制转换很简单

    进制转换,属于基本技能了,在java中要实现进制转换很简单,可以非常简单的实现,接下来我们来看下它的使用姿势
  • 05.19 13:53:37
    发表了文章 2022-05-19 13:53:37

    SpringBoot + Mybatis系列之传参作为字段/表名时的注意事项

    今天遇到一个非常有意思的事情,一个小伙伴反馈,同样的 sql,为啥直接通过 mysql 终端执行的结果,和 mybatis 的执行结果不一致,感觉有点鬼畜;然后看了一下,发现这是个比较典型的问题,#{}与${}的使用区别 接下来我们看一下这个问题,顺带也重新学习一下它们两的区别
  • 05.19 13:51:05
    发表了文章 2022-05-19 13:51:05

    实战小技巧12: 数字格式化

    数字的格式化场景,更多的是在日志输出、金额计算相关的领域中会用到,平常我们可能更多使用String.format来格式化,但是请注意,数字格式化是有一个DecimalFormat,专门来针对数字进行格式化 今天我们的知识点就是DecimalFormat来实现数字格式化
  • 05.19 13:48:59
    发表了文章 2022-05-19 13:48:59

    动态编译生成Java类

    动态创建bean,前面一篇介绍了通过cglib来创建的方式,虽然实现了动态创建java bean,但是有一个问题,java bean中的field name和我们预期的不太一致 接下来我们介绍一种直接通过拼接java代码,然后再将其编译成class并加载,从而实现动态类的创建
  • 发表了文章 2022-05-25

    Guava HashMultimap使用及注意事项

  • 发表了文章 2022-05-19

    如何用Java实现位图转矢量图?

  • 发表了文章 2022-05-19

    ElasticSearch不支持分组查询么?

  • 发表了文章 2022-05-19

    Java实现GIF图转字符动图实例demo

  • 发表了文章 2022-05-19

    Java实现图片转字符输出示例demo

  • 发表了文章 2022-05-19

    Java实现Gif图转字符动图

  • 发表了文章 2022-05-19

    SpringBoot系列之Prometheus自定义埋点姿势二

  • 发表了文章 2022-05-19

    【Spring系列】SpringContext.getBean()方法调用导致NPE?

  • 发表了文章 2022-05-19

    Java实现图片转字符图片示例demo

  • 发表了文章 2022-05-19

    SpringBoot系列之拦截器注入Bean的几种姿势

  • 发表了文章 2022-05-19

    SpringBoot + thymeleaf foreach踩坑记录

  • 发表了文章 2022-05-19

    Java也可以非常简单的实现图片灰度化

  • 发表了文章 2022-05-19

    Js实现粘贴板中写入text

  • 发表了文章 2022-05-19

    Guava之Supplier缓存使用示例

  • 发表了文章 2022-05-19

    SpringBoot系列之Prometheus自定义埋点上报

  • 发表了文章 2022-05-19

    封装一个根据路径获取文件资源的工具类

  • 发表了文章 2022-05-19

    mysql索引过长Specialed key was too long问题记录

  • 发表了文章 2022-05-19

    Mybatis之ParameterMap、ParameterType传参类型指定使用姿势

  • 发表了文章 2022-05-19

    Gson流式反序列化JsonReader

  • 发表了文章 2022-05-19

    实战小技巧20:jar包执行传参使用小结

正在加载, 请稍后...
滑动查看更多
正在加载, 请稍后...
暂无更多信息
正在加载, 请稍后...
暂无更多信息