Spring 源码分析(三)——Bean 的全生命周期流程

在 Spring 框架中,容器可以对 Singleton 作用域下的 bean 进行生命周期管理,对 bean 的创建、初始化和销毁进行控制。本文讲述 bean 的生命周期全过程,详细描述了生命周期过程中 spring 开放的自定义切入接口。

Spring 创建 Bean 的三种方式

在使用 Spring 框架后,对象以 Bean 的形式统一交给 IOC 容器去创建和管理。现阶段主流的方式是基于 SpringBoot 框架,基于注解的方式实现 Bean 的创建,但在原生 Spring 框架中其实存在三种创建 Bean 的方式。

保险系列(二)——什么是增额寿险

增额寿险是指保额可以持续递增的保险,细分可分为增额终身寿、年金险、养老金险等险种,定义都大同小异。这类险种都围绕“增额”这一点,明确声明了未来银行存款利率下行的趋势,以锁定复利3.5%为卖点销售保险。

保险系列(一)——谈谈商业保险的几大类别

保险是对生活的一种保障,最基础的就是人人必备的社保,属于社会的基础保障制度。但除了社保以外,许多人也会选择购买一些商业保险,以更充分的保障人身和财产安全。 商业保险里可以细分非常多个险种,本文简要聊聊主要的几种保险类别,从赔付和保障访问等方面简单介绍,方便按需购买。

OpenVPN 介绍以及服务端和客户端部署

虚拟专用网络(Virtual Private Network,VPN)可通过一个公用网络建立一个临时的、安全的链接,克服了公共网络缺乏保密性的弱点。借助VPN隧道可将物理分离的网络通过 internet 进行逻辑上的直接连接,延展了企业的内网网络,为远程办公、移动办公提供支持。 目前有很多用于搭建VPN的开源软件,例如 Shadowsocks (小飞机),但是好像逐渐的都失去了维护,本文基于 OpenVPN 介绍 VPN 的搭建过程。

Dream & Halo-Plus 发布

经过了漫长的准备,终于迎来了 Dream & Halo-Plus 的里程碑性发布!本次要介绍的是 Dream 2.3.0 和 Halo-Plus 1.0.0 两个指定版本的组件,那么 Halo-Plus 是什么呢? Halo-Plus 是小玖在 Halo 1.6.1 版本之上继续开发的 Halo 博客驱动程序版本,对 Halo 一些功能进行了优化,后续将在这个版本上持续开发,进行小功能迭代和版本问题修复。

Hexo写文章不方便?用上GitHub Actions真的是泰裤辣

对于做个人博客的小伙伴来说 HEXO 大家肯定都是非常熟悉的吧,这是一个静态的个人博客程序,通过 HEXO + GitHub Pages 搭建免费个人博客也是很多博主的选择。但相信肯定也会有些困恼,比如博客的渲染维护太麻烦了,我要在一台新设备上写博客并推送到 GitHub Pages 还要先安装 Nodejs、HEXO 和插件?有了 GitHub Pages 完全可以放开 HEXO 专注写博客。

单纯从收入看,什么样的事值得去做?

我们会因为很多原因去做一件事,可能是因为喜好、可能是生活必须,亦有可能仅仅为了收入。大多时候做某事并不是因为喜欢,而是出于某种无奈。可是,有些事并不值得投入的事,或许只是潜意识里因为不愿做某种付出(如消费),从而导致了错误的决策。

对三门问题的思考,应该细分两种情况

三门问题来源于一个娱乐节目。节目中有一位参与者和一位主持人,在参与者的面前有三扇关闭的门,其中两扇门的后面是空的,剩下一扇门后是一辆法拉利跑车。当参赛者选定了一扇门,但未去开启它的时候,节目主持人开启剩下两扇门的其中一扇,是空门。主持人其后会问参赛者要不要换另一扇仍然关上的门。 本质问题是换另一扇门会否增加参赛者赢得汽车的机会率?网上统一的答案是“会”,但是我发现有一个很重要的一点都被网上的文章忽略了:主持人他知道中奖的门吗?

算法 

生活小知识(二)——如何维护良好的个人征信

近期在招商银行 APP 上整了一连串的骚操作,先是申请了招联金融上闪电贷、好期待和小钱包等多个网贷平台的额度,再是自己先后在招行和建行 APP 上查询了数次征信报告,然后又申请了一张招行信用卡。一系列的骚操作终于把自己的征信搞花了,后面申请其他银行的信用卡就直接被秒拒了。吃一堑长一智,也学到了征信上一些要注意的点,有挺多是之前完全没考虑到的点,果断记录一下。

生活 

生活小知识(一)——信用卡基础知识以及办卡流程

准备办张信用卡,由于平时招商银行卡用的最多,所以选择了招商银行的信用卡。最初选的 YOUNG 青年卡白色金卡,后在业务员的推荐下换了免年费的 FRST 毕业生信用卡。刚办卡时对信用卡完全不了解,办完之后才感觉招商银行的信用卡权益好像都比较一般,自己对办结的这张卡也不是很满意,所以梳理了一下信用卡知识,后面有机会换张卡。

生活 

MySQL 数据库运维与管理相关命令

最开始,服务器部署使用的宝塔面板,数据库运维管理全都是在宝塔上可视化操作,并没有真正的面对数据库执行过命令。出于某些原因,后续不准备再继续使用宝塔面板,所以,记录一下关于 MySQL 数据库管理方面相关的方法和命令。

Spring 源码分析(二)——GenericBeanDefinition 分析

BeanDefinition 中存储着 Bean 的定义信息,它具有属性值、构造函数参数值以及具体实现 Bean 提供的进一步信息,在学习 Spring 的 Bean 初始化流程之前,还是非常有必要先了解一下 BeanDefinition。

Spring 源码分析(一)——Spring整体架构以及环境搭建

Spring框架是一个开放源代码的J2EE应用程序框架,由Rod Johnson发起,是针对bean的生命周期进行管理的轻量级容器(lightweight container)。 Spring解决了开发者在J2EE开发中遇到的许多常见的问题,提供了功能强大IOC、AOP及Web MVC等功能。Spring可以单独应用于构筑应用程序,也可以和Struts、Webwork、Tapestry等众多Web框架组合使用,并且可以与 Swing等桌面应用程序AP组合。因此, Spring不仅仅能应用于J2EE应用程序之中,也可以应用于桌面应用程序以及小应用程序之中。Spring框架主要由七部分组成,分别是 Spring Core、 Spring AOP、 Spring ORM、 Spring DAO、Spring Context、 Spring Web和 Spring Web MVC。

全文检索工具 Lucene 入门

最近在了解 Halo 博客后端源码,而全文检索是 Halo 做的比较差的一块内容,仅通过数据库的模糊查询来实现文章检索。对于搜索引擎之前了解的也不多,所以开始入门 Lucene 检索引擎,如果可以的话准备将该引擎应用于 Halo 之上。