Spring Boot3.0升级,踩坑之旅,附解决方案
本文基于 newbeemall 项目升级Spring Boot3.0踩坑总结而来,附带更新说明: Spring-Boot-3.0-发布说明 Spring-Boot-3.0.0-M5-发布说明 一. 编译报错,import javax.servlet.*; 不存在 这个报错主要是Spring Boot ...
Spring循环依赖
说明: 1. 本文基于Spring-Framework 5.1.x版本讲解 2. 建议读者对创建对象部分源码有一定了解 概述 这篇讲讲Spring循环依赖的问题,网上讲循环依赖的帖子太多太多了,相信很多人也多多少少了解一点,那我还是把这个问题自己梳理一遍,主要是基于以下出发点: 1. Spring到 ...
Spring Bean的生命周期
说明: 本文基于Spring-Framework 5.1.x版本讲解 概述 说起生命周期, 很多开源框架、中间件的组件都有这个词,其实就是指组件从创建到销毁的过程。 那这里讲Spring Bean的生命周期,并不是讲Bean是如何创建的, 而是想讲下Bean从实例化到销毁,Spring框架在Bean ...
SpringCloud Alibaba(八) - Durid,SpringSecurity,Shiro
1、Durid 1.1 简介 Java程序很大一部分要操作数据库,为了提高性能操作数据库的时候,又不得不使用数据库连接池。 Druid 是阿里巴巴开源平台上一个数据库连接池实现,结合了 C3P0、DBCP 等 DB 池的优点,同时加入了日志监控。 Druid 可以很好的监控 DB 池连接和 SQL ...
SpringCloud Alibaba(六) - Seata 分布式事务锁
1、Seata 简介 1.1 Seata是什么 Seata 是一款开源的分布式事务解决方案,致力于提供高性能和简单易用的分布式事务服务。Seata 将为用户提供了 AT、TCC、SAGA 和 XA 事务模式,为用户打造一站式的分布式解决方案。AT模式是阿里首推的模式,阿里云上有商用版本的GTS(Gl ...
SpringCloud Alibaba(五) - RocketMQ
1、 RocketMQ安装测试 1.1 下载解压 下载地址:https://rocketmq.apache.org/release-notes/ rocketmq-all-5.0.0-bin-release.zip 下载后上传到服务器; 解压命令# unzip rocketmq-all-5.0.0- ...
Spring Security(7)
您好,我是湘王,这是我的博客园,欢迎您来,欢迎您再来~ 有时某些业务或者功能,需要在用户请求到来之前就进行一些判断或执行某些动作,就像在Servlet中的FilterChain过滤器所做的那样,Spring Security也有类似机制。Spring Security有三种增加过滤器的方式:addF ...
SpringCloud Alibaba(四) - Nacos 配置中心
1、环境搭建 1.1 依赖 <!-- nacos注册中心 注解 @EnableDiscoveryClient --> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba- ...
为什么标准库的模板变量都是inline的
最近在看标准库里的type_traits的时候发现了个有趣的地方,几乎所有在标准库里的变量模板都是inline的! 不仅常见的实现上(libstdc++、libc++、ms stl)都是inline的,标准里给的形式定义也是inline的。 比如微软开源的stl实现:https://github.c ...
Spring Security(6)
您好,我是湘王,这是我的博客园,欢迎您来,欢迎您再来~ Spring Security使用MySQL保存cookie记录虽然方便,但是目前更多的主流互联网应用都是用NoSQL来保存非业务数据的,Spring Security也应该可以实现这个功能。之前Spring Security官方并不支持使用N ...
第2章-Spring基于XML配置的容器
Spring 的核心功能就是提供一个 IoC 容器,用于管理应用程序中的 bean,在容器中配置元数据来管理 Bean 之间的依赖关系,Java 程序中的类都可以交由 Spring 容器管理。 ...
第1章-Spring的模块与应用场景
Spring 框架可以为 Java 应用程序开发提供全面的基础设施支持,它是现在非常流行的 Java 开源框架,对于一个 Java 开发人员来说,熟练掌握 Spring 是必不可少的。 ...