spring的IOC的注解

【Spring】注解实现IOC操作,你理解了吗? 前面讲解了IOC的基本概念以及操作演示,但是spring配置文件较多,操作起来相对麻烦。今天我们使用注解来操作实现IOC的功能。基于注解式开发spring,相对来说比较少,但是理解这些注解的作用,会对后面学习spring boot产生比较大的影响。所以还是应该重视一下,多用多做就能掌握啦。今天的分享到此结束,我是狮子,希望可以帮到您。 阅读详情

这里是修真院后端小课堂,每篇分享文从

八个方面深度解析后端知识/技能,本篇分享的是:

【spring的IOC的注解】

【修真院java小课堂】spring的IOC的注解

开场语:

大家好,我是IT修真院上海分院第10期的学员洪阳,今天给大家分享一下,修真院官网java任务1,深度思考中的知识点——spring的IOC的注解.

(1)背景介绍:

传统的xml配置完成IOC,如果内容比较多则配置需花费很多时间,通过注解可以减轻工作量,但注解后修改要麻烦一些,偶合度会增加,应该根据需要选择合适的方法[1]。

(2)知识剖析:

在类上增加了一个注解Component,在类的开头使用了@Component注解,它可以被Spring容器识别,启动Spring后,会自动把它转成容器管理的Bean。

除了@Component外,Spring提供了3个功能基本和@Component等效的注解,分别对应于用于对DAO,Service,和Controller进行注解。

1:@Service用于注解业务层组件(我们通常定义的service层就用这个)

2:@Controller用于注解控制层组件(如struts中的action)

3:@Repository用于注解数据访问组件,即DAO组件

4:@Component泛指组件,当组件不好归类的时候,我们可以使用这个注解进行注解。

singleton—单例 只创建一个对象。

prototype—原型 想创建多少个就创建多少了。

request—针对Web项目,不同的请求创建单独的Bean对象,同一个请求共享一个Bean。

session—针对Web项目,不同的会话创建单独的Bean对象,同一个会话共享一个Bean。

(3)常见问题:

@Component@Service@Controller@Repository@Component是否一样,使用时要不要区分

(4)解决方案:

这几个注解不同于上面的注解,上面的注解都是将被依赖的bean注入进入,而这几个注解的作用都是生产bean, 这些注解都是注解在类上,将类注解成spring的bean工厂中一个一个的bean。@Controller, @Service, @Repository基本就是语义更加细化的@Component。

(5)编码实战:

@Component(“user”)

public class User {

private Integer id;

private String name;

public Integer getId() {

return id;

}

public void setId(Integer id) {

this.id = id;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

}


@Component(value=“user”)

public class User {

@Value(“1”)

private Integer id;

@Value(“lzgsea”)

private String name;

public Integer getId() {

return id;

}

//@Value(“1”)

public void setId(Integer id) {

this.id = id;

}

public String getName() {

return name;

}

//@Value(“lzgsea”)

public void setName(String name) {

this.name = name;

}

}


(6)拓展思考:

Spring中的注解大概可以分为两大类:

1)spring的bean容器相关的注解,或者说bean工厂相关的注解;

2)springmvc相关的注解。

spring的bean容器相关的注解,先后有:@Required, @Autowired, @PostConstruct, @PreDestory,还有Spring3.0开始支持的JSR-330标准javax.inject.*中的注解(@Inject, @Named, @Qualifier, @Provider, @Scope, @Singleton).

springmvc相关的注解有:@Controller, @RequestMapping, @RequestParam, @ResponseBody等等。

要理解Spring中的注解,后续还要先要理解Java中的注解。

(7)参考文献:

lzgsea - 优快云 - Spring注解详解 - https://blog.youkuaiyun.com/lzgsea/article/details/79829544 [1]

(8)更多讨论:

Q1:提问人:XML和注解各自有什么优缺点

A1:回答人:XML:可以适用任何场景; 结构清晰,维护方便.注解:有些地方用不了,这个类不是自己提供的,开发方便.

Q2:提问人:IOC是什么

A2:回答人:Ioc—Inversion of Control,即“控制反转”,不是什么技术,而是一种设计思想。

(9)鸣谢:

