java - 在没有任何价值的情况下使用 CDI @Named CDI 有什么意义吗?
问题描述
在没有值的情况下使用 CDI @Named 有什么意义吗?这不就等同于同时使用@Qualifier 和@Default 吗?
@Named
public class GifFileEditor implements ImageFileEditor {
解决方案
如果我没记错的话,@Named
没有value
元素值,当应用于托管 bean 时,会做三件事:
- 它应用具有简单类名
@Named
有效的限定符。value
- 它将有
beanName
问题的 bean 设置为简单的类名。 - 它(是唯一的限定符)不会导致隐式
@Default
限定符被删除。
现在,如果您以编程方式应用它,例如使用 ,BeanConfigurator#addBean
那么您负责决定自己实现哪些行为。
推荐阅读
- javascript - 为什么这个 JS 文件对 DOM 没有影响?
- javascript - JS 获取类的类名
- c - 为什么即使代码正确,该程序也会显示其他内容?
- python - 如何获取具有已知名称的列左侧的列名?
- excel - 如何创建一个函数来计算 Excel 中过滤行的平均值
- sql - 如何通过有子句在 SQL 中聚合
- google-apps-script - 无法设置复选框 DataValidation
- php - PHP Symfony Swift_Mailer 错误:# 无法从后端获取响应:格式错误的 MIME 标头:缺少冒号:%!!(MISSING)q(MISSING)#5 {main}
- python - Youtube_DL 没有属性'from_url'
- matplotlib - 这是什么剧情?