- N +

springframework官網(wǎng) Spring Framework

如何學習Spring框架

能工摩形,巧匠竊意,先學怎么用,再研究實現(xiàn),然后多思考幾個為什么,為什么它要這樣設計,反復幾遍可能會有更加深刻的認識

為什么大名鼎鼎的Spring在.NET平臺上無以為繼呢

首先需要明確一點的是,JavaSpring框架是完全可以在Windows系統(tǒng)上運行的,但是.NET平臺產(chǎn)品卻不能很好的在Linux系統(tǒng)上運行。無論是跨平臺支持上還是生態(tài)體系上,Spring都不需要依懶.NET平臺。

Spring框架是啥?

大名鼎鼎的Spring框架是Java界應用最為廣泛的框架,它的出名并不是依靠技術,而是靠理念。比如說:

IoC:控制反轉;

DI:依懶注入;

AOP:面向切面編程。

它是輕量級的IoC/DI和AOP容器的開源框架,提倡以“最少侵入”的方式來管理應用代碼(不需要繼承框架提供的類),便于維護。

Spring.NET是Spring在.NET平臺上的實現(xiàn)

Spring.NET是為.NET企業(yè)應用開發(fā)的一款框架,通過它可以實現(xiàn)依懶注入(DI)、控制反轉(IoC)等功能,能大大提升開發(fā)效率,但由于種種因素使得Spring.NET項目發(fā)展不達預期。

Spring與.NETCore代表兩種聲音

Java界有Spring框架,.NET平臺上有.NETCore框架。自從.NET平臺推出.NETCore后,像IoC這類特性都已內(nèi)置了,所以.NET平臺上并不需要Spring.NET。

但不可否認的是先有Spring后有.NETCore的。.NETCore很多思想都是借鑒Spring來設計的。正因為如此,Spring在業(yè)內(nèi)知名度比.NETCore要高,像很多以前選擇.NET的企業(yè)(如京東)均轉向了Java懷抱。

.NET平臺的缺陷

可能傳統(tǒng)的C/S端用.NET的很多,但在當下互聯(lián)網(wǎng)圈子里真的沒幾家大型公司會考慮用

.NET平臺,為什么呢?因為.NET平臺最早期的封閉式環(huán)境導致了其技術生態(tài)的匱乏,基本上市面上很多優(yōu)秀的第三方組件在.NET平臺里集成起來很麻煩。微軟總是喜歡“捆綁”自家的產(chǎn)品,所以對于外界組件的支持度差,或者說.NET平臺的生態(tài)也只能靠微軟自家去打造。

也正是因為缺乏生態(tài)體系的建設,很多解決方案在.NET平臺上是缺乏的。

以上就是我的觀點,對于這個問題大家是怎么看待的呢?歡迎在下方評論區(qū)交流~我是科技領域創(chuàng)作者,十年互聯(lián)網(wǎng)從業(yè)經(jīng)驗,歡迎關注我了解更多科技知識!

spring入門詳解

Spring是一個輕量級的Java框架,它提供了許多功能強大的工具和庫,用于簡化Java開發(fā)過程中的許多常見任務。如果您想深入了解Spring,以下是一些入門詳解:

1.Spring框架的核心概念:Spring框架由多個模塊組成,每個模塊都提供了不同的功能。其中最核心的概念是IoC(InversionofControl)和DI(DependencyInjection),它們可以幫助我們管理應用程序中的對象和依賴關系。

2.Spring的核心容器:Spring框架的核心容器是BeanFactory和ApplicationContext,它們可以管理應用程序中的對象和依賴關系。BeanFactory是一個較早的版本,而ApplicationContext是一個較新的版本,它提供了更多的功能和擴展。

3.SpringMVC:SpringMVC是Spring框架中的一個模塊,它提供了一個基于模型-視圖-控制器(MVC)模式的Web應用程序開發(fā)框架。它可以幫助我們輕松地創(chuàng)建Web應用程序,并提供了許多有用的功能,如數(shù)據(jù)綁定、表單驗證和國際化等。

4.SpringBoot:SpringBoot是一個快速開發(fā)框架,它可以幫助我們快速創(chuàng)建基于Spring框架的Web應用程序。它可以自動配置許多常見的Spring特性,如數(shù)據(jù)源、消息隊列和安全性等。

