1991 年,James Gosling 博士發佈產品 Oak,這是 Java 語言的前身。前端
1995 年,Oak 語言更名爲 Java。java
1996 年,JDK(Java開發所使用的工具包)1.0 發佈,提供了純解釋執行的 Java 虛擬機實現:Sun Classic VM。c++
1997 年,JDK1.1 發佈,表明技術有:JDBC、JavaBeans、內部類、反射。程序員
1998 年,JDK1.2 發佈,Java 技術體系被拆分爲 J2SE、J2EE、J2ME 三大致系。正則表達式
2000 年,JDK1.3 發佈,默認的 Java 虛擬機由 Sun Classic VM 改成 HotSopt。後端
2002 年,JDK1.4 發佈,Java 真正走向成熟,表明技術有:正則表達式、NIO等。服務器
2004 年,JDK1.5 發佈,對語法易用性作了很大改進,新增了泛型、枚舉等,表明技術有:併發包等。架構
2006 年,JDK1.6 發佈,將 J2EE/J2SE/J2ME 的命名方式改成 Java SE 六、Java EE 六、Java ME 6。併發
2009 年,Sun 公司由於經營不善被 Oracle 公司收購。框架
2011 年,JDK1.7 發佈。
2013 年,JDK1.8 發佈。
java起初是爲了解決其餘語言移植性差的問題,好比說c或者c++編寫的程序只能在單一系統上面跑,要想移植代碼幾乎須要徹底重寫一遍程序,java在底層系統之上創建了一個叫作JVM(Java虛擬機)的東西,來隔絕因系統不一樣產生的影響,因此java一出來就廣受歡迎,隨着規模的壯大,參與的人員愈來愈多,java造成了一個龐大而完善的社區。
M:Model(模型)定義數據的增刪查改 例如Mybatis、Hibernate
V:View(視圖)負責處理前端的請求以 例如SpringMVC、Struts
C:Controller(控制器)負責邏輯的處理。
介紹框架以前不得不介紹下Spring框架,Spring是框架的框架,自己並不處理具體的業務,例如將MyBatis和SpringMVC直接鏈接在一塊兒彷佛有點強人所難,畢竟 強扭的瓜不甜,可是Spring這個中間媒人的存在就提供了極大的便利,由於Spring幾乎擁有因此框架的接口,直接調用便可。
Struts、Spring、Hibernate
早期的javaWeb三大框架,由圖可見Spring負責全局控制,而其餘框架之間並不之間進行交互,都是經過Spring完成的
SpringMVC、Spring、Mybatis
SSH框架更替爲SSM主要是Struts和SpringMVC、以及Hibernate和Mybatis之間的優勝劣汰,固然並非前者徹底不行,只是大衆選擇了後者,前者也有不少可取之處賽過後者的。
固然沒有什麼東西永遠是最好的,Spring已經開始被人嫌棄了(==!),由於其繁瑣的配置文件,每每整合一個SSH或者SSM項目就須要半天時間,這對於當前高效開發的社會來講簡直太慢了,so,SpringBoot應運而生,其實SpringBoot就是簡化的Spring,作了更加簡潔的封裝,再配合Maven搭建一個JavaWeb項目只須要幾分鐘。
Spring Cloud 是一套完整的微服務解決方案,基於 Spring Boot 框架,準確的說,它不是一個框架,而是一個大的容器,它將市面上較好的微服務框架集成進來,從而簡化了開發者的代碼量。這已經不是一個簡單的後端程序員能涉及到的了。什麼是微服務架構,改天再議。