首页
个人开发
工作相关
搜索
登录
搜索
colo
欲买桂花同载酒
累计撰写
1823
篇文章
累计收到
0
条评论
首页
栏目
首页
个人开发
工作相关
Gradio Web UI 界面
最新文章
2025-12-13
MyBatis 复杂动态 SQL 的性能优化与安全实践
在处理复杂动态SQL时,需要重点关注:使用<where>和<set>标签智能处理空条件通过<foreach>的batchSize分批次处理避免数据库IN列表限制优先使用#{}防止SQL注入,避免${}的误用利用二级缓存和fetchSize优化大数据查询使用<bind>预处理复杂表达式提升可读性
2025年-12月-13日
5 阅读
0 评论
MyBatis
2025-12-13
实现一个线程安全的阻塞队列并解释其工作原理
实现线程安全阻塞队列的核心要点:使用ReentrantLock保证操作原子性通过Condition实现精确的线程等待/唤醒机制维护两个条件变量:notEmpty(非空)和notFull(非满)数组循环存储实现队列数据结构在put()/take()方法中正确处理边界条件
2025年-12月-13日
5 阅读
0 评论
Java并发编程
2025-12-13
双重检查锁定实现单例模式在Java内存模型下的线程安全问题
在Java中实现线程安全的单例模式时,双重检查锁定需要配合volatile关键字才能确保线程安全:volatile作用:防止指令重排序,确保对象初始化完成前不被其他线程访问双重检查锁定:第一次检查避免不必要的同步,第二次检查确保单例唯一性关键代码:private static volatile Singleton instance;替代方案:使用静态内部类或枚举实现更简洁的线程安全单例
2025年-12月-13日
5 阅读
0 评论
Java内存模型
2025-12-13
实现一个高效的去重方法:保持List原始顺序并处理大数据量
核心解决方案:使用LinkedHashSet保持插入顺序去重时间复杂度 O(n),空间复杂度 O(n)大数据量时需考虑内存限制替代方案:Java 8+ 使用 Stream API 的 distinct()
2025年-12月-13日
5 阅读
0 评论
Java集合框架
2025-12-13
如何优化Spring Data JPA中N+1查询问题,并解释在复杂关联场景下的解决方案?
解决N+1查询问题的核心方法包括:使用@EntityGraph注解定义关联加载路径在JPQL中显式使用JOIN FETCH语句配置全局或局部的抓取策略(FetchType)结合@BatchSize优化懒加载性能使用DTO投影减少不必要的数据加载
2025年-12月-13日
5 阅读
0 评论
Spring Data JPA
2025-12-13
设计高安全性的OAuth2授权服务器并实现自定义JWT令牌增强
实现自定义JWT令牌增强的关键步骤:配置@EnableAuthorizationServer定义授权服务器实现TokenEnhancer接口添加自定义声明使用TokenEnhancerChain组合自定义增强器和JWT转换器在资源服务器配置匹配的JwtAccessTokenConverter遵循安全最佳实践:密钥管理、声明最小化、令牌有效期控制
2025年-12月-13日
5 阅读
0 评论
Spring Security
2025-12-13
Spring AOP中如何实现自定义注解的环绕通知,并处理嵌套代理场景下的重复执行问题?
在Spring AOP中实现自定义注解的环绕通知并避免嵌套代理重复执行,需要:定义自定义注解(如@Auditable)创建切面使用@Around拦截注解通过ThreadLocal状态跟踪防止嵌套重复执行正确处理代理暴露(exposeProxy)使用JoinPoint.proceed()控制执行流程关键点:状态跟踪需考虑线程安全和资源清理,避免内存泄漏。
2025年-12月-13日
5 阅读
0 评论
Spring AOP
2025-12-13
Spring Bean 的作用域有哪些?Singleton 和 Prototype 的区别是什么?
Spring Bean 有五种核心作用域:Singleton:默认作用域,整个容器中只有一个实例Prototype:每次请求都创建新实例Request(Web 环境):每个 HTTP 请求一个实例Session(Web 环境):每个 HTTP 会话一个实例Application(Web 环境):ServletContext 生命周期内一个实例Singleton 与 Prototype 的区别:Singleton 全局共享同一实例,Prototype 每次创建新实例Singleton 由容器管理生命周期,Prototype 创建后由调用者管理Singleton 适合无状态组件,Prototype 适合有状态组件
2025年-12月-13日
5 阅读
0 评论
Spring框架
2025-12-13
Hibernate延迟加载机制及LazyInitializationException的解决方案
Hibernate延迟加载通过代理对象延迟数据加载,但脱离Session访问会导致LazyInitializationException。解决方案包括:在Session关闭前初始化所需数据(Hibernate.initialize())使用Open Session in View模式保持Session开放配置FetchType.EAGER强制立即加载(慎用)DTO投影查询避免实体代理
2025年-12月-13日
5 阅读
0 评论
Hibernate
2025-12-13
ArrayList 的遍历与元素删除
在遍历 ArrayList 时安全删除元素的方法:使用 Iterator 的 remove() 方法可避免 ConcurrentModificationException或使用 for 循环倒序遍历删除防止索引错位禁止在 foreach 循环中直接调用 ArrayList 的 remove()
2025年-12月-13日
5 阅读
0 评论
Java集合框架
32
33
34
35
36