感谢师兄对我无微不至的日程提醒,此教程是在他们之前技术分享的基础上完善而成。

(10)结束语:

今天的分享就到这里啦,欢迎大家点赞、转发、留言、拍砖~

Python OpenCV基于颜色通道分离法去除图片中的红色印章 最近一段时间的工作都是研究如何去除图片中的红色印章,在网上查找了大量的大佬写过的方法,发现大多数是采取颜色通道分离法来做,并且效果还不错。站在前人的肩膀上,我又做了些许调整,谈不上是改进,但是能应对更对的情况总还是好的,特此记录。 拿发票做例子,印章相较于其它部分最大的不同就是印章是红色的,而其它部分不是(这是一句废话)。 那么第一步当然就是将红色分离出来,这一步可以采用Python第三方库OpenCV里的 cv2.split()方法,该方法是把RGB图像的三个通道拆分开来,得... 阅读详情

相关推荐

智能手环心率检测不准?用STM32+MAX30102教你实现医疗级精度(含算法优化)

本文详细解析了如何利用STM32微控制器和MAX30102光学传感器实现医疗级精度的心率检测方案。通过硬件参数调校、ADC采集优化、运动伪影消除及深度学习算法改进,显著提升智能手环在静态和运动状态下的检测精度,误差可控制在±1.5bpm以内,满足医疗电子标准。

weixin_28335283的博客 527

Spring注解驱动开发——IOC的常用注解

一、用于注解驱动的注解 @Configuration (一) 作用 它是在spring3.0版本之后加入的。此注解是spring支持注解驱动开发的一个标志。表明当前类是spring的一个配置类,作用是替代spring的applicationContext.xml。但其本质就是@Component注解,被此注解修饰的类,也会被存入spring的ioc容器。 (二) 属性 value:用于存入spring的Ioc容器中Bean的id。 (三) 本质 就是@Component注解,被此注解修饰的类,也会被存入s

紫罗兰与海棠的博客 1767

基于CODESYS与EtherCAT的步进电机单轴控制实践

本文详细介绍了基于CODESYS平台与EtherCAT总线技术实现步进电机单轴控制的完整实践流程。从硬件选型、软件工程创建、EtherCAT主从站配置,到运动控制功能块编程与在线调试,手把手指导读者完成从零到一的搭建,并提供了常见问题的排坑指南,帮助自动化开发者快速掌握这一高效、灵活且成本可控的工业运动控制解决方案。

hh234的博客 491

spring之IoC注解

注解的存在主要是为了简化XML的配置

qq_42338744的博客 867

OK3588-C开发板Forlinx Desktop系统烧录与多媒体功能实战

本文详细介绍了OK3588-C开发板Forlinx Desktop系统的烧录步骤与多媒体功能实战。从硬件准备到软件工具配置,逐步解析RKDevTool烧录技巧,并深入测试摄像头、视频编解码及音频功能,帮助开发者快速掌握RK3588芯片的强大性能与Ubuntu系统的优化应用。

weixin_29190169的博客 417

windows下使用Nginx搭建Rtmp流媒体服务器,实现视频直播功能

一、环境介绍 操作系统:win10 64位系统 Linux下搭建Nginx搭建Rtmp流媒体服务器方法请看这里:https://blog.youkuaiyun.com/xiaolong1126626497/article/details/105378894 二、流媒体服务器介绍 流媒体服务器的主要功能是以流式协议(RTP/RTSP、MMS、RTMP等)将视频文件传输到客户端,供用户在线观看;也可从视频采集、压缩软件接收实时视频流,再以流式协议直播给客户端。 nginx服务器是开源的高性能的http服务器,反向

1万+

Spring 从入门到精通系列 06 —— Spring 中的 IOC 常用注解

  Spring 的 IOC 常用注解主要有用于创建对象的、用于注入数据的、用于改变作用范围的以及和生命周期相关的四部分,本文针对此块内容,进行深入分析与解读。 文章目录Spring 中的 IOC 常用注解一、用于创建对象的1.1 Component1.2 Controller(一般用在表现层)1.3 Service(一般用在业务层)1.4 Repository(一般用于持久层)二、用于注入数据的2.1 Autowired2.2 Qualifier2.3 Resource2.4 Value:三、用于改变

