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

建设网站的建设费用包括seo推广培训费用

建设网站的建设费用包括,seo推广培训费用,楼网络规划设计方案,社交做的最好的网站有哪些springboot动态注入bean1、创建Bean(demo)2、动态注入Bean3、通过注解注入Bean4、通过config配置注入Bean5、通过Import注解导入6、使用FactoryBean接口7、实现BeanDefinitionRegistryPostProcessor接口1、创建Bean(demo) Data public class Demo(){private String name;publi…

springboot动态注入bean

  • 1、创建Bean(demo)
  • 2、动态注入Bean
  • 3、通过注解注入Bean
  • 4、通过config配置注入Bean
  • 5、通过Import注解导入
  • 6、使用FactoryBean接口
  • 7、实现BeanDefinitionRegistryPostProcessor接口

1、创建Bean(demo)

@Data
public class Demo(){private String name;public void printName(){System.out.print("动态载入Bean的name属性"+this.name);}
}

2、动态注入Bean

@springbootTest
public class TestDemo(){@Testpublic void test(){// 获取ApplicationContextApplicationContext context = (ApplicatonContext)SpringApplication.run(App.class,args);// 获取BeanFactoryDefaultListableBeanFactory beanFactory = (DefaultListableBeanFactory)context.getAutowireCapableBeanFactory();// 创建Bean信息BeanDefinitiontBuilder beanDefinitiontBuilder = BeandefinitionBuilder.genericBeanDefinition(Demo.class);beandefinitionBulider.addPropertyValue("name","小猫咪")// 注入BeanbeanFactory.registerBeanDefinition("demo",beanDefinitionBuilder.getBeanDefinition());// 获取动态注入的BeanDemo demo = applicationContest.getBean("demo");demo.printName();// 移除动态注入的beanbeanFactory.removeBeanDefinition("demo"); }
}

3、通过注解注入Bean

直接在需要注入Bean的类上加这些注解

@RestController
@Service
@Component

4、通过config配置注入Bean

@Configuration标识这个类是一个配置类
@Bean表示这个方法返回的对象,和以前xml配置的Bean一样

5、通过Import注解导入

@import(xxx.class)可以嵌套在启动类上,也可以嵌套在config配置类上
@Import + 实现ImportSelector接口的selectImports方法
@Import + 实现ImportBeanDefinitionRegistrar 接口中的方法
@Import +  实现DeferredImportSelector接口的selectImports方法,DeferredImportSelector 它是 ImportSelector的子接口

6、使用FactoryBean接口

FactoryBean接口和BeanFactory千万不要弄混了,从名字其实可以大概的区分开,FactoryBean, 后缀为bean,那么它其实就是一个bean, BeanFactory,顾名思义 bean工厂,它是IOC容器的顶级接口,这俩接口都很重要。

package com.example.config;import com.example.dto.Demo;
import org.springframework.beans.factory.FactoryBean;public class DemoFactoryBean implements FactoryBean<Demo> {@Overridepublic Bike getObject() throws Exception {return new Demo();}@Overridepublic Class<?> getObjectType() {return Demo.class;}@Overridepublic boolean isSingleton() {return true;}
}
@Configuration
@Import({BikeFactoryBean.class,Dog.class,MyImportSelector.class})
public class MyConfig

7、实现BeanDefinitionRegistryPostProcessor接口

这种方式也是利用到了 BeanDefinitionRegistry,在Spring容器启动的时候会执行 BeanDefinitionRegistryPostProcessor 的 postProcessBeanDefinitionRegistry 方法,大概意思就是等beanDefinition加载完毕之后,对beanDefinition进行后置处理,可以在此进行调整IOC容器中的beanDefinition,从而干扰到后面进行初始化bean。

public class MyBeanDefinitionRegistryPostProcessor implements BeanDefinitionRegistryPostProcessor {@Overridepublic void postProcessBeanDefinitionRegistry(BeanDefinitionRegistry registry) throws BeansException {AbstractBeanDefinition beanDefinition = BeanDefinitionBuilder.rootBeanDefinition(Demo.class).getBeanDefinition();registry.registerBeanDefinition("Demo", beanDefinition);}@Overridepublic void postProcessBeanFactory(ConfigurableListableBeanFactory configurableListableBeanFactory) throws BeansException {}
}
@Configuration
@Import({MyBeanDefinitionRegistryPostProcessor.class})
public class MyConfig {
http://www.zhongyajixie.com/news/64981.html

相关文章:

  • 做商城网站需要多大的服务器百度快速排名技术培训教程
  • 网站工作室模板跨境电商seo什么意思
  • 欧美网站模板网店推广分为哪几种类型
  • 做任务可以给钱的网站建站公司哪家好
  • 做网站找模板去哪好网页设计成品源代码
  • hqz行情站外链工具软件
  • 局域网站建设模版seo是付费还是免费推广
  • 做网站讯息网址缩短
  • 首钢水钢赛德建设有限公司网站广告竞价排名
  • 哪里有网站建设联系方式深圳市前十的互联网推广公司
  • 企业做网站这些问题必须要注意网络推广外包加手机蛙软件
  • 网站建设尺寸上海培训机构白名单
  • 毛绒玩具 东莞网站建设 技术支持百度小说免费阅读
  • 域名怎么做网站杭州seo搜索引擎优化公司
  • 网站怎么做推广和宣传语网站推广如何引流
  • 二手车的网站建设例子谷歌浏览器下载安装2022
  • 怎么策划一个网站万网官网域名注册
  • 网站建设服务ysaigo北京百度关键词优化
  • 长沙做网站的公司对比公司网站费用
  • 图形化app开发工具谷歌seo网络公司
  • 在哪个网站做推广比较好快速开发网站的应用程序
  • 网站建设合作方案搜索引擎优化的主题
  • 自己做产品品牌网站抖音搜索seo软件
  • 做实验学编程的网站要怎么网络做推广
  • 长沙国际会展中心疫情百度seo关键词排名优化软件
  • 网站优化建设工作总结范文百度怎么发布自己的广告
  • 成都网站建设与推广seo网站培训班
  • 长春微信做网站帆软社区app
  • 精彩网站制作今天最火的新闻头条
  • 做vi的图有网站吗网上如何推广产品