您的位置:首页 > 编程语言

基于组件的编程CDI技术(概述)

2016-11-04 16:32 441 查看


1.容器的概念

  容器:一个组件管理器,我们可以向容器注册组件,或者向容器申请一个特定状态的组件。 常见的容器:Tomcat、Weld、spring等。


2.CDI

   对于java EE上下文和依赖注入(CDI)1作为java EE 6平台的一部分,并已迅速成为一个最重要和最受欢迎的平台组件。

  CDI定义了一套强大的配套服务,帮助提高应用程序的代码结构。

良好组织的组件生命周期管理:方便性

类型安全的依赖注入:高可靠性

基于事件通知机制的组件通讯:充分解耦

优雅的组件拦截器(Interceptor/Decorator):业务逻辑处理

扩展容器功能的 SPI:可扩展性

CDI 的核心思想:类型安全的松耦合


特性:对于类、接口、以及注解等绝大多数都视为数据类型。


与Spring的不同是,Spring是通过id别名来区分对象,编译时无法检查(非语法错误),CDI通过注解限定符(类型的不同)来区分对象,在编译的同时就可以发现,而不是在使用的时,候更加安全。


3.关于Weld组件式编程

可以参照附件学习Weld 具体实例可以去仓库下载weld-2.4
reference guide,对源码进行更改学习。


4.Wildfly的安装和配置


下载 wildfly 10.1 from:http://www.wildfly.org,内置 weld2.3.5


1

2

3

4

设置环境变量:export
JBOSS_HOME=$HOME/devel/wildfly

启动
wildfly:
$JBOSS_HOME/bin/standalone.sh

停止
wildfly:
$JBOSS_HOME/bin/jboss-cli.sh
–connect:shutdown

 


下载 weld 2.3.4 from: weld 2.3.5 download

解压缩到$HOME/devel
建立符号链接:ln-sweld-2.3.5.Finalweld



Wildfly的使用

通过bin目录下的standalone.sh PS:注意与其他服务的端口冲突问题

关闭Wildfly的方式由两种 »1.通过ctrl+c关闭 »2.通过运行jboss-cli.sh关闭

运行相应项目的时候,将war包放到对应的standalone/deploymants目录下部署运行
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java