依赖注入 C 应该在Java EE7中的限定符中@Nonbinding注释的目的是什么?
发布时间:2023-12-12 23:08:44 所属栏目:程序设计 来源:DaWei
导读: 我正在阅读
JavaEE 7中的CDI注入,特别是使用@Qualifier和@Produces将自定义数据类型注入到bean中.
我有以下代码从JBoss documentation到页面的末尾.
@Qualifier
@Retention(RUN
JavaEE 7中的CDI注入,特别是使用@Qualifier和@Produces将自定义数据类型注入到bean中.
我有以下代码从JBoss documentation到页面的末尾.
@Qualifier
@Retention(RUN
我正在阅读 JavaEE 7中的CDI注入,特别是使用@Qualifier和@Produces将自定义数据类型注入到bean中. 我有以下代码从JBoss documentation到页面的末尾. @Qualifier @Retention(RUNTIME) @Target({TYPE,METHOD,FIELD,PARAMETER}) public @interface HttpParam { @Nonbinding public String value(); } import javax.enterprise.inject.Produces; import javax.enterprise.inject.spi.InjectionPoint; class HttpParams { @Produces @HttpParam("") String getParamValue(InjectionPoint ip) { ServletRequest request = (ServletRequest) FacesContext.getCurrentInstance().getExternalContext().getRequest(); return request.getParameter(ip.getAnnotated().getAnnotation(HttpParam.class).value()); } }此限定符可以通过以下方式使用: @HttpParam("username") @Inject String username; @HttpParam("password") @Inject String password;我的问题是: > @Nonbinding注释是什么意思?为什么需要呢? >我可以在界面中定义多个方法.也就是说,是否允许以下内容? public @interface HttpParam { @Nonbinding public String value(); @Nonbinding public int value1(); }谢谢 >默认情况下,限定符参数用于将bean限定符与注入点限定符匹配. @Nonbinding参数不考虑匹配.>在这种情况下,producer方法生成的bean具有限定符@HttpParam(“”).如果参数是绑定的(即不是@Nonbinding),则@HttpParam(“”)与注入点上的@HttpParam(“username”)不匹配. >您可以拥有任意数量的限定符参数,绑定或非绑定. 请参阅CDI规范中的Typesafe resolution. (编辑:甘南站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 戴尔聚合网络适配器(Converged Network Adapter, CNA) 在RH
- 个性化主页以及聚合平台雅蛙3.0正式上线
- 正则表达式 后向引用
- content pipeline without volume texture support???!!!
- SafeNet 首次在单一认证平台上集成了安全的个人移动设备访问
- 利用文件锁,实现单一线程运行
- 设计模式 – 如何在DDD中正确设计模型的计算字段?
- 由SEDA,HALF-SYNC/HALF-ASYNC 和PIPELINE AND RESOURCE MA
- 围绕新闻的观点聚合是有价值的【新媒体】
- 辩论的目的不是让自己的意见获胜, 而是让团队找到更好的规则