Spring初步了解-IOC和AOP的使用扩展

本文介绍了Spring框架中的依赖注入技术,包括设值注入和构造注入两种方式,并对比了它们的特点。此外,还介绍了如何使用p命名空间简化配置,以及如何通过各种元素注入不同类型的属性。最后,文章探讨了注解在Spring中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

上一次讲到了Spring通过setter访问器实现了对属性的赋值,这种方法叫设值注入,spring还提供了构造注入。

1.举个列子就是当属性的类型是某个类的时候,以构造注入的方式使用<constructor-arg>,这个元素表示构造方法的一个参数,

使用时不区分顺序,为了区分可以使用index属性指定索引,位置从0开始。使用type指定参数类型,避免字符串和基本数据类型混淆。构造注入时效性好,但是不够灵活。



设置注入时效性不好,但是比较灵活,这两种方式根据自身情况来选择。

2.p命名空间实现属性注入,他的特点是使用bean的属性,而不是子元素的形式配置bean,简化了bean的配置。


其中还有p:属性名-ref=“bean的id”

3.注入不同类型

1.注入直接量除了使用属性还可以使用<value>子元素

2.引用其他bean组件使用<ref>子元素

3.注入集合类型属性

对于list或数组使用<list>标签

对于map类型有<map>标签其下还有其子标签<entry><key><value>

对于properties类型属性使用<props>,它的键值通常都是字符串类型。

5.注入null和空字符串

<value></value>注入空字符串,<null/>注入null值。

3.使用注解

@Component("user")的作用和


等效。

出了它spring还提供了3个特殊的注解:

@repository:用于标注DAO类

@Service:用于标注业务类

@controller:用于标注控制器类

4.使用注解实现bean组件装配


resource 和 autowired的作用是一样的,resource根据字段名进行注入。

然后就是这样定义好bean之后开始使用注解配置信息启动spring容器,


使用它进行扫包,多个包用逗号隔开,spring会扫描这些包中的类。

AspectJ是一个面向切面框架,他扩展了java语言,定义了aop语法,能够在编译器提供代码的织入。

spring通过集成AspectJ实现了注解方式定义切面。

使用注解来配置切面,使用注解切实现日志切面为列子:


使用@aspectJ定义切面。再在配置文件中启动注解支持


这些就是一些初步的IOC和AOP的扩展使用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值