为什么在依赖注入上使用java进行注释

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为什么在依赖注入上使用java进行注释相关的知识,希望对你有一定的参考价值。

所以我第一次阅读依赖注入。我想我已经弄明白了,我已经理解了为php编写的一个例子。虽然,我正在阅读这个JAVA教程,但它坚持要添加注释。如果我打算在外部使用构造函数提供类依赖,那么为什么需要注释呢?另外,我正在阅读Spring框架,它还指出您需要注释。注释如何适应?任何信息表示赞赏。

答案

为什么需要注释?

无论您需要XML配置还是注释,这取决于您。 Spring使用注释作为XML的替代方法来进行声明性配置。

让我们举个例子,你想通过构造函数传递依赖。 Department对象依赖于Employee对象来创建它。 Employee对象有两个属性id和name。

  1. 通过使用注释你怎么做? @Configuration @ComponentScan("com.example.spring") public class Config { @Bean public Employee employee() { return new Employee("1", "John"); } }

现在创建Department对象:

@Component
public class Department {

    @Autowired
    public Department (Employee employee) {
        this.employee= employee;

    }
}
  1. 通过使用XML: <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd"> <bean id="department" class="com.example.spring.Department"> <constructor-arg index="0" ref="employee"/> </bean> <bean id="employee" class="com.example.spring.Employee"> <constructor-arg index="0" value="1"/> <constructor-arg index="1" value="John"/> </bean>
  2. 通过使用Java:你可以做类似的事情 Employee employee=new Employee("1","John"); Department dept=new Department(employee);

重点是,这取决于你想做什么。

看看这个问题Xml configuration versus Annotation based configuration

以上是关于为什么在依赖注入上使用java进行注释的主要内容,如果未能解决你的问题,请参考以下文章

spring练习,在Eclipse搭建的Spring开发环境中,使用set注入方式,实现对象的依赖关系,通过ClassPathXmlApplicationContext实体类获取Bean对象(代码片段

史上最好用的依赖注入框架Google Guice转

Play 框架依赖注入

Spring@PostConstruct和@PreDestroy注解详解

Android 片段和依赖注入

Android片段和依赖注入