Spring2.5教程:5、通过在classpath自动扫描方式把组件纳入spring容器中管理

Spring 2.5 自动扫描classpath深入解析 组件扫描默认会将所有标记了@Component及其衍生注解的类都注册为bean。然而,开发者可以通过excludeFilters和includeFilters来自定义扫描规则,指定哪些注解或者类名模式需要被排除或包含在扫描过程中。// ...通过这样配置,Spring就只会扫描标记了@Service注解的类,并且排除指定的几个类。这种方式在大型项目中非常有用,可以帮助优化应用的启动时间和内存占用。除了使用Spring内置的注解外,开发者也可以创建自己的自定义注解来标记组件,然后通过。 阅读详情

通过在classpath自动扫描方式把组件纳入spring容器中管理

前面的例子我们都是使用XML的bean定义来配置组件。在一个稍大的项目中,通常会有上百个组件,如果这些这组件采用xml的bean定义来配置,显然会增加配置文件的体积,查找及维护起来也不太方便。spring2.5为我们引入了组件自动扫描机制,他可以在类路径底下寻找标注了@Component、@Service、@Controller、@Repository注解的类,并把这些类纳入进spring容器中管理。它的作用和在xml文件中使用bean节点配置组件是一样的。要使用自动扫描机制,我们需要打开以下配置信息:

<beans xmlns="http://www.springframework.org/schema/beans"

       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

       xmlns:context="http://www.springframework.org/schema/context"

       xsi:schemaLocation="http://www.springframework.org/schema/beans

           http://www.springframework.org/schema/beans/spring-beans-2.5.xsd

           http://www.springframework.org/schema/context

           http://www.springframework.org/schema/context/spring-context-2.5.xsd">

          <context:component-scan base-package="cn.itcast"/>

</beans>

其中base-package为需要扫描的包(含子包)。

@Service用于标注业务层组件、@Controller用于标注控制层组件(如struts中的action)、@Repository用于标注数据访问组件,即DAO组件。而@Component泛指组件,当组件不好归类的时候,我们可以使用这个注解进行标注。

@Service("myname")作用于类,相当于id="myname",不指定名称,则默认使用类名(第一个字母小写)

@Scope("prototype")作用于类,改变bean作用范围.相当于scope="prototype"

@PostConstruct作用于方法,相当于init-method属性

@PreDestroy作用于方法,相当于destroy-method属性

<context:component-scan base-package="cn.itcast"/>这个配置注册了很多处理器,其中包括了依赖对象的注入器,就不需要<context:annotation-config/>配置了。

告别Nginx原始日志!VictoriaLogs+Grafana构建企业级应用日志分析平台实战 描述:做为一个合格的运维工程师,在面对企业安全运维管理中,日志审计是一项非常重要的工作。授人以鱼不如授人以渔,各位运友们可参照作者的方案设计,在自己的项目中根据实际情况调整落地,例如,不在仅仅采集 NGINX 应用日志,而是采集 Apache、Tomcat、SpringBoot 等多种应用服务器的日志,又如,不再仅仅采集网络设备、安全审计审计日志,而是 Windows、Linux 等多种操作系统的审计日志等,大家可充分发挥想象、实践能力,也欢迎大家在知识星球中分享自己的方案设计,一起交流学习。 阅读详情

相关推荐

医药行业新零售项目数据分析报告——基于Excel的分析与可视化

不同平台客户支付金额用数字+百分比展示更直观。各大区支付金额分析较为粗浅,后续可加入不同大区人数、配送费等进行细分分析。图表略微单一,可采用组合图,运用两个及以上维度对数据进行分析。数据来源本项目数据来源于某机构的项目案例,以上分析内容均为本人原创,不涉嫌抄袭。原做项目,新平台首发。

2401_84213513的博客 1495

Spring框架概述

Spring概述 Spring是轻量级的开源的JavaEE框架,方便和其他框架进行整合,方便进行事务操作,降低API开发难度,从而简化企业应用开发的复杂性。 Spring有两个核心部分:IOC和AOP。 IOC IOC:控制反转,把创建对象过程交给Spring进行管理。 特点:方便解耦,简化开发。 底层原理:xml解析、工厂模式、反射。 AOP AOP:面向切面,不修改源代码进行功能增强。 特点:利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高

weixin_40017062的博客 702

STM32F407硬件IIC驱动OLED避坑实录:从‘不显示’到‘稳定刷屏’的完整调试过程

本文详细记录了使用STM32F407硬件IIC驱动OLED屏幕的完整调试过程,从初始的‘不显示’问题到最终实现‘稳定刷屏’。文章涵盖了硬件接线、I2C外设配置、常见问题排查及性能优化技巧,特别针对STM32标准库开发中的难点提供了实用解决方案,是嵌入式开发者驱动OLED屏幕的实用指南。

