Springboot中的@Import注解~

@Import注解是Spring框架中的注解之一,用于导入其他配置类或者组件

@Import注解的作用有以下几点:

  1. 导入其他配置类:可以使用@Import注解导入其他的配置类,将其加入到当前配置类中,从而可以共享配置信息

  2. 导入其他组件:可以使用@Import注解导入其他的组件,将其加入到当前的容器中,从而可以使用这些组件

  3. 导入自动配置类:在Spring Boot中,可以使用@Import注解导入自动配置类,从而启用自动配置。

举例:

package com.springboot;

import ch.qos.logback.core.db.DBHelper;
import com.springboot.bean.User;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.context.annotation.Import;

import java.util.Arrays;

//User为我们创建的一个组件,
@Import({
    
    User.class,DBHelper.class,MyConfig.class})
@SpringBootApplication
public class MainApplication {
    
    
    public static void main(String[] args) {
    
    
      ConfigurableApplicationContext run= SpringApplication.run(MainApplication.class,args);
      //通过getBeanNamesForType方法获取组件的类型
      String s= Arrays.toString(run.getBeanNamesForType(User.class));
      System.out.println(s);
      //获取第三方jar包提供的自动装配类DBHelper
       DBHelper dbHelper=run.getBean(DBHelper.class);
       System.out.println(dbHelper);
       //获取我们创建的其他配置类---MyConfig
       MyConfig myConfig=run.getBean(MyConfig.class);
       System.out.println(myConfig);
    }
}

输出:

//user01为我们在MyConfig配置类中添加的组件,类型为User,名称为user01
//com.springboot.bean.User:为我们创建的组件User
[user01, com.springboot.bean.User]
ch.qos.logback.core.db.DBHelper@7da10b5b
com.springboot.MyConfig@219f4597

猜你喜欢

转载自blog.csdn.net/m0_64365419/article/details/133549487