![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Spring
楼下小黑哥
公号:小黑十一点半,欢迎关注
展开
-
实战开发,使用 Spring Session 与 Spring security 完成网站登录改造!!
上次小黑在文章中介绍了四种分布式一致性 Session 的实现方式,在这四种中最常用的就是后端集中存储方案,这样即使 web 应用重启或者扩容,Session 都没有丢失的风险。 今天我们就使用这种方式对 Session 存储方式进行改造,将其统一存储到 Redis 中。 实现方案 我们先来想一下,如果我们不依靠任何框架,自己如何实现后端 Session 集中存储。 这里我们假设我们的网站除了某些页面,比如首页可以直接访问以外,其他任何页面都需要登录之后才能访问。 如果需要实现这个需求,这就需要我们对每个原创 2020-08-19 07:41:54 · 821 阅读 · 0 评论 -
没想到,这么简单的线程池用法,深藏这么多坑!
又又又踩坑了 生产有个对账系统,每天需要从渠道端下载对账文件,然后开始日终对账。这个系统已经运行了很久,前两天突然收到短信预警,没有获取渠道端对账文件。 ps:对账系统详细实现方式:对账系统设计与实现 本以为又是渠道端搞事情,上去一排查才发现,所有下载任务都被阻塞了。再进一步排查源码,才发现自己一直用错了线程池某个方法。 由于线程创建比较昂贵,正式项目中我们都会使用线程池执行异步任务。线程池,使用池化技术保存线程对象,使用的时候直接取出来,用完归还以便使用。 虽然线程池的使用非常方法非常简单,但是越简单原创 2020-06-29 07:34:31 · 975 阅读 · 0 评论 -
羞,Spring Bean 初始化/销毁竟然有这么多姿势
文章来源:http://1t.click/bfHN 一、前言 日常开发过程有时需要在应用启动之后加载某些资源,或者在应用关闭之前释放资源。Spring 框架提供相关功能,围绕 Spring Bean 生命周期,可以在 Bean 创建过程初始化资源,以及销毁 Bean 过程释放资源。Spring 提供多种不同的方式初始化/销毁 Bean,如果同时使用这几种方式,Spring 如何处理这几...原创 2019-11-25 23:05:23 · 341 阅读 · 0 评论 -
缘起 Dubbo ,讲讲 Spring XML Schema 扩展机制
Dubbo 系列文章第一篇,Dubbo 如何使用 XML 将 Spring 集成进来?原创 2019-06-16 16:51:42 · 101 阅读 · 0 评论 -
Spring 注解编程之模式注解
上篇文章研究 Spring XML Schema 扩展进制,这段时候一直研究 Spring 注解编程的原理。原本以为有了之前研究基础,可以很快理解注解编程原理。没想到这个过程非常困难,注解编程源码难度是 XML 扩展好几倍。o(╥﹏╥)o。 Spring 框架中有很多可用的注解,其中有一类注解称模式注解(Stereotype Annotations),包括 @Component, @S...原创 2019-07-01 17:21:17 · 136 阅读 · 0 评论 -
Spring 注解编程之 AnnotationMetadata
在上篇文章 Spring 注解编程之模式注解 中我们讲到 Spring 模式注解底层原理,依靠 AnnotationMetadata 接口判断是否存在指定元注解。 这篇文章我们主要深入 AnnotationMetadata,了解其底层原理。 Spring 版本为 5.1.8-RELEASE AnnotationMetadata 结构 使用 IDEA 生成 AnnotationMetadata...原创 2019-07-13 16:35:08 · 523 阅读 · 0 评论 -
Spring 注解编程之注解属性别名与覆盖
前两篇文章咱聊了深入了解了 Spring 注解编程一些原理,这篇文章我们关注注解属性方法,聊聊 Spring 为注解的带来的功能,属性别名与覆盖。 注解属性方法 在进入了解 Spring 注解属性功能之前,我们先看一个正常 Java 注解。 在注解中,属性方法与其他类/接口方法写法类似,但是存在一些区别。 注解属性方法的返回类型仅限为八种基本类型(包装类不支持),字符串,class,enum,A...原创 2019-07-20 18:00:24 · 218 阅读 · 0 评论