美文网首页
Spring:从就地烧烤到上桌吃饭

Spring:从就地烧烤到上桌吃饭

作者: 柠檬小猪 | 来源:发表于2021-11-25 11:29 被阅读0次

关键字:AOP面向切面,IOC控制反转(依赖注入和控制反转是同一件事的不同角度描述),配置文件和注解(自定义),工厂。

在遥远的过去,没有桌子的概念,吃东西都是拿在手上吃,食物也是现烤现吃。

后来有了桌子,可以把饭菜放在桌子上慢慢吃。烧饭的时候烧饭,吃饭的时候吃饭,而不是混在一起。

桌子(内存)

就像内存,过去电脑内存偏小所以没有实现spring这种写法(大概)。

Spring的概念就是将所有饭菜烧好放在桌子上,想吃什么就吃什么。

菜单(配置文件)

注入是从配置文件注入,配置了哪些内容就创建哪些内容,通过dom4j读取,保存到内存。

dom4j读取流,然后通过标签和属性去找数据;

并没有什么神秘的,如果自己写的话可以自定义标签和属性的名字,套用spring框架就需要用特定的名字。

注解就是变种的配置文件而已,每个注解都有对应的配置文件属性。

厨房(工厂类,反射)

只需要给厨房一个菜单,他就能把菜全烧好端上来;

菜是怎么被厨房烧出来的?使用工厂来通过反射技术来生成对象。

工厂模式:个人理解就是你传一个东西进去,它再给你吐另一个东西出来。

先看菜单:厨房怎么看菜单呢?解析xml或者注解。

再炒菜(反射):只需要一个名字就可以实例化对象,这个名字一般写在配置文件xml里,例:com.XXX.user,在使用方法Class.forName(“全限定类名”)。

上菜(初始化):厨房做好菜就该上菜了;将初始化好的类存到内存,就是存到一个map里。

(当你接触了Spring后你会发现到处都是map,一般保存到内存里用的都是map)

大概套路如下图,spring源码可能会跟精妙一点。

这是一个bean.xml配置文件

旋转大桌(IOC控制反转)

就是将饭菜烧好放在桌上的操作,怎么理解呢?注入就是将饭菜放在桌上,控制反转呢,原来菜是拿在人手上的,就像野餐一边烤一边吃,现在菜都在桌上,桌子开始转了,桌子(IOC容器)来控制菜,你要什么它会转给你。(真的是遍历了一遍找到想要的)

控制反转和依赖注入说的是同一件事,但是是两个角度。

IOC思想下我们不需要去new对象了,对象都在桌上(内存)了,解决了对象直接耦合的问题,使用时直接调用接口,实现类已经保存在缓存中,使用时自动去查找;同一个接口有多个实现类会怎么样?会报错,需要用注解指定用哪个实现类。

不用new对象

大卷饼(AOP面向切面)

桌上有些菜直接吃味道太重了,这是要就需要一张卷饼,把菜卷起来吃,像烤鸭,吃烤肉的时候也用生菜;在spring中也有很多方法“味道太重”,需要事务处理,需要权限判断;这时候通过代理的方式,在方法首尾增加代码强化方法。

入参是一个方法类,使用代理后再直接使用即可。

OOP和AOP的关系:OOP就像鸳鸯火锅,你要吃辣的就从辣锅里捞,吃不辣的就从清汤锅里捞,捞出来的菜都继承了锅里的味道。OOP是一种垂直继承体系,解决的是代码重复的问题,特征是封装,继承,多态。(当然也可以用传统的方式理解,狗的父类是动物,会吃会睡,所以狗也会吃会睡)

OOP可以解决大多数代码重复问题,但是头尾同时出现重复代码就不好解决了(横切逻辑代码重复),这时候就要用到AOP。

抬杠:我在头尾调用工具类写好的方法不就好了?那样做的话工作量也很大,改起来相当麻烦。

有个疑问:为什么jdk原生的代理方法没有Cjlib功能强大,但是spring框架还是保留了,就不能全部用Cjlib吗?

相关文章

  • Spring:从就地烧烤到上桌吃饭

    关键字:AOP面向切面,IOC控制反转(依赖注入和控制反转是同一件事的不同角度描述),配置文件和注解(自定义),工...

  • 从吃饭到吃饭

    露露老师的每一次直播,总是声音柔柔的,道理看似浅浅的,却总能叫我的心沉静下来,不止一回了,想起来就觉得好奇。真不晓...

  • 双语新闻剪报

    2021.1.26 就地过年 stay put during Spring Festival 2020.12.2 ...

  • 明明想走高端路线,就不要散发着低端气息

    和家人一起出门吃饭。选了很久,从西餐到中餐,从米饭到面点。最后,将就地决定在一家粥店吃晚饭。 一进门,首先看见的是...

  • 从吃饭到永远

    我有一个闺蜜,关系非常好。所以我经常去她家玩,有时候在她家吃饭。她爸妈因为结婚早生娃早,所以年纪都不算大,女儿都大...

  • 我的年夜饭

    就地过年——平生第一次,自己置办年夜饭。 从买菜到上桌,花了多半天时间。 往年都爸爸妈妈或者公公婆婆在准备,自己就...

  • 全书目录:《Spring Boot 实战开发 》(陈光剑 编著)

    Spring Boot 简介 151.1. 从 Spring 到Spring Boot 161.1.1...

  • 觉察日记20170205——二、妹妹做饭

    今天晚饭是妹妹准备的,从买菜洗菜切菜到最后上桌,做的很辛苦,我觉得还真不错,在外面待了半年学会自己做饭了。到吃饭,...

  • 去鱼乐圈吃饭

    今天中午我和我的朋友一起去饭店吃饭。 我们一到饭店,先是玩音乐。等菜上桌了,我们就开始吃饭了,...

  • 女孩到男生家分餐引热议

    8月30日,南方女孩儿到山东男友家吃饭,被要求分桌就餐:不让上桌是陋习! 今天,一个视频话题“女孩到男友家吃饭分桌...

网友评论

      本文标题:Spring:从就地烧烤到上桌吃饭

      本文链接:https://www.haomeiwen.com/subject/abpatrtx.html