Hcy Blog

保持激情,只有激情,才有动力

笔记

笔记dubbo查找需要暴漏的服务DubboService 注解上描述的很清楚,将该注解增加到facade的实现类上可以配合dubbo.scan.base-packages = x.y.z 标注在哪个包下查找实现类,以此加快查找速度

idea调试debug javascript不生效

idea调试debug javascript不生效问题现象:​ 使用idea调试js,能够打开空白chrome,但不能自动进入网页,并且idea控制台不能关联浏览器控制台,断点也不生效。排查思路:解决方法问题一打开idea 右下角 event log窗口,查看是否有 Waiting for connection to localhost:52421. Please ensure that the browser was started successfully with...

Spring的Qualifier注解

Spring的Qualifier注解​ spring 的依赖注入功能依赖 @Autowired 注解,该注解可以标记在单个字段上,表示注入单个值。也可以标记在 list/array/map 上,表示注入多个值​ @Qualifier 注解是在 @Autowired 的基础上提供了选择的功能,有如下使用场景 需要注入一个对象,但容器内存在多个相同类型的对象,容器无法选择具体注入哪一个 容器内存在 5 个相同类型的对象,需要指定注入其中 3 个到一...

记一次prometheus指标重复的问题

记一次prometheus指标重复的问题​使用的reslience4j做熔断器,使用prometheus统计熔断器的指标监控,其中有一项指标是访问次数,用来绘制tps折线图。后来发现访问一次会导致指标增加两次。​​ 使用如下方式配置熔断器,并将其绑定到micrometer上。111213141516import io.micrometer.core.instrument.MeterRegistry;import ...

Spock测试框架中的mock类型

Spock测试框架中的mock类型​ 最近使用Spock做单元测试比较多,但是对其中的Mock理解的比较混乱,今天抽些时间对其中的测试类型做测试,以此来揭示其中的区别。认识mocking 和 stubing 和 Spying​ mocking翻译成中文就是 “模拟”,stubing翻译成中文就是”存根”,spying翻译成中文就是”间谍”。 模拟拥有的能力是:对方法调用进行验证,在spock中表现形式如下。 1 * subsc...

project reactor中的Mono.from操作符

project reactor中的Mono.from操作符​ reactor项目中经常会用到Mono.from操作符,主要包含下面四个,他们的返回值如下 Mono.fromFuture(); –> MonoCompletionStage Mono.fromCallable(); –>MonoCallable Mono.fromRunnable(); –>MonoRunnable Mono.fromSupplier(); ...

spring @lazy注解的使用

spring @lazy注解的使用在spring中@lazy注解表达延迟的含义,但在不同情况下,这里的延迟并不是同一层意思。下面将描述我发现的两层含义。1. 延迟初始化bean​ 首先我们知道,容器启动之前会扫描所有的class文件,并将需要加载到容器中的类,整理成BeanDefinition存储。容器启动时将依次将BeanDefinition构建成bean,构建过程中同时解决依赖注入和循环引用的问题。​ 但并不是所有的BeanDefinition都会被构建成bean...

mysql 密码算法

mysql 密码算法mysql 5.x版本后,密码算法有变更,在此记录下来。首先看mysql连接时,服务端发送的握手报文,这里主要是保存两个salt然后再看客户端返回的数据包,重要的部分就是用户名密码部分。下面看如何根据上面的信息构建密码。其中pass为真实密码,salt为两个salt相加。11121314151617181920 private static byte[] scramble...

jackson序列化优先级和注解顺序

jackson序列化优先级和注解顺序先说结论: 序列化时getter方法优先于字段,注解添加到字段上或添加在getter方法上同样生效。1. 创建serializerProvider调用serializeValue方法111213141516protected final void _writeValueAndClose(JsonGenerator g, Object value) throws IOExceptio...

spring中ObjectFactory , ObjectProvider 和 FactoryBean

spring中ObjectFactory , ObjectProvider 和 FactoryBeanObjectFactory , ObjectProvider这两个类是spring的提供的工厂方法的辅助类,ObjectFactory在 1.0.2版本添加进去的,他只有一个getObject方法ObjectProvider在4.3版本添加,它继承了ObjectFactory接口,添加了更多方法,如getIfAvailable,这种可选方法。请看下面的相关源码,这里是解析自...