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

汕头企业建站系统模板保定seo推广外包

汕头企业建站系统模板,保定seo推广外包,用php建设一个简单的网站,深圳市网站制作最好的公司Bean扫描 Spring中使用标签扫描或者注解 Springboot中没有使用标签或者注解它是怎么扫描的我的controlelr,service等等 核心在于springboot启动类中的SpringBootApplication注解 此注解其实是一个组合注解 它组合了一个ComponentScan注解,相当于在启…

Bean扫描

Spring中使用标签扫描或者注解

Springboot中没有使用标签或者注解它是怎么扫描的我的controlelr,service等等

核心在于springboot启动类中的@SpringBootApplication注解

此注解其实是一个组合注解

它组合了一个@ComponentScan注解,相当于在启动类也添加了这个注解,所以不需要我们手动添加也可以扫描

但是我们没有设置它的扫描范围它是怎么扫描的呢,那是因为,它的默认扫描范围是添加了该注解的类所在的包及其子包

如果想要扫描到启动类所在包之外的包,需要手动在启动类中配置@ComponentScan

Bean注册

如果要注册的bean对象来自第三方(不是自定义的),是无法用@Component及衍生注解声明bean的

使用Maven命名将第三方jar安装到本地仓库

然后win + R-->cmd输入脚本

在pom.xml中引入依赖

@Bean

  • 在启动类中创建一个方法,次方法只需要返回一个对象就行(不推荐使用)

测试

如果想要通过名字来获取直接写方法名

对象默认的的名字就是:方法名

自定义名字@Bean(“自己取名字”)

  • 创建一个配置类,在配置类里面集中注册

使用@ Configuration来标识当前类是一个配置类

配置类也需要放到启动类所在的包或子包下才会被扫描

在配置类中添加一模一样的方法

注入多个第三方对象,在配置中继续写方法

如果方法的内部需要使用到ioc容器中已经存在的bean对象,那么只需要在方式上声明,以参数的形式传入,spring会自动注入

@Import

在启动类上使用@Import(xxx.class),导入一个其他类,spring会自动把xxx类注入到ioc容器中,这里的xxx类可以是任意类(普通类,配置类)

常用的类

       导入配置类

       导入ImportSelector接口实现类

配置类

@Import(配置类.class)

一旦用了@Import相当于我在手动扫描这个类,没有用自动扫描,所以当配置类没有在启动类的包或子包下也能扫描到

注入多个配置类

不推荐,建议使用导入ImportSelector接口实现类

@Import({配置类.class ,配置类.class ,配置类.class ,配置类.class })

ImportSelector接口实现类

定义一个类去实现ImportSelector接口,重写selectImports()方法

Springboot会自动调用selectImports()方法,得到全限定名的数组,然后把这些类的bean对象自动注入到ioc容器中

为了防止硬编码,这些全限定名一般写入文件中,然后从文件中读取出来

文件中的一个全限定名写一行

优化@Import注解

在启动类上使用@Import(CommonImportSelector.class),感觉不好看,

能不能像@SpringBootApplication这样

自定义一个注解

需要复制

@Target({ElementType.TYPE}) //可以在类上使用@Retention(RetentionPolicy.RUNTIME) //可以保留在运行时阶段

在添加上一个ImportSelector接口实现类

@Import(CommonImportSelector.class)

优化后

Bean注册条件

给第三方bean对象注入值的方式

方式一

在方法中手动赋值(不推荐使用)

方法二

从文件中读取

使用@Value来获取值

当我们将配置文件中的数据注释了在使用@Value获取,在注入到对象时就会报错,有没有一种方法,当我们配置文件有数据时注入对象,没有数据时就不注入对象。

这时候就要用到bean的注册条件了

SpringBoot提供了设置注册生效条件的注解@Conditional,此数据使用很麻烦,所以它提供了很多的衍生注解。

三个常用注解

@ConditionalOnProperty(prefix = “前缀”,name = “指定键名(方法参数名)”)

@ConditionalOnMissingBean(xxx.class)

@ConditionalOnProperty(name = “指定类的全限定名”)

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

相关文章:

  • 青岛企业做网站网线制作顺序图解
  • 江西恒通建设工程有限公司网站给企业做网站的平台
  • 设置网站解析永久免费建站程序
  • 游戏网站建设系统介绍公司网站公司新闻
  • seo 排名南宁百度seo网站优化
  • 怎么建网站赚钱网上服务旗舰店
  • 网站建设net接口互联网营销策划
  • 山东省建设工程质量安全协会网站智慧团建登录入口官方网站
  • 什么二手车网站做最好佳木斯市网站建设
  • 做宠物的网站主题思想网商之窗登录
  • 江西中耀建设集团有限公司网站网站建设咨询哪些方面
  • 外国炫酷网站设计网站图片优化器
  • 网站中文章内图片做超链接网站开发kxhtml
  • 外国网站快速申请qq公益 建网站
  • 衡水网站制作报价ps做网站要多大
  • 做ppt介绍网站吗wordpress 时光轴插件
  • 上海网站建设 缔客一般网站的字体是什么
  • 好看的wordpress文章模板合肥seo推广外包
  • liferay 做网站全国人防工程建设管理培训班举行
  • 福州模板建站哪家好重庆网站平台建设
  • 如何查询网站接入信息大型论坛网站建设
  • 大型网站开发案例湖南营销型网站建设 在线磐石网络
  • 网站的服务器打不开wordpress 缩略图不显示
  • 学校户网站建设方案那个网站是专门做渔具的
  • 公司网站外包企业不开了网站备案吗
  • 无锡商城网站建设wordpress 电子商务
  • 学校网站php源码12数据网站建设
  • 提供低价网站建设在深圳注册公司需要什么资料
  • 重庆哪里可以学习网站建设和维护wordpress dux推送代码
  • 网站开发的知识最好的网站管理系统