spring依赖注入(自用记录)

我试过了,我之前做笔记的方式,太浪费时间了,所以我要想想做出改变

full-stack 全栈

stack
英 [stæk] 美 [stæk]
n.
堆栈;(通常指码放整齐的)一叠,一摞,一堆;大量;许多;一大堆;(尤指工厂的)大烟囱;书库
v.
(使)放成整齐的一叠(或一摞、一堆);使成叠(或成摞、成堆)地放在…;使码放在…;(令飞机)分层盘旋等待着陆

spring的 全找,不是从前端写到服务器,而是他 各层都有对应的解决方案

spring 模板,我们在建立工具类的时候一般叫做 utility,他这里面进行了薄薄的封装测,叫做模板

太好了,我除了redis这个没学,现在看spring的 入门课像玩一样,尚硅谷nb

Spring 开发步骤

在这里插入图片描述

黑马的这个笔记做的是真的好

release 的意思 公开;发行;发布

release
英 [rɪˈliːs] 美 [rɪˈliːs]
vt.
释放;放出;放走;放开;松开;使自由移动(或飞翔、降落等);发泄;宣泄;免除,解除;使不紧张;公开;开放
n.
释放;获释;公开;发行;发布;新发行的东西;(尤指)新激光唱片,新电影;排放;解脱

开发步骤

在这里插入图片描述

1、

在这里插入图片描述

2、建立dao和impl

3、写配置文件

配置文件,调出来的方式

在这里插入图片描述

在这里插入图片描述

4、获取同期里面的对象的代码

在这里插入图片描述

没有getBean 是因为要父类引用指向子类对象,是父类里面的方法

在这里插入图片描述

调用不出来方法)(上一个需要父类才能调用getBean 这个需要自己向下转型)

在这里插入图片描述

我真的吐了,所有错误我都犯了一遍

找不到配置文件,是因为我把配置文件放到测试的资源类里面了
在这里插入图片描述

配置文件不让放在资源文件夹下面 我不次怎么处理的

在这里插入图片描述

1、spring 标签属性

id 唯一性标识

在这里插入图片描述

Bean标签范围 卧槽,还有这东西? 默认单例

在这里插入图片描述

代码写的方式

在这里插入图片描述

测试是不是单例,说白了就是看对象地址,老套路了

在这里插入图片描述

配置成 singleton 和 prototype 的不同,会导致对象到创建时机不同

怎么判断呢,因为框架生成对象,调用的是无参构造,所以我在无参构造里面加输出语句,就知道他是什么时候生成的了

配置成singleton 的时候,当加载配置文件,创建spring容器的那一步,对象就创建好了

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

配置成protoType 的时候,当获取对象的时候,再去创建

在这里插入图片描述

在这里插入图片描述

注意,当多个bean的时候,对象长时间不用就会被回收

虽然现在不知道这回队后面有什么影响

Bean的声明周期的配置

这个我之前没学过 但是,下午我就懂了,类似与servlet 里面的监视器,vue里面也有

init 和 destroy 要自己写,然后告诉spring

在这里插入图片描述

怎么告诉呢

在这里插入图片描述

在配置文件里面配置

在这里插入图片描述

我真的吐了,初始化方法,到底要写在哪个类里面,我自己觉得的话,应该是需要继承和覆盖的那种类
我的没有执行销毁方法
初始化 和 销毁 好想不用写在父类里面

在这里插入图片描述

因为他还没来的及打印就没了
!!我刚才怎么不成功啊,老师就能用子类调出来,子类 要比父类功能强大

在这里插入图片描述

手动调用spring 容器的销毁方法,ioc 容器就知道自己快挂了。

拷贝工厂的全限定名

在这里插入图片描述

通过静态工厂 去 获得对象

静态工厂类

在这里插入图片描述

配置文件写的方法

在这里插入图片描述

工厂实例方法,去掉了static

这个不能直接调用了,需要先用工厂对象,再去调方法

在这里插入图片描述

现有工厂对象,再通过指定工厂对象,去指定工厂中的 获得对象实例的方法

在这里插入图片描述

配置文件写法

在这里插入图片描述

卧槽,我懂了这个东西哪里用了,就是那个mabtis的工厂!!!!!!

就是JDBC的那个 getConnect 的工厂!!!!!

我先自己敲一遍

用了静态工厂了,它的 初始和 销毁方法 怎么办呢

问题1

初始化 和 销毁 方法是写在 dao 里面 ,当获得了impl对象后,用impl对象里面的方法,老师是怎么写的?

