Spring2.5学习3.4_让Spring自动扫描和管理Bean
来源:互联网 发布:关于网络诈骗的案例 编辑:程序博客网 时间:2024/04/27 18:11
通过在类路径下,根据自动扫描方式,把组件纳入Spring容器管理。
如果这些组件采用xml的bean定义来进行配置,显然会增加配置文件的体积,查找以及维护起来也不太方便。Spring2.5引入了组件自动扫描机制,它可以在类路径下寻找标注了@Component,@Service,@Controrl,@Respository注解的类,并把这些类纳入Spring容器管理,它的作用和xml文件中bean节点的配置是一样的,要使用自动扫描机制,我们需要打开以下配置信息:
<context:component-scan base-package="xjj.test"/>,说明Spring要扫描那个包下的bean,这里包含基包下的所有子包中的类。扫描这些类后,那么Spring怎么知道,哪些类要交给Spring容器来管理呢,这时候我们用到了注解,就是寻找标注了这些注解@Component,@Service,@Controrl,@Respository的类,当在类中发现了这些标记,Spring就会认为你要把这些类交给他来管理。
类上面添加的这些标记,就相当于配置文件中的bean节点。
@Service:用来标记业务层对象;
@Controrl:标注控制层,相当于Struts2中的action;
@Respository:用来标记数据引用对象(dao组件);
@Component:在项目中,有些组件归在以上三层都不像的时候,用着的泛指的组件。
目前,使用这四个注解都是一样,Spring还没有做相关区分,以后可能会有特殊处理。
通过注解标注的对象,在用getBean("beanName")获取时,默认将类型首字母小写后作为bean名称。
用@Service 注解,PersonService personService = (PersonService)ctx.getBean("personServiceBean");
使用的是实现类的名字,而不是接口类。
那默认值可以改吗?当然可以。
用@Service("personService")注解后,就可以用PersonService personService = (PersonService)ctx.getBean("personService");
注:默认是单例,如果需要改成原型,就要加@scope注解。
- Spring2.5学习3.4_让Spring自动扫描和管理Bean
- 让Spring自动扫描和管理Bean
- 让Spring自动扫描和管理Bean
- Spring(九)让Spring自动扫描和管理Bean
- Spring学习笔记(9)----让Spring自动扫描和管理Bean
- Spring学习笔记(9)----让Spring自动扫描和管理Bean
- spring_让 spring自动扫描和管理bean
- spring学习笔记4--让sping自动扫描和管理Bean
- JavaEE_SSH_Spring学习笔记(9)----让Spring自动扫描和管理Bean
- spring2.5自动扫描bean
- Spring、Spring自动扫描和管理Bean
- Spring自动扫描和管理Bean
- spring自动扫描和管理bean
- Spring自动扫描和管理Bean
- Spring自动扫描和管理bean
- Spring自动扫描和管理Bean
- Spring-自动扫描管理bean
- (8) 让Spring自动扫描和管理Bean ---- 通过在classpath自动扫描方式把组件纳入spring容器中管理
- java 获取昨天日期
- 第八章作业
- 海马汽车经销商管理系统技术解析(十六)入库修改
- C++ 鼠标模拟程序
- 面试题6:使用final关键字修饰一个变量时,是引用不能变,还是引用的对象不能变
- Spring2.5学习3.4_让Spring自动扫描和管理Bean
- 黑马程序员——IO流:字节流,字符流及键盘录入
- lua 点跟冒号的区别
- WCF医院管理系统技术解析(六)体检登记(五)对病人设置体检项目
- hdu 1506 Largest Rectangle in a Histogram 单调栈
- HDU Strange fuction(二分+精度控制)
- 最长回文字串的提取(相当精简!)
- 解决CDLinux在笔记本电脑上启动花屏问题
- MSDK的接入心得!!抓狂中。。。。。