spring aop 之 切点表达式
在面向切面编程中,切面是核心概念,正如在面向接口编程中,接口是核心概念一样,这里的接口和切面其实都是一个 Java 类,或者说具体表现形式就是个 Java 类。
2025-02-23 14:44:20
spring aop - spring 面向切面编程的执行顺序
所谓面向切面编程,实际指的是在不改变已有代码的前提下,通过预编译或运行时动态代理的方式给程序动态统一的添加新功能的一种编程技巧。比如,你要实现请求日志存储便于以后的 Bug 修复,那么 aop 技术就能很好的帮助你。与其说是技术,不如说是编程技巧,aop 的思想就是这样,今天我们主要看 aop 编程技巧的 spring 实现。
2025-02-23 14:31:25
spring boot 集成 oauth2
spring boot 集成 oauth2 需要添加 spring-cloud-starter-oauth2 依赖, 另外,还需要指定 spring cloud 的版本或者指定 spring-cloud-starter-oauth2 的版本,但是后者不是推荐的做法。假设你依赖了好几个 spring cloud 组件,而你却每个组件单独指定了版本,不是指定 spring cloud 的版本,则可能出现错误,依赖上的混乱。
2025-02-23 14:11:19
retrofit 同时支持 xml 和 json
retrofit 解析 json 是很简单的,但是,偶尔,只是偶尔,你也可能遇到解析 xml 的需求,而且最怕的是不同的接口返回的类型不一样,一个返回 json 一个 返回 xml,如何兼容?使用两个 retrofit 实例还是?本文将介绍一种更简单的办法。
2025-02-23 14:01:20
idea mybatis xml 提示 <statement> or DELIMITER expected , got 'id'
之前遇到过一个小问题:idea 提示 or DELIMITER expected , got ‘id’ ,当时解决了,但没有记录解决方案,今天 idea 20.1.1 遇到了 bug,然后重装了 idea,又遇到了这个问题,特此记录。
2025-02-23 00:09:03
java 枚举类实现的单例与 spring boot 枚举类依赖注入
我们知道,在单例的诸多实现里,枚举类实现的单例是最好的。在 spring boot 应用里,我们也可以使用枚举类来做单例,但是可能会遇到依赖注入的问题,这个问题呢,其实也不是问题,但肯定会困扰不少新手。本文就此展开,先讨论各种单例的优劣,再讨论 spring boot 里 枚举类的依赖注入。
2025-02-22 23:56:57
wrk -更现代化的 http 压测工具
wrk 是一款更现代化的 http 压测工具,支持 lua 脚本,可以随心所欲的进行压力测试,相比 ab 命令,它更灵活,现在,wrk 已经成为了我压测的主要工具,而 ab 已经被逐渐抛弃。本文介绍 wrk 的基本命令以及配合 lua 脚本进行压测。
2025-02-22 23:52:15
acme.sh 的简单使用
acme.sh 是纯 shell script 写的,它实现了 acme 协议,可以从 letsencrypt 生成免费的证书。它不依赖于 python,也不需要 root 权限,而且支持不少云服务商,可以实现全自动证书生成与续期。
2025-02-22 23:45:09
goreplay 抓包工具使用
解决疑难问题时,抓包是个必备的技能,我们开 accesslog 其实就是为了解决类似问题,但如果你 accesslog 没开呢?或者需要知道 body 中的内容呢?这个时候,goreplay 闪亮登场了。
2025-02-22 23:38:32
dubbo 多注册中心的使用
工作中,总会遇到 dubbo 跨机房调用的场景,特此记录如下,跨机房调用需要配置多个集群,然后在 DubboReference 中指定。
2025-02-22 23:25:06