weixin_30315723的博客 303

spring事务配置的五种方式

https://blog.csdn.net/m8396017/article/details/51615806 spring事务配置的五种方式 第一种方式:每个Bean都有一个代理 第二种方式:所有Bean共享一个代理基类 第三种方式:使用拦截器 第四种方式:使用tx标签配置的拦截器 第五种方式:全注解 前段时间对Spring的事务配置做了比较深入的研究,在此之间对Spring的事务配置虽说也配置过,但是一直没有一个清楚的认识。通过这次的学习发觉Spring的事务配置只..

yygr的博客 3843

S32K144驱动TPS929120避坑实录:从原理图设计到PWM调光漏电流的完整解决流程

本文详细解析了S32K144驱动TPS929120在车规LED驱动中的常见问题与解决方案,重点解决了PWM调光漏电流的行业难题。从原理图设计、FlexWire通信到软件调试,提供了一套完整的工程化避坑指南,特别针对车规MCU应用中的温度漂移、地址冲突等痛点给出了实用建议。

weixin_30872157的博客 561

RK3588工业开发板实战:如何用IgH EtherCAT主站精准控制伺服电机(附完整代码)

本文详细介绍了如何利用RK3588工业开发板和IgH EtherCAT主站实现伺服电机的精准控制。从硬件选型、实时内核配置到EtherCAT主站安装和核心代码实现,提供了一套完整的工业自动化解决方案,特别适合需要高精度运动控制的场景。

pca5navigator的博客 972

Spring如何加载XSD文件(org.xml.sax.SAXParseException: Failed to read schema document错误的解决方法)...

本文原文连接:http://blog.csdn.net/bluishglc/article/details/7596118 ,转载请注明出处! 有时候你会发现过去一直启动正常的系统,某天启动时会报出形如下面的错误: org.xml.sax.SAXParseException: schema_reference.4: Failed to read schema document 'http://w...

tempsitegoogle 1485

别再手动挂载NPU了!手把手教你用Ascend-Docker-Runtime一键启动昇腾AI容器

本文详细介绍了如何使用Ascend-Docker-Runtime一键启动昇腾AI容器,大幅简化NPU设备挂载流程。通过环境变量ASCEND_VISIBLE_DEVICES,开发者可以灵活指定NPU设备,提升开发效率。文章还提供了安装配置指南、高级使用技巧和常见问题排查方法,帮助开发者快速掌握这一高效工具。

weixin_42662605的博客 252

Spring配置文件xsi:schemaLocation无法解析导致启动失败的解决方案 转!classpath:/org/springframework/

Spring配置文件xsi:schemaLocation无法解析导致启动失败的解决方案 本文转自:http://www.jnan.org/archives/2010/12/cannot-find-the-declaration-of-element-beans.html 今天向服务器部署一个console java app之后,启动时发现程序出现异常: Exception in thread “m

coolhappiness_rgb的专栏 3923

YOLOv8改进 | 注意力篇 | 一文带你改进GAM、CBAM、CA、ECA等通道注意力机制和多头注意力机制

官方论文地址:官方论文地址点击此处即可跳转官方代码地址:官方代码地址点击此处即可跳转GAM旨在通过设计一种机制,减少信息损失并放大全局维度互动特征,从而解决传统注意力机制在通道和空间两个维度上保留信息不足的问题。GAM采用了顺序的通道-空间注意力机制,并对子模块进行了重新设计。具体来说,通道注意力子模块使用3D排列来跨三个维度保留信息,并通过一个两层的MLP增强跨维度的通道-空间依赖性。

Snu77的博客 4万+

200、从零搭建具身智能实验平台:硬件选型软件栈与调试

我一开始图便宜,3D打印了一个平行夹爪,结果抓取力不够,稍微重点的物体就滑落,而且开合控制延迟大,VLA模型输出的动作指令根本跟不上。如果你非要自己做,记住两个原则:一是用谐波减速器而不是直驱,二是加力传感器,哪怕是一个简单的电阻应变片也行——没有力反馈,你的夹爪就是个瞎子。我的建议是,如果你用的是UR5老款,ROS1的ur_modern_driver包更成熟,但如果你要跑最新的VLA框架,很多库已经不支持ROS1了。所以,保持耐心,多备份代码,多记录日志,少熬夜。毕竟,这条路上,我们都是摸着石头过河。

sundong_81的博客 38

Spring2.5学习笔记 [贰]

