前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Spring零配置之@Configuration注解详解。

Spring零配置之@Configuration注解详解。

作者头像
Java技术栈
发布2018-03-30 11:32:07
1.3K0
发布2018-03-30 11:32:07
举报
文章被收录于专栏:Java技术栈

@Configuration介绍

Spring3.0之前要使用Spring必须要有一个xml配置文件,这也是Spring的核心文件,而Spring3.0之后可以不要配置文件了,通过注解@Configuration完全搞定。

@Configuration即用来代替Spring配置文件的,它就是一个@Component组件,接收一个value值也就是bean的名字,value可以不填。

@Configuration使用

下面是一个使用实例,创建了一个userService和accountService的实例,accountService实例引用userService实例。

@Configuration

@ComponentScan(basePackages = { "com.test.web" })

@Import(UserConfg.class)

@ImportResource(locations = {"classpath:config/spring-beans.xml"})

public class MainConfg {

@Bean(name = "userService", initMethod = "init", destroyMethod = "destroy")

@Scope("singleton")

public UserService userService() {

return new UserService();

}

@Bean

public AccountService accountService(UserService userService) {

AccountService as = new AccountService();

as.setUserService(userService);

return as;

}

}

注解说明

@Configuration:代表这个类是一个配置类。

@ComponentScan:用来扫描指定包下面的注解类。

@Import:用来导入其他的@Configuration配置类。

@ImportResource:用来导入xml配置文件,比如某些配置一定要xml配置。

@Bean:用来定义一个bean,可以指定初始、销毁方法,及bean范围等。

这些注解都在spring-context包下,还有其他注解用来解放xml形式的配置,大量xml配置可java配置化,只要定义好,Spring会自动扫描包下面的@Configuration注解的配置文件类来装配。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2017-08-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Java技术栈 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档