【Spring学习笔记】依赖注入
2017-06-10 13:24
477 查看
每个java项目都是由很多的java类组成,细粒度到每个功能点都是由这些java类协同完成。
静/动态代理技术
在Spring依赖注入前工程师们为了降低代码耦合度试了很多的办法,其中被广泛使用的技术就是静/动态代理技术,这里就不做详细介绍。
静态与动态代理
Spring依赖注入
为了降低代码耦合度Spring引入了依赖注入技术,为了使java类协同作业需要Spring知道这些类的存在,所以我们需要将java类都注入到Spring容器中,这里Spring提供了两种实现方式。
基于xml:
在xml配置类中增加“<context:component-scan>”并且java类上增加@Component即可扫描到组件beanId默认为类名称首字母小写。
基于java配置:
需要在java类上增加@Configuration标识这个类为配置类,并且增加@ComponentScan来扫描组件,其中java类必须增加@Component标签来注入Spring容器中。
在java类中注入
javaBean接口
javaBean实现类
将多个java配置类组合到一起可以使用@Import标签例如:@Import(JavaCfg.class),将xml配置类导入到java配置类中使用@ImportResource(“classpath:xml名”),将java配置类引入到xml中<bean class="java配置类路径">
小结:
以上内容介绍了Spring的自动和显示注入,个人比较建议使用自动注入的方式,减少配置和维护成本。其中Java配置是一种新的配置方式,我也比较喜欢使用。
依赖注入是Spring中最核心的内容之一,必须全面掌握才能在之后的使用中游刃有余。
静/动态代理技术
在Spring依赖注入前工程师们为了降低代码耦合度试了很多的办法,其中被广泛使用的技术就是静/动态代理技术,这里就不做详细介绍。静态与动态代理
Spring依赖注入
为了降低代码耦合度Spring引入了依赖注入技术,为了使java类协同作业需要Spring知道这些类的存在,所以我们需要将java类都注入到Spring容器中,这里Spring提供了两种实现方式。一、组件自动扫描
Spring目前支持xml和java类两种注入方式,个人比较喜欢java类配置。基于xml:
在xml配置类中增加“<context:component-scan>”并且java类上增加@Component即可扫描到组件beanId默认为类名称首字母小写。
基于java配置:
需要在java类上增加@Configuration标识这个类为配置类,并且增加@ComponentScan来扫描组件,其中java类必须增加@Component标签来注入Spring容器中。
二、显示注入
在xml中增加<bean class="类的路径" id="bean的id">在java类中注入
javaBean接口
package com.example.readingli.inter; import com.example.readingli.bean.Book; public interface IReadingBook { /** * 通过书名获取 * @param bookName */ Book doGetreadingBooks(String bookName); }
javaBean实现类
package com.example.readingli.impl; import com.example.readingli.bean.Book; import com.example.readingli.inter.IReadingBook; public class ReadingBookImpl implements IReadingBook { @Override public Book doGetreadingBooks(String bookName) { return null; } }java配置类
package com.example.readingli.cfg; import org.springframework.context.annotation.Configuration; import com.example.readingli.impl.ReadingBookImpl; import com.example.readingli.inter.IReadingBook; @Configuration public class JavaConfig { public IReadingBook getBook(){ return new ReadingBookImpl(); } }组合配置
将多个java配置类组合到一起可以使用@Import标签例如:@Import(JavaCfg.class),将xml配置类导入到java配置类中使用@ImportResource(“classpath:xml名”),将java配置类引入到xml中<bean class="java配置类路径">
小结:
以上内容介绍了Spring的自动和显示注入,个人比较建议使用自动注入的方式,减少配置和维护成本。其中Java配置是一种新的配置方式,我也比较喜欢使用。
依赖注入是Spring中最核心的内容之一,必须全面掌握才能在之后的使用中游刃有余。
相关文章推荐
- spring 控制反转与依赖注入原理-学习笔记
- spring 控制反转与依赖注入原理-学习笔记
- spring学习笔记(1)-spring依赖注入的几种方式
- Spring.net 学习笔记二 依赖注入
- spring学习笔记3——注入依赖对象
- java学习笔记之Spring依赖注入和控制反转
- spring 依赖注入DI-个人学习笔记
- Spring学习笔记(5)----依赖注入的简单实现
- Spring学习笔记(5)----依赖注入的简单实现
- Spring学习笔记(二)依赖注入Dependency Injection
- Spring 学习笔记之依赖注入
- spring学习笔记-依赖注入
- Spring 学习笔记 - IOC/依赖注入
- Spring学习笔记(6)----编码剖析Spring依赖注入的原理
- Spring 学习笔记 ----依赖注入
- Spring 学习笔记 ----依赖注入
- Spring4学习笔记-泛型依赖注入
- Spring2.5学习笔记1-控制反转-依赖注入类型
- spring.net学习笔记1--依赖对象注入
- spring学习笔记整理--05(编码剖析Spring依赖注入的原理)