11_用@Resource注解完成属性装配 & 12_编码剖析@Resource注解的实现原理(2009-12-30  11:20:23) 编码解析实现原理日后补充  使用Field注入(用于注解方式) 手工注入依赖对象,有两种方式。1、在配置文件中使用setter方法注入 2、使用@Autowired或@Resource注解方式,需要在配置文件中配置如下信

大苯熊-我的书房 927

µC/OS-II---任务就绪表

意思是:将变量OSRdyGrp中最低位为1的位数赋给y,那么,y就是最高优先级任务所在就绪表的行号,那么最高优先级的任务就在OSRdyGrp[y]行中,再根据。

weixin_45880844的博客 1649

最新最全面的Spring详解(二)——classpath扫描和组件管理

本文将对 【Spring】classpath扫描和组件管理 相关知识进行介绍,具体包括:@Component 和及其派生出的其他注解,自动检测类和注册beanDifination,组件命名,为自动检测组件提供scope,使用过滤器自定义扫描,在组件中定义Bean元数据,基于Java的容器配置,BeanFactory和FactoryBean,环境抽象,事件机制等~

小新要变强的博客 3678

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

通过在classpath自动扫描方式把组件纳入spring容器中管理

通过在classpath自动扫描方式把组件纳入spring容器中管理 通常情况下我们都是使用XML的bean定义来配置组件。在一个稍大的项目中,通常会有上百个组件,如 果这些这组件采用xml的bean定义来配置,显然会增加配置文件的体积,查找及维护起来也不太方便。 spring2.5为我们引入了组件自动扫描机制,他可以在类路径底下寻找标注了@Component、@Service、 @Control...

_纳川 209

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

7_spring_通过在classpath自动扫描方式把组件纳入spring容器中管理

前面的例子我们都是使用XML的bean定义来配置组件。在一个稍大的项目中,通常会有上百个组件,如果这些这组件采用xml的bean定义来配置,显然会增加配置文件的体积,查找及维护起来也不太方便。spring2.5为我们引入了组件自动扫描机制,他可以在类路径底下寻找标注了@Component、@Service、@Controller、@Repository注解的类,并把这些类纳入进spring容器中管

169

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

Spring 通过在classpath自动扫描方式把组件纳入spring容器中管理

前面的例子我们都是使用XML的bean定义来配置组件。在一个稍大的项目中,通常会有上百个组件,如果这些这组件采用xml的bean定义来配置,显然会增加配置文件的体积,查找及维护起来也不太方便。spring2.5为我们引入了组件自动扫描机制,他可以在类路径底下寻找标注了@Component、@Service、@Controller、@Repository注解的类,并把这些类纳入进spring容器中管理。它的作用和在xml文件中使用bean节点配置组件是一样的。

camper001的专栏 739

通过在classpath自动扫描方式把组件纳入spring容器中管理。

前面的例子我们都是使用xml的bean定义来配置组件,如果组件过多很臃肿。spring2.5引入了组件自动扫描机制,在指定目录下查找标注了@Component、@Service、@Controller、@Repositiory注解的类,并把这些类自动纳入spring容器中管理。 要使用自动扫描机制,我们需要打开以下配置信息: 1、加入context组件,导入注解对应jar: xmlns:con...

weixin_34126215的博客 163

spring2.5的通过在classpath自动扫描方式把组件纳入spring容器中管理

************ beans.xml ************ <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XM...

SYL269794967的博客 162

通过在classpath自动扫描方式把组件纳入Spring容器中管理

在Spring2.5通过classpath自动扫描的方式,可以自动查找类路径下的Bean并将其自动纳入Spring容器中进行管理,使得XML文件更加精简,更易查找和维护。需要在XML文件中增加以下配置信息:&lt;beans xmlns="........." xmlns:context="http://www.springframework.org/schema/context" ..........

爱踢才会赢 158

spring classpath自动扫描把组件纳入spring容器中管理

一、配置 1.引入context命名空间需要在xml中配置 xmlns:context="http://www.springframework.org/schema/context" http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-con

—————————————— 1188

在 classpath 中扫描组件

那spring是怎么来管理的呢,首先它会读取在包pakegeZhuJie 下面的所有类,把需要交给spring容器管理的类纳入spring容器中,那么纳入spring容器中的名称又是什么样的呢,spring里面有一个默认的规则,如果没有给定名称,那么bean的名称就是类的简单名称,简单名称就是类的把类的名称第一个字母变成小写。 @Service用于标注业务层组件,@Controler用于标注控

哦绝影 433
上一篇: SQL
下一篇: Spring2.5教程:6、AOP
风云才智
博客等级 码龄14年 46粉丝 48原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值