为什么在依赖注入上使用java进行注释
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为什么在依赖注入上使用java进行注释相关的知识,希望对你有一定的参考价值。
所以我第一次阅读依赖注入。我想我已经弄明白了,我已经理解了为php编写的一个例子。虽然,我正在阅读这个JAVA教程,但它坚持要添加注释。如果我打算在外部使用构造函数提供类依赖,那么为什么需要注释呢?另外,我正在阅读Spring框架,它还指出您需要注释。注释如何适应?任何信息表示赞赏。
答案
为什么需要注释?
无论您需要XML配置还是注释,这取决于您。 Spring使用注释作为XML的替代方法来进行声明性配置。
让我们举个例子,你想通过构造函数传递依赖。 Department对象依赖于Employee对象来创建它。 Employee对象有两个属性id和name。
- 通过使用注释你怎么做?
@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;
}
}
- 通过使用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>
- 通过使用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对象(代码片段