java configuration类_使用@Configuration编写自定义配置类

在Spring Boot框架中,推荐使用配置类的方式向容器中添加和配置组件

在Spring Boot框架中,通常使用@Configuration注解定义一个配置类,Spring Boot会自动扫描和识别配置类,从而替换传统Spring框架中的XML配置文件。

当定义一个配置类后,还需要在类中的方法上使用@Bean注解进行组件配置,将方法的返回对象注入到Spring容器中,并且组件名称默认使用的是方法名,当然也可以使用@Bean注解的name或value属性自定义组件的名称

演示:

(1)在项目下新建一个com.lagou.config包,并在该包下新创建一个类MyService,该类中不需要编写任何代码

```java

public class MyService {

}

```

创建了一个空的MyService类,而该类目前没有添加任何配置和注解,因此还无法正常被Spring Boot扫描和识别

(2) 在项目的com.lagou.config包下,新建一个类MyConfig,并使用@Configuration注解将该类声明一个配置类,内容如下:

```java

@Configuration // 定义该类是一个配置类

public class MyConfig {

@Bean // 将返回值对象作为组件添加到Spring容器中,该组件id默认为方法名

public MyService myService(){

return new MyService();

}

}

```

​ MyConfig是@Configuration注解声明的配置类(类似于声明了一个XML配置文件),该配置类会被Spring Boot自动扫描识别;使用@Bean注解的myService()方法,其返回值对象会作为组件添加到了Spring容器中(类似于XML配置文件中的标签配置),并且该组件的id默认是方法名myService

这些内容,是从拉勾教育的《Java工程师高薪训练营》里学到的,课程内容非常全面,还有拉勾的内推大厂服务,推荐你也看看。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Spring中,可以通过Java代码编写配置信息,而不是使用XML配置文件。其中一个关键的注解是@bean,它用于声明一个bean并将其添加到Spring应用程序上下文中。下面是@bean注解的详细用法: 1. 在Java配置使用@Bean注解声明一个bean方法,例如: ``` @Configuration public class MyConfiguration { @Bean public MyBean myBean() { return new MyBean(); } } ``` 2. 在上下文中使用该bean,例如: ``` ApplicationContext context = new AnnotationConfigApplicationContext(MyConfiguration.class); MyBean myBean = context.getBean(MyBean.class); ``` 3. 可以使用@Bean注解的属性来进一步自定义bean的创建方式,例如: ``` @Bean(initMethod = "init", destroyMethod = "cleanup") public MyBean myBean() { return new MyBean(); } ``` 上面的例子中,我们使用了initMethod属性和destroyMethod属性来指定bean的初始化方法和销毁方法。 4. 如果需要引用其他的bean,可以在@Bean注解中使用@Autowired注解,例如: ``` @Bean public MyBean myBean(OtherBean otherBean) { return new MyBean(otherBean); } ``` 上面的例子中,我们将OtherBean注入到MyBean中。 5. @Bean注解也可以用于导入其他Java配置,例如: ``` @Configuration public class MyConfiguration2 { @Bean public MyBean2 myBean2() { return new MyBean2(); } } @Configuration @Import(MyConfiguration2.class) public class MyConfiguration { @Bean public MyBean myBean(MyBean2 myBean2) { return new MyBean(myBean2); } } ``` 上面的例子中,我们使用@Import注解将MyConfiguration2导入到MyConfiguration中,并在MyBean中使用MyBean2。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值