当前位置: 首页 > news >正文

建个人网站怎么赚钱吗建设部网站资质升级公示

建个人网站怎么赚钱吗,建设部网站资质升级公示,广东深圳网,中企动力销售好出单吗Java EE6的最大承诺之一就是简化了依赖注入的使用。 他们做到了#xff0c;使用CDI 。 CDI代表Java EE的上下文和依赖注入#xff0c;它提供了一个基础集#xff0c;用于在企业应用程序中应用依赖注入。 在CDI之前#xff0c;EJB 3还引入了依赖注入#xff0c;但这有点基础… Java EE6的最大承诺之一就是简化了依赖注入的使用。 他们做到了使用CDI 。 CDI代表Java EE的上下文和依赖注入它提供了一个基础集用于在企业应用程序中应用依赖注入。 在CDI之前EJB 3还引入了依赖注入但这有点基础。 您可以将EJB全状态或无状态注入另一个EJB或Servlet如果您的容器支持。 当然并不是每个应用程序都需要EJB的这就是CDI如此受欢迎的原因。 首先我已经举了这个例子。 有一个Payment接口和2个实现。 现金付款和签证付款。 我希望仍然可以使用相同的界面选择我注入的女巫付款类型 public interface Payment {void pay(BigDecimal amount); } 这是两个实现 public class CashPaymentImpl implements Payment {private static final Logger LOGGER Logger.getLogger(CashPaymentImpl.class.toString());Overridepublic void pay(BigDecimal amount) {LOGGER.log(Level.INFO, payed {0} cash, amount.toString());} }public class VisaPaymentImpl implements Payment {private static final Logger LOGGER Logger.getLogger(VisaPaymentImpl.class.toString());Overridepublic void pay(BigDecimal amount) {LOGGER.log(Level.INFO, payed {0} with visa, amount.toString());} } 要注入接口我们使用Inject批注。 注释基本上按照它说的去做。 它注入一个组件该组件在您的应用程序中可用。 Inject private Payment payment; 当然您看到的消息来自一英里远这是行不通的。 该容器具有我们的Payment接口的2个实现因此他不知道要注入哪个。 类型[Payment]类型的依赖关系在注入点[[field] Inject private be.styledideas.blog.qualifier.web.PaymentBackingAction.payment]处带有限定符[Default] 因此我们需要某种限定符来指出我们想要的实现。 CDI提供Named批注使您可以为实现命名。 Named(cash) public class CashPaymentImpl implements Payment {private static final Logger LOGGER Logger.getLogger(CashPaymentImpl.class.toString());Overridepublic void pay(BigDecimal amount) {LOGGER.log(Level.INFO, payed {0} cash, amount.toString());} }Named(visa) public class VisaPaymentImpl implements Payment {private static final Logger LOGGER Logger.getLogger(VisaPaymentImpl.class.toString());Overridepublic void pay(BigDecimal amount) {LOGGER.log(Level.INFO, payed {0} with visa, amount.toString());} } 现在当我们更改注入代码时我们可以指定所需的实现。 Inject private Named(visa) Payment payment; 这行得通但是灵活性受到限制。 当我们想重命名Named参数时我们必须在使用它的每个地方都对其进行更改。 也没有重构支持。 有一个更好的选择可以使用Qualifier注释使用定制注释。 让我们稍微更改一下代码。 首先我们创建新的注释类型。 java.lang.annotation.Documented java.lang.annotation.Retention(RetentionPolicy.RUNTIME) javax.inject.Qualifier public interface CashPayment { }java.lang.annotation.Documented java.lang.annotation.Retention(RetentionPolicy.RUNTIME) javax.inject.Qualifier public interface VisaPayment { } 添加到批注中的Qualifier批注使此批注可由容器发现。 现在我们可以简单地将这些注释添加到我们的实现中。 CashPayment public class CashPaymentImpl implements Payment {private static final Logger LOGGER Logger.getLogger(CashPaymentImpl.class.toString());Overridepublic void pay(BigDecimal amount) {LOGGER.log(Level.INFO, payed {0} cash, amount.toString());} }VisaPayment public class VisaPaymentImpl implements Payment {private static final Logger LOGGER Logger.getLogger(VisaPaymentImpl.class.toString());Overridepublic void pay(BigDecimal amount) {LOGGER.log(Level.INFO, payed {0} with visa, amount.toString());} } 现在我们唯一需要做的就是将我们的注入代码更改为 Inject private VisaPayment Payment payment; 现在当我们对限定符进行更改时我们将获得不错的编译器和重构支持。 这也为API或特定于域的语言设计增加了灵活性。 参考 Java EE6 CDI来自Styled Ideas Blog的 JCG合作伙伴 Jelle Victoor的 命名组件和限定词 。 相关文章 Java EE6装饰器在注入时装饰类 Java EE6事件JMS的轻量级替代品 Java EE中的配置管理 基本的EJB参考注入和查找 Java模块化方法–模块模块模块 Java EE过去现在和云7 Java教程和Android教程列表 翻译自: https://www.javacodegeeks.com/2011/10/java-ee6-cdi-named-components-and.html
http://www.zqtcl.cn/news/97064/

相关文章:

  • 网站关键词优化推广旅游类网站开发开题报告范文
  • 官方网站营销拟在建项目信息网官网
  • 沈阳做微信和网站的公司湛江网站建设公司哪家好
  • 网站 开发逻辑电话销售电销系统
  • 有哪些做兼职的设计网站有哪些工作可以用asp做哪些网站
  • 装修网站推广方案东莞网站建设0086
  • 知名营销网站开发高端网站建设如何收费
  • 佛山网站建设邓先生沈阳做网站找黑酷科技
  • 网站建设 排名下拉请教个人主页网站怎么做啊
  • 揭阳网站制作教程安阳seo公司
  • 网站运营管理教材wordpress 评论框插件
  • 免费做手机网站有哪些网页怎么制作链接
  • 浙江省建设工程质量协会网站wordpress只在首页设置关键词
  • 网站开发选题申请理由东莞网站建议
  • 阿里巴巴国际站运营培训商务网站的建设步骤
  • 有哪几个平台做网站专业的网站建设流程
  • 网站的回到顶部怎么做字体艺术设计在线生成
  • 物流营销型网站案例分析渭南专业做网站
  • 织梦音乐网站接推广任务的平台
  • 网站建设设计团队平面设计主要做什么ui
  • 站长工具seo综合查询广告和京东一样的网站
  • 柳州做网站的企业做黑彩网站
  • 商城网站开发那家好网站建设知识平台
  • 莱州网站定制flash网站cms
  • 经营范围里的网站建设直播系统程序
  • 58同城类似的网站开发wordpress 地方生活
  • wordpress 七牛ossseo系统
  • 郑州做网站 熊掌号太原今天最新通知
  • 文章网站如何与压力做足球比赛直播间在线观看
  • 越秀网站建设优化呼和浩特住房和城乡建设部网站