Spring的核心思想

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring的核心思想相关的知识,希望对你有一定的参考价值。

Spring的核心思想是什么?请用通俗易懂的语言来说明~有比喻就更好了!谢谢大侠们!

Spring核心思想 控制反转Ioc//Inversion of Control和依赖注射DI//Dependency Injection
什么叫控制反转呢?
套用好莱坞的一句名言就是:你呆着别动,到时我会找你。
什么意思呢?就好比一个皇帝和太监
有一天皇帝想幸某个美女,于是跟太监说,今夜我要宠幸美女
皇帝往往不会告诉太监,今晚几点会回宫,会回哪张龙床,他只会告诉太监他要哪位美女。其它一切都交由太监去安排,到了晚上皇帝回宫时,自然会有美女出现在皇帝的龙床上。这就是控制反转,而把美女送到皇帝的寝宫里面去就是注射。太监就是是框架里面的注射控制器类BeanFactory,负责找到美女并送到龙床上去
整个后宫可以看成是Spring框架,美女就是Spring控制下的JavaBean。

而传统的模式就是一个饥渴男去找小姐出台,找领班,帮助给介绍一个云云,于是领班就开始给他张罗。介绍一个合适的给他,完事后,再把小姐还给领班,下次再来。这个过程中,领班就是查询上下文Context,领班的一个职能就是给客户找到他们所要的小姐。这就是lookup()方法,领班手中的小姐名录就是JNDI//Java Naming and Directory Interface。小姐就是EJB,饥渴男是客户端,青楼是EJB容器。
看到区别了么?饥渴男去找小姐出台很麻烦,不仅得找,用完后还得把小姐给还回去。而皇帝爽翻了,什么都不用管,交给太监去处理,控制权转移到太监手中去了,而不是皇帝,必要时候由太监给注射进去就可以了。看到Spring的美妙了吧,Spring还提供了与多个主流框架的支持,可以和其它开源框架集成。
参考技术A 敲敲自己的理解吧,也来温习一下,Spring核心思想就是IOC和AOP,
IOC是控制反转的意思,以前我们通常要在一个类的方法得到另外一个类需要 new 一个
pulic OneFoo

void method ()

AnotherFoo anthorFoo=new AnotherFoo ();\
//下面是逻辑代码


在Spring里面可以通过配置文件(可以查阅goolgle)直接注入到这个类的对象中比如
pulibc OneFoo

public AnotherFoo aFoo;
public void setAnotherFoo(AnotherFoo aFoo)
public void method()

aFoo.doSomething();


这样就不用在程序里面显示的new这个需要的类的对象了这是ioc

aop就是面向方面编程,你可以在一个方法前,方法后,或者类实例化后,实例化前处理一些你自己的代码,一般用在事务处理(Spring著名的申明性事务),和动态的进行log记录,
传统的log记录一般是你一个类一个类的去打印log,而用了aop你只要写一个类,配置下文件然后就可以动态的在某个类方法执行的时候打印出log.差不多就这些了本回答被提问者采纳
参考技术B 一楼的回答很精辟!!! 参考技术C 一楼 我擦

spring核心思想:IOC(控制反转)和DI(依赖注入)

Spring有三大核心思想,分别是控制反转(IOC,Inversion Of Controller),依赖注入(DI,Dependency Injection)和面向切面编程(AOP,Aspect Oriented Programming)。

这里只说前两个核心思想,最后一个下次再说(手动滑稽)。

控制反转(IOC,Inversion Of Controller)

控制反转不是什么技术,而是一种设计思想。在Java开发中,IOC意味着将你设计好的对象交给容器控制,而不是传统的在你的对象内部直接控制。

传统正转

控制有反转,当然也就有原来的正转。正转就是说当你需要用到某一个对象的时候,就需要主动去new一个对象实例,才能够使用该对象。

控制反转

反转就是当你需要用到某一个对象的时候,就向Spring IOC容器发请求,由Spring IOC容器返回一个对象实例给你。

依赖注入(DI,Dependency Injection)

依赖注入是控制反转的具体实现。

因为对象资源的获取全部要依赖于Spring IOC容器,将这些需要的对象提前注入Spring IOC容器就叫做依赖注入。

 

以上是关于Spring的核心思想的主要内容,如果未能解决你的问题,请参考以下文章

Spring 概述核心结构及核心思想

Spring核心思想--六大模块介绍

spring核心思想:IOC(控制反转)和DI(依赖注入)

Spring的核心思想,总结得非常好!

Spring的核心思想,总结得非常好!

Spring核心思想的简单实现