首页
个人开发
工作相关
共享
搜索
登录
搜索
colo
欲买桂花同载酒
累计撰写
1823
篇文章
累计收到
0
条评论
首页
栏目
首页
个人开发
工作相关
共享
作者 【1】 的文章
2025-12-13
实现JWT令牌吊销与自定义权限控制的Spring Security OAuth2资源服务器
实现要点:配置JwtDecoder并添加自定义验证器通过@PreAuthorize或自定义AccessDecisionVoter实现权限控制使用Redis存储吊销令牌实现实时失效自定义JwtAuthenticationConverter转换权限实现令牌吊销检查的OAuth2TokenValidator
2025年-12月-13日
5 阅读
0 评论
Spring Security
2025-12-13
如何实现Spring Security中基于自定义业务规则的访问控制?
实现自定义访问控制的核心步骤:创建实现AccessDecisionVoter<ConfigAttribute>的投票器重写vote方法实现业务规则逻辑在安全配置中注册自定义投票器使用@PreAuthorize注解或XML配置应用规则关键点:投票器返回ACCESS_GRANTED/ACCESS_DENIED需正确处理弃权(ACCESS_ABSTAIN)场景结合RoleVoter等内置投票器协同工作
2025年-12月-13日
10 阅读
0 评论
Spring Security
2025-12-13
设计可扩展的注解处理器实现动态权限校验
实现步骤:定义@RequiresPermission注解包含权限码和操作类型通过AOP或拦截器创建注解处理器,使用反射获取方法注解解析注解参数,结合ThreadLocal获取当前用户上下文实现权限校验逻辑,支持动态条件判断处理嵌套注解和继承关系添加缓存优化反射性能注意事项:确保@Retention(RetentionPolicy.RUNTIME)处理桥接方法和接口默认方法校验失败抛出带注解信息的异常
2025年-12月-13日
5 阅读
0 评论
反射与注解
2025-12-13
设计支持重试机制的分布式服务异常处理框架
实现要点:定义RetriableException标记可重试异常使用RetryTemplate封装重试策略(指数退避、熔断)通过try-with-resources确保资源释放结合ThreadLocal管理上下文状态利用UncaughtExceptionHandler处理线程池异常
2025年-12月-13日
5 阅读
0 评论
异常处理
2025-12-13
String对象比较:==与equals()的区别
在Java中比较字符串时:== 比较对象的内存地址是否相同equals() 比较字符串的内容是否相同字符串字面量会存储在常量池中复用使用new String()会强制创建新对象
2025年-12月-13日
5 阅读
0 评论
Java基础
2025-12-13
Spring MVC拦截器的实现原理与应用场景
HandlerInterceptor是Spring MVC的核心扩展点,用于在请求处理的不同阶段注入自定义逻辑。主要应用包括:权限验证:在Controller执行前检查用户权限日志记录:记录请求耗时和参数通用处理:设置/清理线程局部变量实现需重写三个核心方法:preHandle()、postHandle()和afterCompletion()。
2025年-12月-13日
5 阅读
0 评论
Spring MVC
2025-12-13
请解释JVM类加载机制中的双亲委派模型,并说明如何打破这种机制
双亲委派模型是JVM类加载的核心机制:类加载请求优先委派给父加载器处理父加载器无法完成时才由子加载器自行加载保证核心类库安全性和避免重复加载打破双亲委派的方式:重写loadClass()方法使用线程上下文类加载器OSGi等模块化框架的实现
2025年-12月-13日
5 阅读
0 评论
JVM虚拟机
2025-12-13
Spring框架中如何实现多数据源的动态切换,并保证事务的正确性?
实现多数据源动态切换的核心步骤:继承AbstractRoutingDataSource实现动态数据源路由使用ThreadLocal存储当前线程数据源标识通过AOP切面在Service层方法执行前切换数据源结合@Transactional和TransactionManager管理事务使用ChainedTransactionManager或JTA解决跨数据源事务
2025年-12月-13日
5 阅读
0 评论
Spring框架
2025-12-13
Spring框架中如何解决构造器注入的循环依赖问题?
Spring无法直接解决构造器注入的循环依赖问题,因为它在Bean实例化阶段就会抛出BeanCurrentlyInCreationException。解决方案包括:改用Setter/Field注入:利用三级缓存机制解决使用@Lazy延迟加载:在构造参数上添加@Lazy注解重构代码设计:通过ApplicationContextAware或方法注入调整Bean初始化顺序:结合@DependsOn注解
2025年-12月-13日
5 阅读
0 评论
Spring框架
2025-12-13
MyBatis 多表关联查询中的延迟加载与 N+1 问题优化
解决 MyBatis 多表关联查询时的性能问题需要:理解延迟加载(Lazy Loading)的实现原理及配置方式识别 N+1 查询问题的产生场景与性能影响掌握 <association>/<collection> 的 fetchType 配置使用批量查询(Batch Loading)替代逐条查询根据场景选择 JOIN 查询或二次查询优化策略
2025年-12月-13日
5 阅读
0 评论
MyBatis
9
10
11
12
13