秀岩的博客 1327

拆解全球18大“支付清算”体系:CLS、中国、美国、欧洲、日本、mBridge...

拆解全球18大“支付清算”体系:CLS、中国、美国、欧洲、日本、mBridge...

银行信息系统应用架构详解 884

SpringIOC注解

1、常用IOC注解按照作用分类 @Component(value=" ") @Component衍生出来的三个注解 @Controller、@Service、@Repository 2、自动按照类型注入 @Autoware(只有唯一bean对象时注入成功) @Qualifier 必须和@Autoware一起使用此时就可以用@Resource注解代替 @Value基本类型和String类型的注入 @Value(${}) 集合类型注入只能用XML 3、改变作用范围以及生命周期相关的注解 @Scop

hukehukehukehuke的博客 247

嵌入式Linux&Android开发-TP调试

目录 一、修改DTS,添加新的I2C设备 二、修改Makefile,Kconfig 三、tp调试时的问题排查 一、修改DTS,添加新的I2C设备 &i2c4 { status = "okay"; clock-frequency = <400000>; gslX680@40 { compatible = "gslX680"; reg = <0x40>; touch-gpio = <&gp

嵌入式成长手册 572

【CanMV K210】AI 视觉 MNIST 手写数字识别与分类推理

本文介绍了基于CanMV K210开发板的MNIST手写数字识别实验。实验通过摄像头采集图像,经过开窗、灰度化、缩放、反色等预处理后,使用KPU神经网络加速器运行MNIST分类模型,最终在LCD上显示识别结果。重点讲解了分类模型与检测模型的区别、图像预处理流程以及KPU推理结果的解析方法。实验帮助理解从图像采集到分类输出的完整AI视觉处理链路,并提供了调试思路和硬件连接说明。

Mr数据杨 365

SpringIOC常用注解

Spring-IOC常用注解 1.1、@Configuration: @Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME) @Documented @Component public @interface Configuration { /** * Explicitly specify the name of the Spring bean definition associated with the * {@code @Co

qq_44134480的博客 2010

Python数据分析师必备:OpenClaw开启Pandas清洗脚本自动生成新时代

本文介绍了OpenClaw这一AI智能体框架如何帮助Python数据分析师高效完成数据清洗工作。OpenClaw通过自然语言交互理解用户需求,自动生成Pandas清洗脚本,显著提升了数据清洗效率,降低了技术门槛。文章详细阐述了OpenClaw的工作原理、实战应用步骤及其在电商、金融、医疗等行业中的成功案例。相比传统手动编写脚本方式,OpenClaw能快速生成规范准确的清洗代码,使数据分析师能更专注于业务洞察。该工具为数据驱动决策提供了可靠支持,是数据分析领域的重要创新。

远程部署调试 运行安装 项目调试 二次开发 项目技术新 持续迭代 部分源码免费分享 230

Spring IoC注解详解

这篇文章记录Spring IoC通过注解注入属性的方法。一、注解注入属性一个简单的案例1)Spring配置文件引入context约束&lt;beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:cont...

lzgsea的博客 1万+

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Spring 框架 IOC 注解

在 Spring 框架中,控制反转(IOC)是核心思想之一。传统 XML 配置方式虽能实现 IOC,但存在配置繁琐、维护成本高的问题。而通过代码注解直接声明 Bean 及其依赖关系,大幅简化开发流程,成为现代 Spring 开发的主流选择。本文将系统讲解 IOC 注解的核心用法、常用注解及纯注解架构实践。

m0_61261153的博客 1161

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

spring IOC容器 Bean 管理——基于注解方式

IOC 操作 Bean 管理(基于注解方式) ​ 1、什么是注解 ​ (1)注解是代码特殊标记,格式:@注解名称(属性名称=属性值, 属性名称=属性值…) ​ (2)使用注解,注解作用在类上面,方法上面,属性上面 ​ (3)使用注解目的:简化 xml 配置 ​ 2、Spring 针对 Bean 管理中创建对象提供注解 ​ 下面四个注解功能是一样的,都可以用来创建 bean 实例 ​ (1)@Component ​ (2)@Service ​ (3)@Controller ​ (4)@Repository

学而时习 1万+

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

Spring IOC的注解配置

Spring IOC的注解配置 (一)简述 上回说到,我们可以使用书写XML配置文件的方式来让spring产生我们需要的Bean对象,并放入容器中。但是,书写配置文件是一件非常繁琐的事情,而且一旦配置文件内容很多,阅读起来也是一件让人头疼的事,所以,我们急需一种部分或者完全摆脱配置文件的配置方式。 下面我们就来看看spring的注解配置方式。注解配置和用配置文件配置相比,只是配置的形式不一样,最终达到的目的是基本相同的。就好比坐飞机去北京和坐高铁去北京,虽然使用的交通工具不一样,但是都达到了去北京的目的。

物是人非,结局始终不美 1万+

Spring基于注解的IOC学习总结

基于注解的IOC使用和基于XML方式的IOC的使用功能是一模一样的,只是注解方式是另一种使用方式而已,通过使用注解,可以完成相关的声明和配置。 先介绍一下XML和注解混合使用的情况,然后再改进为全注解的形式。 IOC的配置 首先,在pom.xml文件中,导入Spring IOC相关的约束和依赖。 例如: <?xml version="1.0" encoding="UTF-8"?> &...

rotation博客 510

Spring 基于注解的IOC

1、曾经xml的配置 <bean id="accountService" class="com.spring.service.Impl.IAccountServiceImpl" scope="" init-method="" destroy-method=""> <property name="" value="" / ref=""></proper...

Zystem 1837

Spring基于注解的IOC

Spring基于注解的IOC 今天主要分享4类注解 用于创建对象的 用于注入数据的 用于改变作用范围的 和生命周期相关的 在使用注解的时候,我们需要在主配置文件中加入相应关于注解的约束,然后需要告知spring在创建容器时候需要扫描的包. <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://ww

qq_49044908的博客 617

Spring基于注解使用IOC

基于注解的IOC

怪咖@的博客 1624

Spring IoC常用注解

Spring IoC容器 Spring IoC(Inversion of Control,控制反转)是Spring Framework的最核心的部分。 所谓控制反转,是指通过使用IoC容器对象依赖关系的管理被反转了,也就是说,对象之间的依赖关系由IoC容器进行管理,并且由Ioc容器通过依赖注入(DI,Dependency Injection)的方式来完成对象的注入。   在

raiet 2022

Spring入门第五讲——Spring IoC的注解开发

还记得在《Spring入门第三讲——Spring中Bean的配置与管理以及分模块开发的配置》这一讲中,我说过Spring进行Bean的管理有两种方式吗?其中一种是使用配置文件的方式,这个我们已经讲过了,还有一种是使用注解的方式,本讲就来讲一下Spring IoC的注解开发。那啥是注解呢?注解是代码中的特殊标记,它可以使用在类、方法、属性上面,使用它可以实现一些基本的功能,其写法是@注解名称(属性=...

李阿昀的博客 3334

Spring基于注解的IOC配置

学习基于注解的IOC配置,大家脑海里首先得有一个认知,即注解配置和xml配置要实现的功能都是一样的,都是要降低程序间的耦合。只是配置的形式不一样。

w2144217940的博客 1154

如何使用Spring IOC的注解进行开发

Spring IoC(Inversion of Control,控制反转)容器通过提供了一种简洁且强大的方式来进行依赖注入和配置管理。开发使得 Spring 应用程序的配置更为简洁和直观,减少了 XML 配置的冗余和复杂性。本身并不能执行,注解本身仅仅只是做一个标记,具体的功能是框架检测到注解标记的位置,然后针对这个位置按照注解标记的功能来执行具体操作。

lovellsj的博客 1543

Spring基于注解的IOC以及IOC的案例

使用Spring的IOC实现账户的CRUD 1.spring中ioc的常用注解 2.案例使用xml方式和注解方式实现单表的CRUD操作 持久层技术选择:dbutils 3.改造基于注解的IOC案例,使用纯注解的方式实现 spring的一些新注解使用 4.spring和junit整合 创建数据库 create table account( id int primary key auto_increment, name varchar(40), money float )character

骑着蜗牛行天下 265
上一篇: quartz。
下一篇: shiro框架
learning__java
博客等级 码龄8年 87粉丝 174原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值