背包问题 发表于 2022-08-02 | 分类于 数据结构与算法 字数统计: 2k | 阅读时长 ≈ 8今天学习了@Carl哥的背包问题,觉得有必要自己总结一下,加深理解,链接如下: 0-1背包理论基础(一) 0-1背包理论基础(二) 01背包有n件物品和一个最多能背重量为w 的背包。第i件物品的重量是weight[i],得到的价值是value[i] 。每件物品只能用一次,求解将哪些物品装入背包里 ...阅读全文 »
浅析特别的枚举类 发表于 2022-07-05 | 分类于 Dig from here 字数统计: 1.4k | 阅读时长 ≈ 6枚举类反编译枚举类关键字enum隐藏了很多细节,导致我们不方便理解,查阅资料后,发现反编译class文件,是一种窥探JVM运行Java代码的一种有效手段。本文大量借鉴了知乎文章 1 123public enum Gender { MALE, FEMALE;} 使用jad反编 ...阅读全文 »
在枚举类中注入bean 发表于 2022-06-25 | 分类于 Dig from here 字数统计: 1.1k | 阅读时长 ≈ 4使用枚举类统一管理多个接口实现类上次使用了模版模式,对策略的行为进行了约束。其中就抽象方法limitFilter()中要执行的方法进行了统一管理,因为这里的方法其实都是一些过滤器,他们的行为是类似的,所以我抽象了一个接口,让所有的过滤器实现这个接口: 123public interface IRul ...阅读全文 »
在策略模式的基础上使用模版模式 发表于 2022-06-15 | 分类于 Dig from here 字数统计: 499 | 阅读时长 ≈ 2前两天使用了策略模式,但是发现还是不够,不够在哪呢?因为我不仅想让SpringBoot执行不同的策略,我还想对这个策略进行限制,让它按照我的想法执行策略,不能在策略接口的实现中胡作非为,那么该怎么办呢??引入模版模式加一个限制,每个具体的策略必须继承自这个抽象的策略就好了。 下面是具体实现: 123 ...阅读全文 »
在SpringBoot中使用策略模式 发表于 2022-06-08 | 分类于 Dig from here 字数统计: 1.4k | 阅读时长 ≈ 6此篇博客完全参考该文章:SpringBoot 策略模式的运用,其中些许部分做了修改。 这两天有这么个需求,需要后台使用不同的策略做计算,个人感觉写if-else实在是有点low,就想着用点设计模式,一开始看的是菜鸟的策略模式,但是发现不好加进SpringBoot项目中,后来找到了上边这篇文章,写的特 ...阅读全文 »
我的HTTPRequestHolder呢? 发表于 2022-06-06 | 分类于 Dig from here 字数统计: 817 | 阅读时长 ≈ 3今天写需求,调同事的接口,同事的接口里需要从RequestContext拿一些参数用来查询,我一开始还能查到呢,后边自己“优化”了一下代码,哎嗨?RequestContext里咋空了,啥也没了,我的HTTPRequestHolder对象去哪了? 这就开始debug了。 由于之前重写的那部分代码为了提 ...阅读全文 »
MySQL索引 发表于 2022-04-07 | 分类于 Dig from here 字数统计: 1.4k | 阅读时长 ≈ 5Why提高查询性能 What索引是存储引擎用于快速找到记录的一种数据结构 索引类型全文索引一种特殊类型的索引,它查找的是文本中的关键词,而不是直接比较索引中的值。全文索引更类似于搜索引擎做的事情,而不是简单的WHERE条件匹配。 普通索引空间索引为空间数据(点线面)类型字段建立的索引 唯一索引唯一 ...阅读全文 »
责任链模式 发表于 2022-03-21 | 分类于 Dig from here 字数统计: 573 | 阅读时长 ≈ 1最近开发消息模块的任务告一段落,mentor设计的消息中心让我收获颇多,所以在此总结。 从责任链模式模式开始。 一开始,mentor跟我讲,咱们的消息中心使用了责任链的设计模式,啥叫个链儿呢?粗暴理解,就是个数据结构里的单链表。用它是为了将消息的发送方和接收方进行解耦,而且还能提高服务的可用性。咱们 ...阅读全文 »
IoC和DI 发表于 2022-02-28 | 分类于 Dig from here 字数统计: 579 | 阅读时长 ≈ 2IoC控制反转IoC(Inversion of Control)即:控制反转,是把传统上由程序代码直接操控的对象的调用权交给容器,通过容器来实现对象组件的装配和管理。所谓的”控制反转”就是对组件对象控制权的转移,从程序代码本身转移到了外部容器,由容器来创建对象并管理对象之间的依赖关系。 IoC是一种 ...阅读全文 »