5.SpringSecurity:SpringSecurity是一個用于身份驗證和授權的框架,它可以幫助我們保護Web應用程序免受未經(jīng)授權的訪問。它提供了許多有用的功能,如身份驗證、授權、密碼重置等。

Spring加載配置文件(org.springframework.beans.factory.BeanDefinitionStoreException)

1、首先手動加載Spring配置文件有兩個類,分別是ClassPathXmlApplicationFileSystemXmlApplicationContext;兩個類的區(qū)別。

2、然后就是“classpath:”是可以缺省的。如果是絕對路徑,就需要加上“file:”前綴,注意的是不可缺省FileSystemXmlApplicationContext的。

3、最后就是通過@PropertySource注解,這時候就是實現(xiàn)配置文件加載用法示例:在java類文件中使用PropertySource即可。

spring上下文是什么

Spring上下文是一個配置文件,向Spring框架提供上下文信息。

spring框架寫了多少年

2002年10月,RodJohnson撰寫了一本名為ExpertOne-on-OneJ2EE設計和開發(fā)的書。本書由Wrox出版,介紹了當時Java企業(yè)應用程序開發(fā)的情況,并指出了JavaEE和EJB組件框架中的存在的一些主要缺陷。在這本書中,他提出了一個基于普通Java類和依賴注入的更簡單的解決方案。

在本書發(fā)布后不久,開發(fā)者JuergenHoeller和YannCaroff說服RodJohnson創(chuàng)建一個基于基礎結構代碼的開源項目。Rod,Juergen和Yann于2003年2月左右開始合作開發(fā)該項目。Yann為新框架創(chuàng)造了“Spring”的名字。YannCaroff在早期離開了團隊,RodJohnson在2012年離開,JuergenHoeller仍然是Spring開發(fā)團隊的積極成員。

自2004年1.0版本發(fā)布以來,Spring框架迅速發(fā)展。Spring2.0于2006年10月發(fā)布,到那時,Spring的下載量超過了100萬。Spring2.0具有可擴展的XML配置功能,用于簡化XML配置,支持Java5,額外的IoC容器擴展點,支持動態(tài)語言。

在Rod領導下管理Interface21項目于2007年11月更名為SpringSource。同時發(fā)布了Spring2.5。Spring2.5中的主要新功能包括支持Java6/JavaEE5,支持注釋配置,classpath中的組件自動檢測和兼容OSGi的bundle。

2007年,SpringSource從基準資本獲得了A輪融資(1000萬美元)。SpringSource在此期間收購了多家公司,如Hyperic,G2One等。2009年8月,SpringSource以4.2億美元被VMWare收購。SpringSource在幾周內(nèi)收購了云代工廠,這是一家云PaaS提供商。2015年,云代工廠轉型成了非營利云代工廠。

2009年12月,Spring3.0發(fā)布。Spring3.0具有許多重要特性,如重組模塊系統(tǒng),支持Spring表達式語言,基于Java的bean配置(JavaConfig),支持嵌入式數(shù)據(jù)庫(如HSQL,H2和Derby),模型驗證/REST支持和對JavaEE的支持。

2011年和2012年發(fā)布了許多3.x系列的小版本。2012年7月,RodJohnson離開了團隊。2013年4月,VMware和EMC通過GE投資創(chuàng)建了一家名為Pivotal的合資企業(yè)。所有的Spring應用項目都轉移到了Pivotal。

2013年12月,Pivotal宣布發(fā)布Spring框架4.0。Spring4.0是Spring框架的一大進步,它包含了對Java8的全面支持,更高的第三方庫依賴性(groovy1.8+,ehcache2.1+,hibernate3.6+等),JavaEE7支持,groovyDSLforbean定義,對websockets的支持以及對泛型類型的支持作為注入bean的限定符。

2014年至2017年期間發(fā)布了許多Spring框架4.xx系列版本。

Spring5.0GA版本于2017年9月28日發(fā)布。Spring5.0開始支持JDK8和JavaEE7,同時兼容JDK9。全面支持Servlet3.1,還引入了一個全新的模塊SpringWebFlux用于替代老話的spring-webmvc;對Kotlin也有了更好的支持。

所以從2003到現(xiàn)在2021年,寫了18年了

返回列表
上一篇:
下一篇: