年度归档: 2024 年

16 篇文章

团队管理
赢 使命和价值观 一个优秀的互联网公司: 一定要有很明确的「使命」「愿景」和「价值观」 才能支撑公司长期取得「赢」的结果。 使命和价值观的本质是为了实现: 思想统一 目标统一 行动统一 让价值观在实践中运行,建立完善的奖罚机制: 鼓励践行价值观的行为 处罚违反价值观的行为 公司和团队里的每个角色、项…
Spring Validation 详解
校验框架 SpringBoot 的 Validation: Spring Boot中的验证功能是基于Java Bean Validation(Jakarta Validation)规范的 Spring Boot 通过 spring-boot-starter-validation 自动配置,实际使用的…
线程池原理(一)
线程回顾 创建线程的方式 继承 Thread 类 实现 Runnable 接口 创建后的线程有如下状态: NEW:新建的线程,无任何操作 public static void main(String[] args) { Thread thread = new Thread(() -> Syst…
双 Token 三验证解决方案
问题分析 以往的项目大部分解决方案为单 token: 用户登录后,服务端颁发 jwt 令牌作为 token 返回 每次请求,前端携带 token 访问,服务端解析 token 进行校验和鉴权 存在的问题: 有效期设置问题:有效期设置需要对时间做平衡,不能太短也不能太长 续期问题:一旦过期,用户必须重…
Java-Agent 实现字节码热替换
问题背景 正在运行中的 SpringBoot 项目需要在不停机的情况下,针对某个 Aop 切面的方法体内容进行修改,需要执行字节码替换的类为: package com.test.agent.aop; @Aspect @Component public class TestAgentAop { @Be…
P0 级重大资损事故复盘
事故概述 事故背景 由于项目组某核心研发成员与项目组内其他成员发生不可调解的矛盾,导致事发当天该成员被裁,出于报复心理,该核心研发成员对正处于线上内测的项目进行了一系列损毁行为,包括: 删除线上数据库、当日数据库备份文件及相关日志文件 删除 apifox 的项目接口及相关文档,导致接口文档不可用 上…
Java 算竞操作
输入输出 简单写法 数据量不大: Scanner sc = new Scanner(System.in); int a = sc.nextInt(); char op = sc.nextLine().charAt(0); 如果比较大可以换: Scanner sc = new Scanner(new …
致母亲
母亲,我能为您做些什么? 母亲,我还能爱您再多久?   爱,一万年太久,太久 那些花儿在您的脚下成熟, 可惜白发太长,时间太短 我们时间的交集,太短   爱一万年的时间,不够 搬过的一袋袋化肥,一百斤 扛过的一袋袋盐,一百八十斤 是什么撑得起您壮汉般的身体 又是什么压垮脊柱落下了…
东湖旅者
——屈原既放,游于江潭,行吟泽畔,颜色憔悴,形容枯槁。   大湖水波滚烫,时间的反光 谁见?谁信?谁悲?谁能不覆?   一切不过是沙子 漏过大湖的缝隙,沉积 水面,推开雨滴的皱纹   沧浪之水,何濯四土 大湖之畔,芳草兴然 沧浪之水,何濯故碑 大湖之畔,早已不见 &nb…