咱們Java程序員,都是面向對象編程。而在Java EE方向上,還有一個說法是———「面向Spring編程」。固然,這是一句玩笑,更是一句事實。Spring在Java EE方向上的框架中屬於絕對壟斷的地位。在未來,除非有一種更加簡潔、高效的框架來與Spring進行PK,不然Spring的地位很難撼動。而在短時間以內,目前還暫時沒法找到哪怕一個潛在的對手。程序員
Spring是一個龐大的家族,而Spring只是這個龐你們族的統稱。咱們耳熟能詳的Spring MVC、Spring Boot以及Spring Cloud等,都屬於Spring家族。而咱們常說的SSM,即Spring + Spring MVC + Mybatis,這裏的Spring又是什麼意思呢。這裏的Spring就是Spring Framework,也是Spring家族中很是重要的項目,它是一個輕量級的控制反轉(IoC)和麪向切面(AOP)的容器框架,不少人把它常常簡稱爲「Spring」。
因此當咱們說到Spring時,既能夠表示Spring整個家族,又多是指Spring Framework這一單獨的框架,須要根據語境判斷。
從官網來看,官方是把這個容器框架命名爲Spring Framework。因此爲了合乎官方標準的命名,文章後面都以Spring Framework來詳細指代。我的認爲,用Spring來表示Spring Framework實際上是不太標準、甚至對新手有必定誤導的說法。spring
Spring的前身,來自於一個叫interface21的項目,同時這家公司的名字也叫Interface21。咱們常說的「Spring之父」————Rod Johnson,就是這家公司的CEO,Spring就是Interface21公司開發並支持的開源項目。interface21的官網連接:interface21.io
這裏僅作介紹,具體就不詳細展開了。編程
官網地址:spring.io
官方下載地址:Spring官方下載地址框架
前面已經說到,Spring Framework的核心是控制反轉(IoC)和面向切面(AOP),其目的是爲了進行容器管理。spa