新聞中心
1、Java Web開發(fā)簡史
自1995年James Gosling(詹姆斯·高斯林)帶領(lǐng)團(tuán)隊(duì)設(shè)計(jì)發(fā)布Java語言以來,Java一直排在編程語言排行榜的前列,James Gosling也被稱為“Java之父”。

創(chuàng)新互聯(lián)公司專注于綏棱網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠為您提供綏棱營銷型網(wǎng)站建設(shè),綏棱網(wǎng)站制作、綏棱網(wǎng)頁設(shè)計(jì)、綏棱網(wǎng)站官網(wǎng)定制、小程序開發(fā)服務(wù),打造綏棱網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供綏棱網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。
在最初發(fā)布的Java版本中,包含Java SE、JavaEE、JavaME。
Java SE(Standard Edition)作為標(biāo)準(zhǔn)版本,提供最核心的基礎(chǔ)功能,Java EE(Enterprise Edition)作為企業(yè)版,主要用于企業(yè)級(jí)的Web開發(fā),JavaME(Micro Edition)作為微型版本主要應(yīng)用與移動(dòng)設(shè)備的開發(fā)。隨著Java的語言的廣泛應(yīng)用,Java也找到了自身的優(yōu)勢,Java EE版本被應(yīng)用得最多。
從1996年開始,JavaEE開發(fā)是基于JSP + Java Bean來完成的。
后來慢慢地演變,1997年官方推出了 JSP + Servlet + Java Bean來進(jìn)行開發(fā),Servlet起到了調(diào)度控制的作用,這是MVC設(shè)計(jì)的雛形。
然后,發(fā)展出現(xiàn)了 JSP + Sevlet + Java Bean + Dao的模式,將業(yè)務(wù)邏輯處理和數(shù)據(jù)庫訪問分離,出現(xiàn)了三層架構(gòu)設(shè)計(jì)理念。
再后來,1998年前后,為了滿足多服務(wù)器之間的通信,采用了JSP + Servlet + EJB的形式,出現(xiàn)了RPC設(shè)計(jì)的雛形。
之后,繼續(xù)演變,在2006年首次出現(xiàn) JSF + EJB + JPA,提出前后端完全隔離開發(fā)的思想。
當(dāng)然,這些技術(shù)都是Java官方提供的。好像,一直都不那么受歡迎。尤其是在開源社區(qū)發(fā)布一些開源的產(chǎn)品用來來代替官方退出的這些技術(shù),主要目的是為了簡化開發(fā)。于是就出現(xiàn)了許多非常經(jīng)典的Java開發(fā)框架。。
2、Java Web框架創(chuàng)始人
下面,簡單總結(jié)四位全球知名的Java Web開發(fā)框架創(chuàng)始人,也是JavaEE開發(fā)的改造者,
第一位是Gavin King(加文·金),Hibernate框架創(chuàng)始人,一個(gè)具有革命性意義的、全自動(dòng)化的ORM框架,于2006年發(fā)布,最初的版本是基于JPA來實(shí)現(xiàn)的。
第二位是Craig Mcclanahan(克雷格·麥克拉納漢),著名的Struts框架創(chuàng)始人,叫Craig Mcclanahan(克雷格·麥克拉納漢),比較早的程序員都用過Struts1和Struts2,感受過非常酸爽的味道。2008年發(fā)布1.0版本,在2013年6月底還爆發(fā)了一次眼中的安全漏洞,那時(shí)候開始,我開始全面棄用Struts框架。
第三位是Clinton Begin(克林頓·比格),MyBatis框架創(chuàng)始人,2010年發(fā)布,最早期的名字叫做iBatis,它是一個(gè)比Hibernate更加輕量級(jí)的,半自動(dòng)化的持久化框架。目前,絕大部分互聯(lián)網(wǎng)公司都是采用MyBatis作為持久層的框架。
第四位是Rod Johnson(羅德·約翰遜),大名鼎鼎的Spring框架創(chuàng)始人,2004年發(fā)布1.0版本,以前叫做萬能膠,現(xiàn)在叫做全家桶,真正給程序員帶來了春天。
小伙伴們可以對(duì)比一下發(fā)際線。
3、Spring的演變
Spring是一個(gè)通用性非常強(qiáng)的框架,它提供的工具也非常全面,能滿足各個(gè)領(lǐng)域的開發(fā)需求。因此,使用Spring之前需要完成大量的個(gè)性化配置。在Spring演變過程中,一直存在一個(gè)爭議,是使用XML作為配置方式 還是 使用 Annotation注解作為配置方式?
Spring在開源社區(qū)不斷質(zhì)疑聲中,不斷的發(fā)展和演變,直到Spring 4.0版本發(fā)布的時(shí)候,已經(jīng)全面支持注解方式配置,沒有XML也可以進(jìn)行開發(fā)。但是,開發(fā)者們在使用純注解開發(fā)以后,發(fā)現(xiàn)代碼侵入比較多,配置也稍顯麻煩,尤其是一些Maven依賴也比較繁雜,包括使用外部的Tomcat容器部署也需要不少的工作量。
于是,Pivotal團(tuán)隊(duì)從2013年開始研發(fā)設(shè)計(jì)Spring Boot,它的初衷是為了簡化開發(fā),旨在解放程序員的雙手。2014年4月,發(fā)布全新開源的輕量級(jí)框架,Spring Boot1.0版本。
4、Spring Boot的核心功能
(1)可以獨(dú)立運(yùn)行Spring項(xiàng)目
Spring Boot可以以jar包的形式進(jìn)行獨(dú)立的運(yùn)行,使用:java -jar xx.jar 就可以成功的運(yùn)行項(xiàng)目,或者在應(yīng)用項(xiàng)目的主程序中運(yùn)行main函數(shù)即可;
(2)內(nèi)嵌的Servlet容器
內(nèi)嵌容器,使得我們可以執(zhí)行運(yùn)行項(xiàng)目的主程序main函數(shù),實(shí)現(xiàn)項(xiàng)目的快速運(yùn)行;主程序代碼SpringbootDemoApplication.java
(3)提供starter簡化Manen依賴
Spring Boot提供了一系列的starter pom用來簡化我們的Maven依賴,比如創(chuàng)建一個(gè)web項(xiàng)目,只需要添加spring-boot-starter-web即可:
(4)自動(dòng)配置Spring
Spring Boot會(huì)根據(jù)我們項(xiàng)目中類路徑的jar包/類,為jar包的類進(jìn)行自動(dòng)配置Bean,這樣一來就大大的簡化了我們的配置。當(dāng)然,這只是Spring考慮到的大多數(shù)的使用場景,在一些特殊情況,我們還需要自定義自動(dòng)配置;
(5)無代碼生成、無XML配置
Spring Boot神奇的地方不是借助于代碼生成來實(shí)現(xiàn)的,而是通過條件注解的方式來實(shí)現(xiàn)的,這也是Spring 4.x的新特性。
5、結(jié)論
所以,Spring Boot是由Spring發(fā)展演進(jìn)而來的,是Spring進(jìn)化的結(jié)果,是對(duì)Sping的升級(jí)。
本文名稱:為什么越來越多的人選擇SpringBoot?
文章URL:http://m.fisionsoft.com.cn/article/coodiej.html


咨詢
建站咨詢
