**這篇文章主要是關於小白Java學習路線, 整個學習路線很是的清晰明確,適合各類層次的Java自學者,很是全面的Java學習路線。
整理不易,記得幫忙點個贊喲~**前端
有乾貨、更有故事,微信搜索【 編程指北】關注這個不同的程序員,等你來撩~
學習任何一門編程語言,首先要學習的是基礎語法,開啓Java學習的第一步,固然就是深刻掌握計算機基礎、編程基礎語法,面向對象,集合、IO流、線程、併發、異常及網絡編程,這些咱們稱之爲JavaSE基礎。webpack
當你掌握了這些內容以後,你就能夠作出諸如:電腦上安裝的迅雷下載軟件、QQ聊天客戶端、考勤管理系統等桌面端軟件。nginx
互聯網最具價值的是數據,任何編程語言都須要解決數據存儲問題,而數據存儲的關鍵技術是數據庫。MySQL和Oracle都是廣受企業歡迎的數據庫管理系統。Java程序和數據庫通訊的最多見技術是JDBC,Druid和C3P0。程序員
學習這些數據庫技術後,能夠掌握數據庫運維技術、複雜業務表結構設計規範、工做中常見的SQL操做、軟件數據存儲等。web
瀏覽器展現給用戶看到的網頁就是前端,前端有三大基礎技術分別爲Html、CSS、JavaScript,這些學完後,爲了作出更好、更炫的交互式體驗效果,咱們還須要學習jQuery、ElementUI、Vue、Ajax,以及打包工具webpack。面試
學完這些技術後,咱們能夠開發微信小程序、響應式網站、移動端網站、開發相似京東同樣的B2B2C商城、管理後臺等。redis
掌握前端技術只能作靜態網站,但它頁面數據一成不變,而動態網站能夠根據數據庫中變動的數據實現不一樣的內容展現,應用更普遍,所以程序員必需要學會作動態網站。數據庫
使用Java作動態網站,咱們須要學習Servlet、Filter、Session、Cookie、JSP、EL表達式、JSTL等作動態網站的完整知識體系,學完可研發出OA系統、內容網站、BBS等。編程
前面學了JavaSE基礎,但它在企業級應用中程序處理業務的效率並不高、擴展差,編程強化是對JavaSE基礎的增強,將針對性的提升程序處理業務的執行效率、加強程序擴展性。編程強化將增強多線程高級學習,涉及線程內存、線程通訊等技術。小程序
學完之後,能增長一箇中級程序員的知識儲備,不管在面試過程當中仍是未來技術的深刻打一個良好的基礎。
公司開發都是團隊協同開發,爲更好的掌握實際開發,咱們還須要學習經常使用的項目管理平臺、版本控制器、項目構建工具以及自動化部署工具。項目開發必定是有版本升級的,管理好項目進度和版本須要Git、Maven、Sonar這樣的系統平臺。
學習完軟件項目管理後,將掌握整個項目實際開發過程以及整個項目開發過程當中所使用協同開發工具。
Javaweb掌握後,已經具有企業中實際項目的開發能力了,但它開發效率低,代碼量大,開發週期長、開發成本高。企業中普遍使用一些優秀的框架技術來解決上述問題,所以咱們還須要學習框架技術,項目開發中主流的Java框架技術有SpringMVC、Spring、MyBatis、MyBatis Plus、SpringData等。
這些框架技術都是一個優秀程序員所必備的技能。
企業發展過程當中,業務量和用戶量逐漸增長,爲了保證系統的可用性,系統越作越複雜,研發人員增多,你們很難共同維護一個複雜的系統,每每修改部份內容,致使牽一髮而動全身,因此咱們須要升級系統架構,須要用到分佈式微服務的技術。
學習完該階段課程,能夠具有大型SOA架構和微服務架構能力,能掌握大型微服務項目必備技術和實際經驗。
在分佈式系統架構中,服務與服務之間的異步通訊,是很是常見的需求之一,消息中間件的誕生正是爲了解決這類問題。目前市面上的主流消息中間件有RabbitMQ、RocketMQ、Kafka,咱們將學習這3個消息中間件,實現分佈式項目中的異步通訊。
學習完這些後,能夠實現分佈式項目的異步通訊、分佈式應用日誌收集、分佈式事務等。
程序開發完成後,咱們把它們打包部署到服務器中運行,因此咱們須要學習常見的服務器技術,常見的服務器有Linux和Window server,Linux性能高,是當前主流。
咱們寫好的項目須要用一個軟件運行起來,這個軟件叫web容器,咱們須要在服務器上安裝web容器來發布項目,當前主流的web容器有tomcat、jetty、nginx、undertow。
具有了服務器操做系統及web容器,咱們就能夠部署單機的站點,在分佈式系統中,幾十上百的服務,若是使用單機這種部署方式,會投入很高的人力,同時出錯的概率也大。因此服務器虛擬化技術Docker也稱爲現在的必備技術了,Docker能夠幫助運維人員實行快速部署,批量維護.使用Kubernetes實現自動化部署、大規模可伸縮、應用容器管理。
企業開發中會遇到一些通用的業務場景,諸如:搜索引擎、緩存、定時任務、工做流、報表導出、日誌管理、系統監控等,那麼這些通用的解決方案也有現成優秀的免費開源中間件,可供使用。
諸如:ElasticSearch、Lucene、Solr、redis、MongoDB、slf4J、ECharts、Quartz、POI等。業務解決方案課程的業務方案和技術難點,解決了企業開發中90%以上的痛點和難點。
文章持續更新,全文首發自個人我的公衆號,能夠微信搜一搜「 編程指北 」第一時間閱讀,後臺回覆【 pdf】有我搜集的上百本經典的計算機書籍電子版。