主要内容:1.缓存穿透,2.缓存击穿,3.缓存雪崩缓存穿透 缓存击穿 缓存雪崩 1.缓存穿透 缓存穿透指的是一个缓存系统无法缓存某个查询的数据,从而导致这个查询每一次都要访问数据库。 常见的Redis缓存穿透场景包括: 查询一个不存在的数据:攻击者可能会发送一些无效的查询来触发缓存穿透。 查询一些非常热门的数据:如果一个数据被访问的非常频繁,那么可能会导致缓存系统无法处理这些请求,从而造成缓存穿透。 查询一些异常数据:这种情况通常发生在数据服务出
主要内容:文章目录,1.用户登录权限效验,2.统一异常处理,3.统一数据返回格式统⼀⽤户登录权限验证 统⼀数据格式返回 统⼀异常处理 1.用户登录权限效验 1.1 最初的用户登录验证 每个⽅法中都要单独写⽤户登录验证的⽅法,即使封装成公共⽅法,也⼀样要传参调⽤和在⽅法中进⾏判断。 添加控制器越多,调⽤⽤户登录验证的⽅法也越多,这样就增加了后期的修改成本和维护成本。 1.2 Spring AOP 用户统一登录验证的问题 没办法获取到 HttpSession 对象。 要对⼀部分⽅
主要内容:1.引入包,2.配置加密、解密的密码,3.测试用例中生成加密后的秘钥,4.将加密后的字符串替换原明文,5.部署时配置 salt(盐)值MySQL 登录密码,Redis 登录密码以及第三方的密钥等等一览无余。这里介绍一个加解密组件,提高一些属性配置的安全性。 1.引入包 2.配置加密、解密的密码 3.测试用例中生成加密后的秘钥 4.将加密后的字符串替换原明文 5.部署时配置 salt(盐)值 为了防止 salt(盐)泄露被反解出密码,可以在项目部署的时候使用命令传入 salt 值:
主要内容:一、Spring Boot Starter,二、Spring Boot Autoconfigure,三、Spring Boot CLI,四、Spring Boot actuator四大组件分别是:starter, autoconfigure, CLI 以及actuator。 一、Spring Boot Starter 1.1 Starter的应用示例 在我们的Spring Boot项目种的POM文件中总会看到这两种依赖: 这就是spring boot的四大组件之一的starter。 总
主要内容:1.SpringBoot自动装配原理,2.BeanFactory和ApplicationContext的区别,3.Spring容器是什么1.SpringBoot自动装配原理 BFPP:BeanFactoryPostProcessor BPP:BeanPostProcessor BDRPP:BeanDefinitionRegistryPostProsessor 1.当启动SpringBoot程序时候,创建SpringApplication的对象,在对象的构造方法中进行对某些参数的初始化工
主要内容:1.引入包,2.配置加密、解密的密码,3.测试用例中生成加密后的秘钥,4.将加密后的字符串替换原明文,5.部署时配置 salt(盐)值MySQL 登录密码,Redis 登录密码以及第三方的密钥等等一览无余。这里介绍一个加解密组件,提高一些属性配置的安全性。 1.引入包 2.配置加密、解密的密码 3.测试用例中生成加密后的秘钥 4.将加密后的字符串替换原明文 5.部署时配置 salt(盐)值 为了防止 salt(盐)泄露被反解出密码,可以在项目部署的时候使用命令传入 salt 值:
主要内容:1.@Transactional 失败的情况,2.@Transactional 源码分析,3.@Transactional 失效原因1.@Transactional 失败的情况 UserDao UserController @Transactional 事务不生效的几种情况 类内部访问:A 类的 a1 方法没有标注 @Transactional,a2 方法标注 @Transactional,在 a1 里面调用 a2; 私有方法:将 @Transactional 注解标注在非 publi
主要内容:org.springframework.context.ApplicationContextInitializer,org.springframework.beans.factory.support.BeanDefinitionRegistryPostProcessor,org.springframework.beans.factory.config.BeanFactoryPostProcessor,,,,,,,,,,,,1.可扩展的接口启动调用顺序图 ApplicationConte
主要内容:1.maven仓库,2.过滤器,3.拦截器,4.监听器,5.实例化,6.测试,7.拦截器与过滤器的区别1.maven仓库 2.过滤器 过滤器的英文名称为 Filter, 是 Servlet 技术中最实用的技术。 如同它的名字一样,过滤器是处于客户端和服务器资源文件之间的一道过滤网,帮助我们过滤掉一些不符合要求的请求,通常用作 Session 校验,判断用户权限,如果不符合设定条件,则会被拦截到特殊的地址或者基于特殊的响应。 3.拦截器 Java中的拦截器是动态拦截 action 调用的
主要内容:1.分析,2.样例讲解1,3.样例讲解2,4.总结1.分析 先看@SpringBootApplication @SpringBootConfiguration:标记当前类为配置类 @EnableAutoConfiguration:开启自动配置 @ComponentScan:扫描主类所在的同级包以及下级包里的Bean @EnableAutoConfiguration: @Import(AutoConfigurationImportSelector.
主要内容:1.SpringBoot自动装配原理,2.BeanFactory和ApplicationContext的区别,3.Spring容器是什么1.SpringBoot自动装配原理 BFPP:BeanFactoryPostProcessor BPP:BeanPostProcessor BDRPP:BeanDefinitionRegistryPostProsessor 1.当启动SpringBoot程序时候,创建SpringApplication的对象,在对象的构造方法中进行对某些参数的初始化工
主要内容:1.lombok,2.dev-tools1.lombok 1.导入jar包 2.下载插件: @Data为生成set/get方法 @ToString生成toString方法 @AllArgsConstructor生成全参构造器 @NoArgsConstructor生成无参构造器 @EqualsAndHashCode生成equals和hashcode方法 2.dev-tools 热部署 1.导入jar包 在运行时候按住ctrl + f9即可
主要内容:1.Micrometer简介,2.SpringBoot Actuator,3.Prometheus,4.自定义Metric,5.总结1.Micrometer简介 Micrometer 为 Java 平台上的性能数据收集提供了一个通用的 API,应用程序只需要使用 Micrometer 的通用 API 来收集性能指标即可。Micrometer 会负责完成与不同监控系统的适配工作。这就使得切换监控系统变得很容易。Micrometer 还支持推送数据到多个不同的监控系统。Micrometer
主要内容:org.springframework.context.ApplicationContextInitializer,org.springframework.beans.factory.support.BeanDefinitionRegistryPostProcessor,org.springframework.beans.factory.config.BeanFactoryPostProcessor,,,,,,,,,,,,1.可扩展的接口启动调用顺序图 ApplicationConte
主要内容:方式一,方式二 ,扫描并注册Service Bean,扫描并注册Reference Bean前言 本文由于涉及到Spring 框架内容比较多,看此篇文章的同学需要具备对Spring框架较深刻的理解。 前面提到Dubbo是一个分布式的RPC框架,我们学到了dubbo的rpc调用、网络框架netty、SPI等,这部分讲的是Dubbo是如何管理Dubbo里的Bean,Dubbo框架里主要有2种Bean,分别为: Service Bean 和Reference