Sping注解如何开发
本篇内容主要讲解“Sping注解如何开发”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Sping注解如何开发”吧!
基本注解
@Configuration
作用: 标记在类上表示是一个配置类(相当于一个配置类)
@Bean
作用: 在容器中放一个bean相当于xml文件里的bean标签
@Configuration
public class DemoConfig {
@Bean
public Person person(){
Person person = new Person();
person.setPerson("china");
return person;
}
}
@scope
作用: 指定作用域
分为单例,多例等
@ComponentScan()
作用: 包扫描
@Configuration
@ComponentScan("com.zyh.pratice")
public class DemoConfig {
@Bean
public Person person(){
Person person = new Person();
person.setPerson("china");
return person;
}
}
指定报下的注解都可以被扫描到
过滤
excludeFilters:不包含
用法
@Configuration
@ComponentScan(value = "com.zyh.pratice", excludeFilters ={
@ComponentScan.Filter(type = FilterType.ASSIGNABLE_TYPE,value = IncludeBean.class),
})
public class DemoConfig {
includeFilters:包含
用法
@Configuration
@ComponentScan(value = "com.zyh.pratice", includeFilters ={
@ComponentScan.Filter(type = FilterType.ASSIGNABLE_TYPE,value = IncludeBean.class),
},useDefaultFilters = false)
注意 用includeFilters 时要将useDefaultFilters 设为false
FilterType
有这几种类型可选
@Conditional 无锡妇科医院 http://www.bhnnk120.com/
作用:条件注解,传入一个Condition的实现类,条件满足时才去加载bean
@Conditional(ConditionDemo.class)
public Bill bill(){
return new Bill();
}
Condition
作用位置
被bean注释的方法上:满足条件时注册该bean
类上:满足条件时注册该类
import
作用:导入指定的类
@Configuration
@ComponentScan
@Import(ImportDemo.class)
public class DemoConfig2 {
}
这样 ImportDemo就会被注册到容器中
ImportSelector
实现ImportSelector接口后,可以返回多个类,注册到容器中
ImportBeanDefinitionRegistrar
public class BeanDefinitionDemo implements ImportBeanDefinitionRegistrar {
public void registerBeanDefinitions(AnnotationMetadata annotationMetadata, BeanDefinitionRegistry beanDefinitionRegistry) {
BeanDefinition beanDefinition = new RootBeanDefinition(BeanDemo.class);
beanDefinitionRegistry.registerBeanDefinition("beanDemo",beanDefinition);
到此,相信大家对“Sping注解如何开发”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341