Spring框架(三)–注解开发与junit整合
文章目录
一、Spring注解开发
1.1 Spring原始注解
Spring是轻代码而重配置的框架,配置比较繁重,影响开发效率,所以注解开发是一种趋势,注解代替xml配置文件可以简化配置,提高开发效率。
Spring原始注解主要是替代的配置
首先还是先创建相应的接口和实现类:
在xml文件中进行相应的配置,进行依赖注入:
模拟一个web层应用:
运行可以得到结果:
接下来介绍如何用注解代替xml配置。
首先在使用注解开发时,需要在applicationCentext.xml中配置组件扫描,作用是指定哪个包及其子包下得Bean需要进行扫描以便识别使用注解配置得类,字段和方法。
然后将标签对应得内容用相应的注解替换:
运行usercontroller进行测试
repository和service与component作用相同,适用于不同层,可读性更强。
如果使用注解的模式 ,set方法可以不写。
只写@ Autowired也可注入,按照spring容器中的数据类型进行注入。
使用@Resource相当于@ Autowired+@Qulifier。
也可用@Value对普通数据类型进行注入
使用场景:
从propertier中获得相应值。
@Scope标注是单例还是多例。
初始化方法以及销毁方法。
1.2 Spring新注解
使用上面的注解还不能全部替代xml配置文件,还需要使用注解替代的配置如下:
非自定义的Bean的配置:<bean>
加载properties文件的配置:< context:property-placeholder >
组件扫描的配置:<context:component-scan >
引入其他文件:< import >
创建两个类用于测试
@Configuration标志该类是spring核心配置类,@ComponentScan用来代替原xml‘文件中的组件扫描配置,@import扩展其他配置类。
在DataSourceConfiguration中,@propertySource表示加载配置文件位置,用@Value加载进行注入,@Bean创建容器类,最终结果如下:
二、Spring集成junit
2.1原始Junit测试Spring的问题
2.2上述问题解决思路
2.3 Spring集成Junit步骤
1 导入spring集成Junit的坐标
2 使用@Runwith注解替换原来的运行期
3 使用@ContextConfiguration指定配置文件或配置类
4 使用@Autowired注入需要测试的对象
5 创建测试方法进行测试