依赖注入(DI)和控制翻转(IOC)
依赖注入在书上说的是容器负责创建对象和维护对象间的依赖关系,而不是通过对象本身负责自己的创建和解决自己的依赖。DI和IOC在spring环境下是同等概念。
书上说的每个字都对,也认识,但是连起来读着对初学者就相对不太友好了,可以说是完全看不懂。经过我自己的学习,似乎明白了一点。之前new对象和对对象进行修改或者调用时,都是由程序员本身去一对一创建。所谓的控制翻转,就是把new对象的权利转交给了spring框架,让spring框架来帮助管理。可以说是移交了控制权,所以控制翻转了。
声明Bean的注解:
@Component组件 ,没有明确的角色
@Service 在service层使用(即业务逻辑层)
@Repository 在DAO层使用(即数据访问层,即对数据库进行操作的类)
@Control 在MVC——》Spring MVC层使用(即表现层)
注入Bean的注解:
@Autowired 自动注入 默认按类型装配(by type)
@Resource默认按名称装配,当找不到与名称匹配的bean才会按类型装配。
Java配置:
java配置可以完全提到xml配置
@Configuration 声明当前类是配置类,相当于XML文件。
@Bean 注解在方法上,声明当前方法的返回值为Bean。
例如
@Configuration
public class JavaConfig{
@Bean
public UseFunctionService useFunctionService(FunctionService functionService){
UseFunctionService useFunctionService = new UseFunctionService();
useFunctionService.setFunctionService(functionService);
return useFunctionService;
}
}
网友评论