问题2

我忘了,操他妈的

依赖注入

这部分我已经学过了,但是我要过一遍,过完了之后,去看今天老师的录播课

笑死了,不使用依赖注入也可以用这种方法

在这里插入图片描述

在容器内部将dao给 service 我是怎么给的

我记得我是用反射注入的

怎么把数据设置到某个对象的内部

两种方式

set方法

UserService setUserDao 设置进去

第二种就是构造

先讲set方法

我之前理解的可能一直是错的??

在这里插入图片描述
== 要把这个变成小写==
在这里插入图片描述
怎么说跟我理解的不太一样

注意,如果使用了spring 的依赖注入,当我们使用UserService 里面的Dao 方法,会报空指针,因为spring 没有帮那个我们

新New出来的东西赋值

P命名空间注入

在这里插入图片描述

不要觉得引入命名空间那行代码 麻烦

他是这么来的
就是复制粘贴了一下
在这里插入图片描述
在这里插入图片描述

然后是有参构造注入

先要有有参构造

在这里插入图片描述

然后告诉spring

在这里插入图片描述

注入数据类型也有不同

在这里插入图片描述

他只讲了用 set 方法注入 数据类型,没讲参数的方法。他说回去自己试试

等会我自己用 构造方法,自己试一下

普通属性的注入

对象引用用ref 普通属性用value

在这里插入图片描述

集合属性的注入

properties 这个集合在后期配置的时候会经常被用到

记得要把set方法写上

在这里插入图片描述

因为集合与引用和普通数据类型不同 要用特殊的标签

再里面 写 子标签

先给List 赋值

在这里插入图片描述

这也太傻比了吧

在这里插入图片描述

Map的赋值方法

在这里插入图片描述

???怎么回事,我怎么没学properties 的创建方法

在这里插入图片描述

学习方法

我觉得,我应该边学,边把知识树 整理出来,我居然照着我自己的笔记整理不出来我学了什么?卧槽

我去看看B站App的目录

头疼啊,学习效率好慢啊

记录一下傻逼问题

命名空间不会写

命名空间是用来代替 ref 这个标签的,不是用来代替class的

思路清晰一点,我不会写 p命名空间,我先写一个不用p的

操,标准的也不会写了

不是标准的不会写了,是因为 我的 serviceImpl 里面没有写 属性值
不是上面的那个问题,是因为我没有写set方法

这个寄吧东西,还没有我自己写的那个好呢
在这里插入图片描述

这样写就不爆红了,脑袋清晰一点

头脑清晰一点啊,尼玛的

在这里插入图片描述

空指针是因为我没有调用spring,就是读取配置文件然后那什么的

我的spring 好像不能自动注入,为什么

行吧,因为我在看女人直播,所以傻逼了,唉。。

空指针是因为我new 了新的对象,

。唉。。

真好啊,听了一晚上好听的歌

就是分心写了一堆bug

主播,我有个朋友唱歌不好听,但是却一直唱歌不睡觉

我怎么提醒她啊

沃日,我肯定看女主播看魔怔了,继续敲

静态类 好像无法注入,,可以用从静态类注入的方法吗

在这里插入图片描述

我吐了,我解决不了了,怎么给静态变量赋值啊,这个问题,之后再解决把,记住了,千万不要再被这种东西卡主了,做二阶段项目的时候,就是这样,浪费了大量的时间,唉

静态工厂的方式,我大概懂了,也算是好事

然后是有参构造的注入

好了,然后是数据类型的引入

基础

我等会一定要睡觉了。我要傻了

不要再controller 这个里面,这个有需要静态的main去调用

然后是参数式的赋值

好了

引用 已经学完了

和集合(这个有点难)

这个了,我学的好他妈慢啊

先是学生类的

靠,两个属性的怎么写啊

懂了,对象 相当于 在xml里面New个,这个就是我觉的特别呆的那个
Map也写完了,就差最后一个了

在这里插入图片描述

properties

在这里插入图片描述

???怎么建立propertise,是个map吗

引入其他配置文件(分模块开发)

啥意思?

就是整个项目把配置文件都写在一个配置文件里面,配置文件会非常大,而且很难去读

可以按照用户模块或者商品模块去拆分

卧槽,按照模块去拆分后 ,居然还能 主配置文件引入其他模块文件

在这里插入图片描述

我可能还是不理解xml这个文件格式,不然我应该不会这么震惊

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

知识点 总结

在这里插入图片描述

记住,那个name是 set的属性名!!! 不是对象的名称

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值