JSP 开发之Spring Boot 动态创建Bean
JSP开发之SpringBoot动态创建Bean
1、通过注解@Import导入方式创建
a、新建MyImportBeanDefinitionRegistrar注册中心
Java代码
importorg.springframework.beans.factory.support.BeanDefinitionRegistry;
importorg.springframework.beans.factory.support.GenericBeanDefinition;
importorg.springframework.context.annotation.ImportBeanDefinitionRegistrar;
importorg.springframework.core.type.AnnotationMetadata;
importweb0.services.Myservice;
publicclassMyImportBeanDefinitionRegistrarimplementsImportBeanDefinitionRegistrar{
protectedStringBEAN_NAME="myservice";
publicvoiddynamicConfiguration()throwsException{
}
@Override
publicvoidregisterBeanDefinitions(AnnotationMetadataimportingClassMetadata,BeanDefinitionRegistryregistry){
if(!registry.containsBeanDefinition(BEAN_NAME)){
GenericBeanDefinitionbeanDefinition=newGenericBeanDefinition();
beanDefinition.setBeanClass(Myservice.class);
beanDefinition.setSynthetic(true);
registry.registerBeanDefinition(BEAN_NAME,beanDefinition);
}
}
}
b、在配置类上加@Import引入上面的类
@Import(MyImportBeanDefinitionRegistrar.class)
publicclassTestConfig{
}
c、这样操作后就可以使用spring的方式获取该bean了
以上就是JSP中SpringBoot动态创建Bean的简单实例,如有疑问请大家留言或者到本站的社区进行讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!