- 博客(7)
- 问答 (1)
- 收藏
- 关注
原创 java实现布隆过滤器
布隆过滤器(Bloom Filter)是1970年由布隆提出来的。它实际上是由一个很长的二进制数组+一系列hash算法映射函数,用于判断一个元素是否存在于集合中。布隆过滤器可以用于检索一个元素是否在一个集合中。它的优点是空间效率和查询时间都比一般的算法要好的多,缺点是有一定的误识别率和删除困难。
2023-05-23 15:41:23
210
1
原创 @Configuration 和 @Component 的区别
调用@Configuration类中的@Bean注解的方法,返回的是同一个示例;而调用@Component类中的@Bean注解的方法,返回的是一个新的实例。@Component注解并没有通过 cglib 来代理@Bean 方法的调用,因此像下面这样配置时,就是两个不同的 country。一句话概括就是 @Configuration 中所有带 @Bean 注解的方法都会被动态代理,因此调用该方法返回的都是同一个实例。示例 1:调用@Configuration类中的@Bean注解的方法,返回的是同一个示例。
2023-02-22 14:27:59
220
原创 利用nginx来屏蔽指定的user_agent的访问以及根据user_agent做跳转
利用nginx来屏蔽指定的user_agent的访问以及根据user_agent做跳转
2022-09-22 10:24:15
1617
原创 Java位移运算符
无符号右移的叫法,容易让人误解。虽然叫作无符号右移运算,让人第一印象以为是不对符号位进行移位,其实却是连同符号位一起右移;对复数进行无符号右移,符号位也一起右移,将会变成正数;对正数进行若干次无符号右移,得到的永远都是正数或0;
2022-09-21 14:01:59
2287
原创 MySQL和Redis如何保证数据一致性
在高并发的场景下,大量的请求直接访问Mysql很容易造成性能问题。所以,我们都会用Redis来做数据的缓存,削减对数据库的请求。但是,Mysql和Redis是两种不同的数据库,如何保证不同数据库之间数据的一致性就非常关键了。
2022-09-21 09:15:52
2403
原创 解决There is no PasswordEncoder mapped for the id “null“问题
默认情况下与4.2版本不同的是,springsecurity5.0密码加密方式采用了bcrypt的方式,而且密码直接配置在xml文件中,不光是需要使用BCryptPasswordEncoder来加密,还需要指定一个encodingId,如果不指定,就会报出如题所示的错误。不管是哪种方式,我们如果使用默认的加密方式,就需要在xml中配置密码为如下的样子。1、密码不加密,和springsecurity4.2一样,使用明文密码,那就需要配置密码验证方式为noop,配置如下。知道了用什么方式,我们就可以来改进了。
2022-09-15 13:53:56
3390
原创 Feign实现服务调用的坑
Method getMap not annotated with HTTP method type (ex. GET, POST)
2022-08-22 13:58:22
567
1
空空如也
拦截带有User-Agent的请求
2022-09-16
Feign实现服务调用
2022-08-22
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