10 2022 档案
摘要:redis分布式锁问题1.如何避免死锁 在申请锁时,给这把锁设置一个过期时间SET lock 1 EX 10 NX 2.锁超期问题试想这样一种场景: 客户端 1 加锁成功,开始操作共享资源 客户端 1 操作共享资源的时间,「超过」了锁的过期时间,锁被「自动释放」 客户端 2 加锁成功,开始操作共享资
阅读全文
摘要:1.通过improtselector接口控制 根据任意条件确认是否加载bean public class MyImportSelector implements ImportSelector {@ @Override public String[] selectImports(AnnotationM
阅读全文
摘要:总结了一下八种bean的加载方式 bold;">接口 xml+<bean/> xml:context+注解(@Component+4个@Bean) 配置类+扫描+注解(@Component+4个@Bean) @Bean定义FactoryBean接口 @ImportResource @Configur
阅读全文
摘要:Springboot项目打jar包流程1、在POM中确定MAVEN打包插件已经引入<build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</
阅读全文
摘要:现今的业务系统很少有孤立存在的,它们或多或少需要使用兄弟团队或是其他公司提供的服务,这给我们的联调和测试造成了麻烦。对于这种情况,我们常见的解决方案是搭建一个临时的server,模拟那些服务,提供数据进行联调和测试。这就是 mock server 出现原因 使用mockserver接收报警信息安装m
阅读全文
摘要:布隆过滤器适合大数据判重的场景,如网络爬虫中判断一个URL是否已经爬取过,判断一个用户是否在黑名单中,判断一个邮件是否是垃圾邮件,等等。优点:占用空间小,效率高,简而言之,就是以正确率换空间和时间。缺点:有一定的误判率,一个URL经过布隆过滤器判断没爬取过,那么一定没爬取过,一个URL经过布隆过滤器
阅读全文
摘要:通过代码分析java内存模型,执行代码: public class Person { String name; int age; public void show(){ System.out.println(name); } public static void main(String[] args
阅读全文
摘要:对于 Spring 容器的一些事件,能够监听而且触发相应的方法。一般的方法有 2 种,ApplicationListener 接口和@EventListener 注解。spring 简介 要想顺利的建立监听器,并起做用,这个过程当中须要这样几个角色:一、事件(event)能够封装和传递监听器中要处理
阅读全文
摘要:1、IOC spring IOC相关类 上面的图展示是spring IOC相关的类: BeanDefinition:容器中每一个bean都有一个相对应的BeanDefinition实例,该实例负责保存bean对象的所有必要信息,包括bean对象的class类型、是否是抽象类、构造方法和参数、其它属性
阅读全文
摘要:ApplicationContextAware接口 在某些特殊的情况下,Bean需要实现某个功能,但该功能必须借助于Spring容器才能实现,此时就必须让该Bean先获取Spring容器,然后借助于Spring容器实现该功能。为了让Bean获取它所在的Spring容器,可以让该Bean实现Appli
阅读全文
摘要:spring bean在初始化和销毁的时候我们可以触发一些自定义的回调操作。初始化的时候实现的方法1、通过java提供的@PostConstruct注解;2、通过实现spring提供的InitializingBean接口,并重写其afterPropertiesSet方法;3、通过spring的xml
阅读全文
摘要:linux执行bash文件时报错:/bin/bash^M: 坏的解释器: 没有那个文件或目录 的解决方法 执行命令:sed 's/\r//' -i gen_cert.sh idea设置: 由于在windows下的换行符多一个回车符,所以会出现这种问题,那么在idea中进行编辑的时候,是可以指定换行符
阅读全文
摘要:一、命令行启动1、在 / 目录下 创建 project此目录 (此目录创建位置不限制,根据自己的来定)mkdir project -- 创建目录命令2、进入project目录下,将springBoot项目的jar包上传进来 3、创建 nohup.out 日志文件,用于输出项目启动的日志输出touch
阅读全文