springboot的5种读取配置方式(2):通过config读取指定文件

2.通过config读取指定文件:

由于springboot的4种读取配置方式(1):直接读取bean  中bean的数量多,而且不好管理,所以可以采取config方式,

可以把同一类的bean进行统一管理,然后通过config指定读取配置文件

/**
 * 学生实体类
 * Created by ASUS on 2018/5/4
 */
public class Student {
    private String name;
    private  int age;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public Student(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public Student() {
    }

    @Override
    public String toString() {
        return "Student{" +
                "name='" + name + '\'' +
                ", age=" + age +
                '}';
    }
}


/**
 * 把所有的学生bean集中管理类
 * Created by ASUS on 2018/5/4
 */

//默认从根目录扫描
@Configuration
public class StudentBeans {

    /**
     * 声明bean,name为s1
     * @return
     */
    @Bean(name = "s1")
    public Student s1(){
        Student student=new Student("哈哈",12);
        return  student;

    }

    /**
     * 声明bean,name为ss
     * @return
     */
    @Bean(name = "ss")
    public Student ss(){
        Student student=new Student("哈哈",18);
        return  student;

    }
}
/**
 * springboot启动类
 *
 */

@SpringBootApplication
//扫描指定包路径
@ComponentScan("springboot.config")
public class Application
{
    public static void main( String[] args )
    {
        ApplicationContext applicationContext= SpringApplication.run(Application.class,args);
        Student student= (Student) applicationContext.getBean("s1");
        Student student1= (Student) applicationContext.getBean("ss");

        System.out.println("message:"+student.toString());

        System.out.println("message:"+student1.toString());
    }


}

测试结果:

注:bean管理类要注解为@Configuration(默认从根目录扫描),启动类要加@ComponentScan("指定扫描目录路径")

我的座右铭:不会,我可以学;落后,我可以追赶;跌倒,我可以站起来;我一定行。

猜你喜欢

转载自blog.csdn.net/weixin_39220472/article/details/80193537
今日推荐