Java @Inject和@ValueMapValue注释之间的差异

Java @Inject和@ValueMapValue注释之间的差异,java,model,aem,sling,Java,Model,Aem,Sling,在阅读有关使用模型的AEM文档时, 我无法找出字段上方@Inject和@ValueMapValue注释之间的区别 我尝试使用这两种方法,但它们看起来都一样,所以我肯定遗漏了一些东西。它们不一样,@Inject是一种通用注释,可从多个注入器获得值 @ValueMapValue是特定于注入器的注释,它将专门从valuemap注入器中拾取值。它相当于@Inject@Sourcevaluemap 当注入值仅从一个注入器可用时,它们的行为将是相同的,但是,如果两个不同的注入器提供相同的属性(如脚本绑定和v

在阅读有关使用模型的AEM文档时, 我无法找出字段上方@Inject和@ValueMapValue注释之间的区别

我尝试使用这两种方法,但它们看起来都一样,所以我肯定遗漏了一些东西。

它们不一样,@Inject是一种通用注释,可从多个注入器获得值

@ValueMapValue是特定于注入器的注释,它将专门从valuemap注入器中拾取值。它相当于@Inject@Sourcevaluemap

当注入值仅从一个注入器可用时,它们的行为将是相同的,但是,如果两个不同的注入器提供相同的属性(如脚本绑定和valuemap),则它们可能会注入不同的值。阅读更多信息。

它们不一样,@Inject是一种通用注释,可从多个注入器获取该值

@ValueMapValue是特定于注入器的注释,它将专门从valuemap注入器中拾取值。它相当于@Inject@Sourcevaluemap

当注入值仅从一个注入器可用时,它们的行为将是相同的,但是,如果两个不同的注入器提供相同的属性(如脚本绑定和valuemap),则它们可能会注入不同的值。阅读更多