1.
configuation:
目标:给容器添加组件,所谓添加组件,也就是添加自定义的类,然后给类注入属性
给出一个类:
public class role {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
然后我们在别的类中创建这个类,并且交给Springboot管理
/*
* @Configuration --->告诉Spring容器这是一个配置类,类似于bean.xml,里面写的都是需要创建的对象
* * */
@Configuration
public class use {
@Bean("role")
public role role(){
return new role();
}
}
请注意,我们需要在方法中添加一个 bean 注解,并且通过这个注解里面返回id ,如果自己不写的话,就会自动的将方法名作为返回的id,然后我们可以通过这个id,从容器中获取到
@SpringBootApplication(scanBasePackages = "org.example")
public class Main {
public static void main(String[] args) {
// 获取容器,然后我们就可以得到容器里面的对象了
ConfigurableApplicationContext run = SpringApplication.run(Main.class,args);
//从容器中获取组件
role role = run.getBean("role",role.class);
role.setName("绘梨衣");
System.out.println(role);
role.print();
}
}
这样我们就可以实现对象的创建。
我们来将过程梳理一下:
我们现在有一个实体类,实现了封装,有get set tostring方法,有处理的方法。
然后我们需要在业务中使用,通过容器创建对象,调用方法,我们可以创建一个配置类
:
@Configuration
在配置类中,通过方法创建对象,并且通过@Bean标签注册到容器中进行使用。
请注意:我们这样的组件是单实例,也就是容器中只有一个,我们可以多次获取来判断一下。
单实例的意思是 容器中只有一个。那么我们可以通过
proxyBeanMethods属性来变为多实例,
我们通过bean.XXX方法可以 创建对象,同时可以创建多个。
import组件,可以导入组件,并且导入第三方包的组件,并且调用无参的构造方法进行创建对象ConfigurationProperties(prefix = "role")可以从applicationproperties中读取配置文件