聊聊PBE算法

2023-08-31
阅读 2 分钟
2.7k
PBE即Password Based Encryption,基于口令的加密,它是一种组合算法,即一般是哈希+对称算法,比如PBEWithMD5AndDES,就是用MD5做哈希,用DES做加解密,而其密钥则是口令+salt基于哈希函数计算而来

聊聊mybatis的Interceptor机制

2023-08-30
阅读 11 分钟
1.2k
Interceptor定义了intercept方法,其参数为Invocation类型,同时默认提供了plugin方法,通过Plugin.wrap(target, this)进行包装

mybatis的MappedStatement是线程安全的吗

2023-08-29
阅读 8 分钟
749
序本文主要研究一下mybatis MappedStatementMappedStatementorg/apache/ibatis/mapping/MappedStatement.java {代码...} MappedStatement定义了SqlSourceMappedStatement.Builder {代码...} MappedStatement定义了一个Builder用于构造MappedStatementMapperBuilderAssistantorg/apache/ibatis/builder/MapperBuilderAssi...

聊聊mybatis的ParamNameResolver

2023-08-28
阅读 3 分钟
1.1k
在mybatis的interceptor获取MapperMethod.ParamMap这种参数类型时,经常会多出param1,param2,collection,list,array这些参数,这些不是接口自己定义的,而是ParamNameResolver自动添加的

聊聊mybatis-plus的sql加载顺序

2023-08-27
阅读 16 分钟
1.6k
com/baomidou/mybatisplus/extension/spring/MybatisSqlSessionFactoryBean.java

聊聊mybatis-plus的SafetyEncryptProcessor

2023-08-26
阅读 3 分钟
1.4k
mybatis-plus-boot-starter/src/main/java/com/baomidou/mybatisplus/autoconfigure/SafetyEncryptProcessor.java

聊聊springboot的启动事件

2023-08-25
阅读 9 分钟
1.2k
SpringApplicationEvent继承了ApplicationEvent,它有几个子类分表是ApplicationStartingEvent、ApplicationEnvironmentPreparedEvent、ApplicationContextInitializedEvent、ApplicationPreparedEvent、ApplicationStartedEvent、ApplicationReadyEvent,期间有异常则抛出ApplicationFailedEvent

聊聊springboot的EnvironmentPostProcessor

2023-08-24
阅读 6 分钟
1.6k
springboot提供了EnvironmentPostProcessor接口,该接口有postProcessEnvironment方法,其中envrionment参数类型为ConfigurableEnvironment,即应用可以通过实现这个接口进行env环境变量的操作

聊聊如何解析pom文件

2023-08-23
阅读 3 分钟
1.5k
序本文主要研究一下如何解析pom文件maven-modelmaven提供了maven-model的类库可以直接解析 {代码...} 使用 {代码...} 使用MavenXpp3Reader可以直接读取pom文件,之后就可以得到ModelModelmaven-model-3.9.4-sources.jar!/org/apache/maven/model/Model.java {代码...} Model继承了ModelBaseModelBasemaven-model-3.9.4-s...

聊聊springboot的Customizer

2023-08-22
阅读 5 分钟
1.3k
序本文主要研究一下springboot的CustomizerTaskExecutorCustomizer {代码...} 之后再构造的时候通过ObjectProvider获取即可 {代码...} TaskSchedulerCustomizer {代码...} RestTemplateCustomizer {代码...} 小结springboot提供了很多Customizer接口方便用户自行扩展,非常值得设计组件的时候使用

聊聊TaskExecutorMetricsAutoConfiguration

2023-08-21
阅读 8 分钟
1.4k
springboot2.6.0版本提供了TaskExecutorMetricsAutoConfiguration,可以自动给线程池加上metrics

聊聊java的java.security.egd

2023-08-18
阅读 6 分钟
1.6k
/Library/Java/JavaVirtualMachines/temurin-8.jdk/Contents/Home/src.zip!/sun/security/provider/SunEntries.java

聊聊springboot tomcat的maxHttpFormPostSize

2023-08-17
阅读 16 分钟
1.9k
tomcat-embed-core-9.0.37-sources.jar!/org/apache/catalina/connector/Request.java

聊聊elasticsearch的data-streams

2023-08-06
阅读 4 分钟
1.4k
首先data streams是由一个或者多个自动生成的隐藏索引组成的,它的格式为.ds-<data-stream>-<yyyy.MM.dd>-<generation>示例.ds-web-server-logs-2099.03.07-000034,generation是一个6位的数字,默认从000001开始

使用filebeat收集并解析springboot日志

2023-08-05
阅读 4 分钟
2.2k
序本文主要研究一下如何使用filebeat收集并解析springboot日志安装在官网的下载页面filebeat/downloads提供了一些特定平台的安装包,不过对应linux最为省事的安装方式就是直接下载x86_64压缩包,然后解压即可 {代码...} 解析filebat.yml主要有input和output组成json比如对于json格式的日志,其input示例如下 {代码...} ...

聊聊被AI坑到的经历

