当前位置: 首页 > news >正文

网站诚信备案专业建站公司怎么收费

网站诚信备案,专业建站公司怎么收费,大宗农产品现货交易平台,上海市城市建设管理局网站目录 1、xml方式2、CompontScan Component3、使用 Bean方式4、使用Import 注解5、FactoryBean 工厂 bean6、使用 ImportBeanDefinitionRegistrar 向容器中注入Bean7、实现 ImportSelector 接口 1、xml方式 使用 xml 的方式来声明 Bean 的定义,Spring 容器在启动的…

目录

    • 1、xml方式
    • 2、@CompontScan + @Component
    • 3、使用 @Bean方式
    • 4、使用@Import 注解
    • 5、FactoryBean 工厂 bean
    • 6、使用 ImportBeanDefinitionRegistrar 向容器中注入Bean
    • 7、实现 ImportSelector 接口

1、xml方式

使用 xml 的方式来声明 Bean 的定义,Spring 容器在启动的时候会加载并解析这个 xml,把 bean 装载到 IOC 容器中。

2、@CompontScan + @Component

使用@CompontScan 注解来扫描声明了@Controller、@Service、 @Repository、@Component 注解的类。

3、使用 @Bean方式

使用@Configuration 注解声明配置类,并使用@Bean 注解实现 Bean 的定义,这种方式其实是 xml 配置方式的一种演变,是 Spring 迈入到无配置化时代的里程碑。

4、使用@Import 注解

使用@Import 注解,导入配置类或者普通的 Bean

在Spring中,使用@Import注解可以将其他配置类(Configuration类)中定义的Bean引入到当前的配置类中。这允许你在一个配置类中引入其他配置类,从而将它们的Bean定义整合到一个应用上下文中。

以下是使用@Import注解的简单示例:

@Configuration
public class AppConfig1 {@Beanpublic MyBean myBean() {return new MyBean();}
}@Configuration
@Import(AppConfig1.class)
public class AppConfig2 {// AppConfig2 中可以直接使用 AppConfig1 中定义的 MyBean
}

在上述示例中,AppConfig2通过@Import(AppConfig1.class)注解引入了AppConfig1中的Bean定义。这样,在AppConfig2中就可以直接使用AppConfig1中定义的MyBean。

你还可以一次引入多个配置类,只需要在@Import注解中传入一个包含所有要引入的配置类的数组,如:

@Import({AppConfig1.class, AnotherConfig.class, YetAnotherConfig.class})

5、FactoryBean 工厂 bean

使用 FactoryBean 工厂 bean,动态构建一个 Bean 实例,Spring CloudOpenFeign 里面的动态代理实例就是使用 FactoryBean 来实现的。

6、使用 ImportBeanDefinitionRegistrar 向容器中注入Bean

实现 ImportBeanDefinitionRegistrar 接口,可以动态注入 Bean 实例。这个在Spring Boot 里面的启动注解有用到。

ImportBeanDefinitionRegistrar是Spring提供的一个接口,允许你在运行时动态地注册Bean定义到Spring容器中。通过实现这个接口,你可以在配置类上使用@Import注解,并在registerBeanDefinitions方法中自定义添加Bean定义。

以下是一个简单的示例,演示如何使用ImportBeanDefinitionRegistrar接口注入一个Bean:

创建需要注入的Bean:

public class MyInjectedBean {// ...
}

实现ImportBeanDefinitionRegistrar接口:

public class MyBeanRegistrar implements ImportBeanDefinitionRegistrar, EnvironmentAware {private Environment environment;@Overridepublic void setEnvironment(Environment environment) {this.environment = environment;}@Overridepublic void registerBeanDefinitions(AnnotationMetadata importingClassMetadata, BeanDefinitionRegistry registry) {// 通过注册Bean定义的方式将 MyInjectedBean 注入到 Spring 容器中GenericBeanDefinition beanDefinition = new GenericBeanDefinition();beanDefinition.setBeanClass(MyInjectedBean.class);registry.registerBeanDefinition("myInjectedBean", beanDefinition);}
}

在配置类中使用@Import注解导入ImportBeanDefinitionRegistrar:

import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Import;@Configuration
@Import(MyBeanRegistrar.class)
public class AppConfig {// 此处不需要声明 MyInjectedBean 的 @Bean 方法,它会由 MyBeanRegistrar 动态注册
}

在这个示例中,MyBeanRegistrar实现了ImportBeanDefinitionRegistrar接口,并在registerBeanDefinitions方法中注册了MyInjectedBean的Bean定义。然后,在AppConfig配置类中使用@Import注解将MyBeanRegistrar导入,从而在Spring容器中动态注册了MyInjectedBean。

这种方式允许你在运行时根据需要动态地注册Bean定义,提供了更灵活的配置和扩展机制。

7、实现 ImportSelector 接口

实现 ImportSelector 接口,动态批量注入配置类或者 Bean 对象,这个在 SpringBoot 里面的自动装配机制里面有用到

http://www.yayakq.cn/news/85228/

相关文章:

  • 做网站需要雇什么人新建的网站可以百度推广
  • 外贸网站推广和建站导购网站怎么推广
  • 鄂温克族网站建设做影视免费网站违法吗
  • 网站建设类岗位杭州招聘工作
  • 美丽寮步网站建设高性能wordpress友链页面
  • 建设电商网站的技术可行性伪网站建站
  • 安康市网站建设公司网站开发技术选择
  • 实验中心网站建设的调查问卷官方网站拼多多
  • 静态网站 动态丝路建设网站
  • 网站是什么意思例如中装建设集团有限公司
  • 免费网络推广网站大全做网站建设的上市公司有哪些
  • 电影微网站开发太原市本地网站
  • 网站不让百度收录wordpress页面类型
  • 采集网站图片广州红盾信息门户网站
  • 伯爵手表网站公司宣传片制作公司
  • 企业网站备案代理商沈阳建设工程信息网官网新网站
  • 黄陂建设网站如何知道一个网站用什么建设的
  • 旅游门户网站系统本地装修网
  • 开网站需要多少钱wordpress文章加载特效
  • 旅游商业网站策划书做美容有哪些网站
  • 帮人做推广的网站绵阳网站建设开发
  • 张店网站建设定制wordpress添加插件
  • 做翻译 英文网站科大讯飞哪些做教学资源的网站
  • 网站建设平台推荐自助建站上建的网站免费吗
  • 电商网站建设服务备案网站有哪些
  • 百度官网网站登录html 网站建设中
  • 怎样做投资与理财网站汕头网站建设模块
  • 网站怎么做导航条福建做网站公司
  • 做网站怎么去工信部缴费scorilo wordpress
  • 此网站不支持下载视频怎么办网站开发掌握哪种语言