java spring 扫描配置

查看本文 要求您要能过利用spring注解方式创建对象 如果尚未掌握 可以查看我的文章
java spring 通过注解方式创建对象

首先 最基础的就是
base-package 指定扫描的包
参考代码如下

 <context:component-scan base-package="Bean.UserData"></context:component-scan>

这段代码就表示 spring 将扫描Bean包下的UserData包下的所有类
use-default-filters 值为布尔类型 true/false
表示是否使用默认的扫描规则 默认的就是 指定的包 全部扫 不使用 你就可以写自己的规则
true 为采用默认方式 false 为 不采用默认方式

参考代码如下

<context:component-scan base-package="Bean.UserData" use-default-filters="true"></context:component-scan>

这段代码的意思 就是 扫描 Bean下UserData包 use-default-filters true 表示采用默认方式 全部扫描

然后我们来看 这样一段代码

<context:component-scan base-package="Bean.UserData" use-default-filters="false">
        <context:include-filter type="annotation" expression="org.springframework.stereotype.Component"/>
</context:component-scan>

首先 base-package指定的包说好几遍了 就不说了 然后 use-default-filters 为 false 说明 我们配置 不使用它默认的匹配方式

那么 下面context:include-filter就是写条件的地方
type为annotation 表示 我们在这个包下扫描 只扫注解 expression 指定 org.springframework.stereotype.Component
这是一种注解的方式 上次我们用过 不知道大家还记不记得?
在这里插入图片描述
把注解的条件进一步缩小
只扫描Component注解形式的

然后 我们来看这段代码

<context:component-scan base-package="Bean.UserData">
  <context:include-filter type="annotation" expression="org.springframework.stereotype.Component"/>
 </context:component-scan>

大家可以看到 这次我们少了 use-default-filters=“false” 那么 不设置 use-default-filters 他的默认值就是true
但我们下面写了include-filter
此时 条件就会反过来

之前是只扫描符合条件的 这次 是不扫描符合条件的

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值