Aware
XXXAware在Spring里表示对XXX可以感知,通俗点解释就是:如果在某个类里边想要使用spring的一些东西,就可以通过实现XXXAware接口告诉Spring, Spring看到后就会给你送过来,而接收的方式是通过实现接口唯一的方法setXXX。
这里可以有一个概念,就是所有接口定义set方法并让你来实现set方法的都是可以获取到某一个对象,它一定是在某个框架的某个地方调用了这个方法,然后把想要的对象给set进来了
栗子:
比如一个类需要使用当前的ApplicaitonContext或者Environment
可以实现ApplicationContextAware接口,然后实现setApplicaitonContext(),就可以得到ApplcationContext
Capable
Capable,顾名思义,就是具有某种能力。
EnvironmentCapable,顾名思义,就是当前具有Environment的能力,也就是可以提供
Environment.所以EnvironmentCapable唯一的方法就是Environment getEnvironment(); 用于实现EnvironmentCapable接口的类,就是告诉Spring它可以提供Environment,当Spring需要Environment的时候就会调用其getEnvironment方法跟它要。
同样这里的Capable也可以这么理解:就是所有接口定义get方法并让你来实现get方法的都是可以提供一个对象,它一定是在某个框架的某个地方调用了该方法,从你这个提供者这里get了某个对象。
原文地址:https://www.cnblogs.com/Jarris/p/10125980.html
时间: 2024-10-19 18:12:24