2023-08-04
阅读 3 分钟
1.4k
序本文主要介绍一下被AI坑到的经历经历1之前写聊聊如何自定义parallelStream的线程池这篇文章的时候,就被坑了一下。起初我是搜索了一下,发现需要类似如下使用: {代码...} 这种方式总感觉不太优雅,而且也不太好直观看出来实现原理,在submit里头用parallel就可以了?后来我用某gpt问了一下,给了如下答案,心想这个靠...

使用kind在mac本地搭建k8s及istio

2023-07-31
阅读 4 分钟
1.9k
之前使用multipass装ubuntu,然后再用microk8s搭建k8s,这会直接用orbstack及kind在本地搭建k8s及istio

jenkinsfile小试牛刀

2023-07-29
阅读 2 分钟
523
这里定义了Build,它先是git拉取代码,然后执行mvn进行编译,最后在post部分在状态为success时使用junit显示测试报告,并归档jar包

istio流量路由小试牛刀

2023-07-27
阅读 22 分钟
1.3k
序本文主要演示一下如何在mac m2安装istio,及基于header的流量路由。安装istio下载[链接]解压,并将istio-1.18.2/bin添加到PATH中 {代码...} 给default命名空间注入istio {代码...} 部署bookinfo示例 {代码...} 访问应用 {代码...} 开启网关 {代码...} 验证配置 {代码...} 确定入站 IP 和端口 {代码...} 这里没有extern...

使用diagrams画架构图

2023-07-23
阅读 6 分钟
1.9k
最近发现一个画架构图的神器diagrams,提供了很多云厂商及开源组件的图标,相比于C4-PlantUML显得更专业一点。之前写过技术文档画图工具箱,diagrams属于diagram as code工具派别。

使用k8s的api获取服务endpoint信息

2023-07-22
阅读 6 分钟
960
序本文主要研究一下如何使用k8s的api来获取服务endpoint信息mac m2安装k8s安装multipass访问[链接],下载安装创建实例 {代码...} 安装microk8s {代码...} 配置alias(~/.bash_aliases) {代码...} 查看是否ready {代码...} 不ready的话,大概率是pause镜像拉取不到,使用pullk8s来修正一下,稍微改动下 {代码...} 然后执行...

聊聊如何自定义parallelStream的线程池

2023-07-08
阅读 5 分钟
6.9k
org/springframework/scheduling/concurrent/ForkJoinPoolFactoryBean.java

mac使用podman替代docker

2023-06-01
阅读 1 分钟
1.1k
序本文主要记录一下使用podman替代docker的过程安装podman {代码...} 或者去[链接]下载对应的pkgpodman compose {代码...} 或者 {代码...} 使用machine {代码...} init添加-v来挂载宿主机的文件夹到machinecompose {代码...} 小结使用podman、podman machine、podman-compose基本可以无缝替代docker、docker-machine、do...

聊聊rocketmq的订阅关系

2023-05-08
阅读 12 分钟
5.8k
org/apache/rocketmq/client/impl/consumer/DefaultMQPushConsumerImpl.java

使用multipass在mac搭建linux开发环境

2023-05-07
阅读 3 分钟
1.4k
之所以写这篇文章,主要是把mac从10.x版本升级到了12.6.5版本之后,原来的virtualbox用不了了,装了最新版的之后,docker-machine创建一直报错,无奈之下,只好转战linux。

cache2k:Guava Cache及Caffeine之外的新选择

2023-05-06
阅读 5 分钟
5.6k
JCache规范不支持null,所以cache2k默认也不支持,不过可以通过permitNullValues(true)来开启,这样子缓存就可以存储null值

聊聊Spring Boot几个版本的区别

2023-05-05
阅读 4 分钟
4.3k
Spring Boot 2.0在2018年2月28日发布,Spring Boot 2.7是2.x的最后一个发布版本,该版本的开源将于2023年11月停止支持,商业支持可延长到2025年2月

Java20的新特性

2023-03-25
阅读 9 分钟
4.1k
Java语言特性系列Java5的新特性Java6的新特性Java7的新特性Java8的新特性Java9的新特性Java10的新特性Java11的新特性Java12的新特性Java13的新特性Java14的新特性Java15的新特性Java16的新特性Java17的新特性Java18的新特性Java19的新特性Java20的新特性Java21的新特性Java22的新特性Java23的新特性Java24的新特性序本文...

2022年终总结

2022-12-31
阅读 1 分钟
1.6k
最近两年开始陷入颓废中,博客也写的越来越少了。究其原因,主要还是陷入了职业倦怠期,最近一次跳槽感觉颇为失败,但是碍于给的薪资高,为了五斗米折腰,又加上最近行情不好,想要往外跳也跳不了,就这样子一直郁郁不乐地苟且着。

Java19的新特性

2022-09-21
阅读 9 分钟
8.5k
Java语言特性系列Java5的新特性Java6的新特性Java7的新特性Java8的新特性Java9的新特性Java10的新特性Java11的新特性Java12的新特性Java13的新特性Java14的新特性Java15的新特性Java16的新特性Java17的新特性Java18的新特性Java19的新特性Java20的新特性Java21的新特性Java22的新特性Java23的新特性Java24的新特性序本文...