Java程序员自动组件注入的几种方式你会哪一种?

Java程序员自动组件注入的几种方式你会哪一种?

创新互联公司主要从事做网站、网站设计、网页设计、企业做网站、公司建网站等业务。立足成都服务汤阴,十载网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:13518219792

Java程序员自动组件注入的几种方式你会哪一种?
Java程序员在开发的时候,一般都会遇到组件注入这个问题,回想起当年刚进入Java程序员这个行业的时候也遇到过这样的问题,那么我们今天就来讨论一下组件注入会有哪几种方式,希望能帮助大家快速攻破这个技术难点。

注入依赖对象可以采用手工装配或自动装配,在实际应用中建议使用手工装配,因为自动装配会产生未知情况,开发人员无法预见最终的装配结果。

问题1:@Autowired 、@Inject 、@Resource 的区别

@Autowired

[if !supportLists]· [endif]Spring标准

[if !supportLists]· [endif]按照类型注入(ByType)

[if !supportLists]· [endif]AutowiredAnnotationBeanPostProcessor对其进行处理

[if !supportLists]· [endif]支持属性、set方法、构造方法注入,可以联合@Qualifier完成ByName,联合@Primary解决同类多 Bean冲突(不推荐,除非迫不得已)

[if !supportLists]· [endif]拥有required属性判定空

[if !supportLists]· [endif]构造函数只能有一个,构造方法注入@Autowire可以不带

[if !supportLists]· [endif]@Configuration中也可以不带@Autowire

[if !supportLists]· [endif]推荐set方法、构造方法注入

@Resource

[if !supportLists]· [endif]JSR250标准

[if !supportLists]· [endif]按照名称注入(ByName)

[if !supportLists]· [endif]CommonAnnotationBeanPostProcessor对其进行处理

[if !supportLists]· [endif]不支持@Qualifier、@Primary

[if !supportLists]· [endif]不支持required属性判定空

@Inject

[if !supportLists]· [endif]JSR330

[if !supportLists]· [endif]按照名称注入(ByType)

[if !supportLists]· [endif]支持@Qualifier、@Primary

[if !supportLists]· [endif]不支持required属性判定空

[if !supportLists]· [endif]需要依赖

<dependency>

    <groupId>javax.inject</groupId>

    <artifactId>javax.inject</artifactId>

    <version>1</version>

</dependency>

问题2:下面代码有没有问题?

@Configuration

public class WorkerConfiguration {

@Autowired

Environment environment;

public WorkerConfiguration(){

    System.out.println(environment.getProperty("os.name"));

}

@Bean

public Dept dept() {

    System.out.println("dept>>>>>>>>>>>>>>>>>>>");

    return new Dept();

}

}

当前文章:Java程序员自动组件注入的几种方式你会哪一种?
当前URL:https://www.cdcxhl.com/article46/jddphg.html

成都网站建设公司_创新互联,为您提供商城网站动态网站自适应网站静态网站营销型网站建设定制网站

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

h5响应式网站建设