spring:setter注入构造器注入注解注入

这篇博客回顾了Spring框架的搭建步骤,深入讲解了依赖注入(DI)的概念,包括setter注入、构造器注入以及注解注入。setter注入通过提供属性的set方法实现,构造器注入用于在对象实例化时初始化属性,注解注入是最常用的方式,简化了XML配置但可能影响维护。博客还详细介绍了注解注入的步骤和常用的注解,如@Service、@Repository、@Controller和@Component。

一。内容回顾

简述对spring框架的了解
优点
高内聚低耦合
可拔插式设计模式
XML配置 便于维护
Sping 可以和各大优秀的框架很好结合(Struts2 springmvc mybatis hibernate)
Spring 一站式开发(springmvc spring JdbcTemplate)
底层原理:反射,代理机制

搭建spring框架步骤

1.导入jar包
2.创建spring容器 applicationContext.xml
3.加载xml获取bean对象
applicationContext ca = new ClassPathXmlApplicationCpntext(“xml”);
Object obj = Ac.getBean(“bean的name/id/类.class”);
Bean的生命周期: 实例化对象 init-method 对象销毁 destroy-method
Bean 单例 多例模式: 默认单例模式,如果想设置多例模式scope=“protocype” ,
Bean 懒加载问题: 默认懒加载关闭,使用懒加载通过 lazy-init=“true”来设置; Beans 根标签上添加 default-lazy-init=“true”设置为全部懒加载

Spring DI

依赖注入: 程序运行期间,把spring容器创建好的对象动态的注入到所需要的组件中。

(一)Setter注入:

主要提供对应属性的set方法。
思考1:给定一个User对象(张三 20) 拥有1辆车(兰博 红色 999999.9)
User 类
Car 类
User us = new User();(张三 20)
Car car = new Car(); (兰博 红色 999999.9)

用户拥有这个车
User类中定义car属性 提供set方法
us.setCar(car);

思考2:还有一辆车 宝马 红色 99999999.9

案例1: 在service提供dao对应的set方法创建有参构造器

setter注入:通过property属性执行对应setUd

案例2: 在User类中提供car对应set方法

在这里插入图片描述

在这里插入图片描述
##(二)构造器注入
回顾 构造器有什么特点:方法名和类名相同 没有返回值 在类实例化时被执行
构造器可以被重载
构造器的作用:有参构造器为了给类的成员变量赋值。
思考1:给定一个User对象
(张三 20) 拥有1辆车(兰博基尼 黄色 999999)
Car = new Car(carName,color,price);
User = new User(name,age,car);

在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

(三)注解注入(最常用)注解符号

Xml 配置方式–》注解: 简化xml配置 缺点不利于维护
注解方式实现步骤:

Step1: 导入aop jar包

Step2: 在xml开启注解扫描

在这里插入图片描述

Step3:标注注解符号

1) 组件上常用的注解符号(实例化对象):
@service:标注在业务层 实例化业务service对象
@Repository:标注在持久层
@Controller :标注在控制层
@Component:标注在任意组件上(除以上注解)
在这里插入图片描述在这里插入图片描述2)注入注解符号: 标注在属性上 也可以标注在set方法上
@Autowaried @Qualifier(“userDao”)
在这里插入图片描述@Resource:默认按照名字匹配 也可以通过name 指定引入实例变量名
在这里插入图片描述

Service Dao 为例:测试

在这里插入图片描述

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值