在 Spring 中通过配置类注入配置文件的值
我们在开发过程中,为了保证项目的灵活性,经常会选择将一些值放在配置文件中,并在代码中将它注入并使用。将值注入代码最常见的一种方法,则是使用 @Value()
注解搭配 SpEL 直接注入我们需要的属性。但是鲁迅先生有云:从来如此,便对吗?这里,我想介绍一个我个人认为更好的实践:通过配置类来注入属性的值。
我们在开发过程中,为了保证项目的灵活性,经常会选择将一些值放在配置文件中,并在代码中将它注入并使用。将值注入代码最常见的一种方法,则是使用 @Value()
注解搭配 SpEL 直接注入我们需要的属性。但是鲁迅先生有云:从来如此,便对吗?这里,我想介绍一个我个人认为更好的实践:通过配置类来注入属性的值。
这个博客从建站到现在,也差不多有两三年时间了,一直以来也都是一种 “用爱发电” 的状况,看到其他博主都开始通过接入广告联盟来挣零花钱,说不心动那是不可能的。所以就研究了一下怎么在这个博客里面接入 Google AdSense。
在使用本文介绍的方法前,请检查您的 NexT 主题版本是否为 v6.0.2
或后续版本,因为本文涉及的功能是在 v6.0.2
引入的。
今天我在从公司的 Maven 私库上下载依赖时,Maven 报出了 unable to find valid certification path to requested target
的问题,经查询是因为没有将私库使用的自签名证书导入到 Java 的 keystore。这里写一下我的两个解决方案,方便发生了同样问题的人参考。
在实际编写配置文件时,我们不可能保证所有相关的值都是一成不变的。有的值可能会根据运行时的状态来指定,也有可能它是类似 token 一样的机密信息,必须从一个可信渠道获取。为了应对这种情况,我们就需要在配置文件中引入变量。
最近公司需要用到一个名叫 Concourse CI
的 CI/CD
工具,那么我当然就要学习一下啦。顺便还能水一篇,啊不,写一篇博客,当作学习过程中的笔记。
一个 private
属性只能被它所在的类访问,这件事地球人都知道。但是,你有没有想过,这条规则有没有可能在某种情况下,会变得不成立?
本文将通过一个小例子,来演示怎么让 private
修饰符 “失效”,以及它为什么会 “失效”。
在 Spring 中,那些由 IoC 容器所管理的对象被称之为 bean。而一个 bean 的定义,其实只是一个 “蓝图”,指导着 Spring 如何去创建这样一个 bean。而在这个蓝图中,有一个属性叫做 “作用域”,它规定了这个 bean 的可见范围。这里我们看一下 Spring 的 bean 都有哪些作用域。
在使用 Spring Boot 时,最使我们收益的一个功能就是它的自动配置。但是,用了这么久的自动配置功能,有没有想过它是怎么实现的?本文将从源码入手,一步一步搞明白 Spring Boot 自动配置的原理。
在用 Git 管理包含中文的文件时,会出现类似这样的 “乱码”:
1 | $ git status |
解决方法是配置 Git 的全局属性 core.quotepath
为 false
,即执行命令 git config --global core.quotepath false
,然后再执行 git status
,就可以看到中文正常显示了:
1 | $ git status |
我们知道,使用 VisualVM 可以监控 Java 应用的各种运行时信息,包括资源占用、正在运行的线程等等。本文将简单介绍如何使用 VisualVM 的插件 Visual GC
来监控 Java 应用的垃圾回收情况。