# 背景 spring mvc作为优秀的web框架,从2003年问世(根据changelog)到现在已经经历了21年。springframework框架里,web相关的类从1...
# 背景 spring mvc作为优秀的web框架,从2003年问世(根据changelog)到现在已经经历了21年。springframework框架里,web相关的类从1...
登录态存储形式 使用Spring Security框架,用户认证成功后的用户信息会放在Authentication 对象的Principal中。Authentication ...
框架介绍 Spring Security是Spring全家桶的成员,官方对它的介绍是: 从介绍里可以看出,Spring Security是一个可定制扩展的框架,它主要提供了身...
前后端分离模式是指由前端控制页面路由,后端接口也不再返回html数据,而是直接返回业务数据,数据一般是JSON格式。 Spring Security存在的问题 Spring ...
3月23日,OpenAI官方发布了一则公告,宣告ChatGPT已经支持了插件功能,现在处于内测阶段。插件的意义不仅仅在于功能的扩展,它直接让ChatGTP拥有了联网的能力!简...
1. 背景 插件体系是IDEA的精髓,插件市场里拥有无数开发者提交的插件,这让IDEA拥有了成长的能力。下面我通过一个例子,介绍插件创建、调试和发布的完整过程。 2. 开发步...
@一条咸鱼_5de3 感谢指教,我描述有误
为什么说SPI打破双亲委派机制简单介绍ClassLoader的双亲委派机制: java类通过Classloader加载,系统默认的3个Classloader之间有引用关系,AppClassLoader的p...
@尛丶铭_b608 感谢指教,我描述有误
为什么说SPI打破双亲委派机制简单介绍ClassLoader的双亲委派机制: java类通过Classloader加载,系统默认的3个Classloader之间有引用关系,AppClassLoader的p...
我们在听演讲时,会不自觉地把听到的片段,以一定的逻辑顺序关联起来,试图找到他人的观点。作为演讲者,没有条理的表达明显会加重听众的理解难度。所以,有什么好的方式能让我们表达得更...
问题现象 使用Junit4.12写单测的时候,通过IDEA运行单测用例,错误:提示包org.junit不存在。代码也没标红,点击可以跳转到类定义。 定位 通过mvn denp...
大家应该都了解Spring AOP有两种实现方式,Jdk Proxy和Cglib。默认情况下,如果类实现了接口,则用JDK动态代理;如果类没有实现接口,则用Cglib进行代理...
https://github.com/imsingle/mockito-doc-zh/blob/master/README.md
原文 https://www.linkedin.com/pulse/mockito-vs-powermock-opinionated-dogmatic-static-mock...
如果调map.put()方法应该会产生覆盖,不会出现重复key,查看源码发现是调用map.merge(key, value, mergeFunction)把元素放入map里,...
synchronized是jdk原生提供的锁,底层由偏向锁、轻量级和重量级锁来回切换实现。偏向锁并不算锁,它在对象头中直接记录偏向线程ID,认为不会发生锁竞争。轻量级是通过C...
ReentrantLock实现了Lock接口,提供了lock、trylock、unlock等方法。这些方法通过AQS同步器来管理锁状态,实现加锁和解锁。ReentrantLo...
Semaphore 依据同步器的共享计数器模式,先设置计数器为5,线程调用acquire方法申请许可数量,申请成功计数器-n个许可数,失败则阻塞等待。当用完锁后要调用rele...
HashMap是不是线程安全? 不是线程安全的。 为什么不安全? 线程不安全的两个添加是,数据可共享、可修改。HashMap底层是用Node[]数组来存储元素,满足可共享和可...
数据库事务具有ACID四个特性,即原子性、一致性、隔离性和持久性。 原子性指事务在commit之前要么全部成功,要么全部失败回滚,不能出现成功一半的情况。A给B转账,A扣掉1...