zoukankan      html  css  js  c++  java
  • Spring中自动检测并申明bean

        在Spring中申明bean,一般情况是在XML中用<bean id=""  class="">标签来指定一个类并为其取一个id。但是这样效率很低,Spring提供了自动检测并申明bean的方法,讲解如下:

    一、自动检测并申明bean的步骤:

        1、用<context:component-scan  base-package="com.springinaction.springidol"></context:component-scan>替换<context:annotation-config/>。前者包含了后者所有功能,而且还提供了bean的检测和自动申明功能。其中,base-package指定要检测的包。

        2、在要定义为bean的类定义前加上相应的标注:

    @component
        public class Guitar{
           ......
        }

        在程序运行的时候,Spring就可以自动检测到该类并把其申明为bean。bean的默认命名为guitar,也就是将类名第一个字母小写,如果你的类名为GuitarInstrument,则bean名字为guitarInstrument,后面的字母大小写不变。

        当然,我们可以自定义bean的名称:

    @component("guitar1")
        public class Guitar{}

         则bean的名字为guitar1。

         @component标注表示将该类申明为Spring组件,还有其他几种类型的标注:

          备案自动

    二、批量检测和申明bean的方法

         一中的方法里描述的是,为每个需要被申明为bean的类添加注解,使Spring能够检测出该类。但是有时候,我们需要批量检测,比如有一个Instrument接口,我们要把所有实现了该接口的类申明为bean,我们可以使用过滤器:

          过滤器有两种:一种是包含过滤器<context:include-filter>,指定需要包含的类,另一种是剔除过滤器<context:exclude-filter>,指定不要包含的类。用法:

           ex

          expression参数指定要包含的类,type指定类型,比如包含expression中的类、注解等,

          all

  • 相关阅读:
    使用CSS3制图
    hdu4585 &amp; BestCoder Round #1 项目管理(vector应用)
    ZooKeeperEclipse 小工具
    svn代码统计工具的金额
    【教你zencart仿站 文章1至6教训 高清1280x900视频下载】[支持手机端]
    [Django]models定义choices 字典中的页面显示值
    xml publisher根据条件显示或隐藏列
    hdu 1398 Square Coins(生成函数,完全背包)
    ubuntu软件中心崩溃
    PHP socket类
  • 原文地址:https://www.cnblogs.com/hewenwu/p/3813094.html
Copyright © 2011-2022 走看看