本文目錄一覽:
自學Java如何入門?
自學Java看這一篇就夠啦!Java學習路線圖分享給你,跟着學習吧!
一、Java基礎
JavaSE基礎是Java中級程序員的起點,是幫助你從小白到懂得編程的必經之路。
在Java基礎板塊中有6個子模塊的學習:
基礎語法,可幫助你建立基本的編程邏輯思維;
面向對象,以對象方式去編寫優美的Java程序;
集合,後期開發中存儲數據必備技術;
IO,對磁盤文件進行讀取和寫入基礎操作;
多線程與並發,提高程序效率;
異常,編寫代碼邏輯更加健全;
網絡編程,應用服務器學習基礎,完成數據的遠程傳輸。
學習該階段,可以完成一些簡單的管理系統、坦克大戰遊戲、QQ通信等。
二、數據庫
數據庫不僅僅是Java開發工程師的必學課程,也是其他語言都需要掌握的技能。用於對交互過程中客戶的數據進行存儲。
該板塊包括關係型數據庫和非關係型數據庫。
例如:MySQL、oracle、redis、MongoDB等。數據庫學習完畢後,可以將數據存儲到數據庫中,也可以通過SQL語句從數據庫中查詢數據,結合Java項目可以實現動態站點的數據的保存。
技術樹
三、前端技術
Javaweb階段包括前端、數據庫和動態網頁。Javaweb是互聯網項目的入門課程,是學習後面高進階課程的基礎。
首先,我們先看一下前端板塊。該板塊主要包括如下幾個模塊:
HTML5,網頁製作標記語言;
CSS,對HTML製作網頁進行美化;
JavaScript,嵌入在頁面中的腳本語言,具備邏輯性;
Vue,前端框架,簡化了與服務器端交互的操作,用戶良好的交互體驗是必不可少的。
學習前端技術後,可以完成類似京東、淘寶的前端工程的編寫。
技術樹
四、動態網頁技術
動態網頁是中級程序員服務器端編程的基礎,是高級框架學習的必備課程,後期學習的框架、服務底層都是基於動態網頁技術之上的。
該板塊包括Javaweb核心技術、包括Servlet、Request、Response、Cookie和Session等,通過這些技術的學習可以完成動態站點開發,可更好的完成服務器端與客戶的交互,讓頁面的數據「動」起來,做出小型的應用系統。
技術樹
五、編程強化
編程強化是對解決實際問題方面做一個深入的了解和應用,是對JavaSE基礎的加強,對後期自動以框架和對一些服務框架的底層理解做支撐。
編程強化板塊主要包括如下幾個模塊:多線程高級、涉及線程內存、線程通信等;JVM優化,對JVM底層進行調優來提高項目執行效率;NIO,同步非阻塞IO來提高效率。
學習該階段,可以對原有項目進行優化從而使程序更快更穩定。
技術樹
六、軟件項目管理
JavaSE基礎是Java中級程序員的起點,是幫助你從小白到懂得編程的必經之路。
在Java基礎板塊中有6個子模塊的學習:基礎語法,可幫助你建立基本的編程邏輯思維;面向對象,以對象方式去編寫優美的Java程序;集合,後期開發中存儲數據必備技術;IO,對磁盤文件進行讀取和寫入基礎操作;多線程與並發,提高程序效率;異常,編寫代碼邏輯更加健全;網絡編程,應用服務器學習基礎,完成數據的遠程傳輸。
學習該階段,可以完成一些簡單的管理系統、坦克大戰遊戲、QQ通信等。
技術樹
七、熱門技術框架
使用Javaweb進行企業級開發是完全可以的,但是開發效率比較低,所以對常用的邏輯操作進行封裝就形成了框架,因此框架是企業開發的入門技能。
熱門框架板塊主流框架有如下幾個:Spring框架,佔據統治地位,其生態系統涉及各個方面解決方案;MyBatis框架,使用ORM思想對數據庫進行操作。
該板塊學習後,就可以進行真實企業級項目開發了,做出的項目也會更加符合企業要求。
技術樹
八、分佈式架構方案
隨着互聯網的發展,業務的複雜性和用戶的體驗性都需要提高,所以分佈式架構出現了。該板塊主要講解的是分佈式架構的相關解決方案。
主要包括如下模塊:Dubbo,高性能的 RPC 服務發佈和調用框架;SpringBoot,簡化Spring應用的初始搭建以及開發過程;Spring Cloud,一系列框架的有序集合,如服務發現註冊、配置中心、負載均衡、斷路器、數據監控等。
該板塊的學習,可以具備大型互聯網項目開發的必備技術和實際經驗,為進入BATJ打下基礎
技術樹
九、服務器中間件
中間件板塊是大型互聯網項目中必備的。服務中間件可以幫助各子模塊間實現互相訪問,消息共享或統一訪問等功能。其包括遠程服務框架中間件,例如阿里(Apache)的RPC框架Dubbo等;消息隊列中間件,例如:阿里巴巴開源分佈式中間件RocketMQ、高吞吐量消息發佈和流處理服務Kafka等。
學習服務中間件是中級JavaEE工程師必要技術,也是JavaEE架構師必須精通的技術。
技術樹
十、服務器技術
不管是使用原生Javaweb進行開發,還是使用框架進行開發,項目最終需要對外發佈才能供全世界的人訪問到,而服務器板塊就可以解決這個問題,所以服務器是項目發佈的必要技術。該板塊包括虛擬化和web應用服務器的學習,主要包括如下幾個模塊:Vmware,虛擬機軟件;Linux,專門用於服務器的系統;Nginx,集群部署時反向代理服務器;Tomcat,項目發佈時主要使用的服務器。
該板塊學習後,我們就可以把開發好的項目發佈到服務器中,然後供你的小夥伴遠程訪問了,超酷!
技術樹
十一、容器技術
容器化技術是近兩年超級火的一個專題,通過容器化技術可以對環境進行打包,方便移植,大大提高了開發效率。該板塊包括容器化技術Docker和其平台管理引擎Kubernetes,其中,Docker 是一個開源的應用容器引擎,可以打包應用以及依賴包到一個可移植的鏡像中,然後發佈到任何流行的Linux或Windows 機器上,也可以實現虛擬化。而Kubernetes是一個開源的,用於管理雲平台中多個主機上的容器化的應用,Kubernetes的目標是讓部署容器化的應用簡單並且高效。通過該板塊的學習,你可以通過上述技術快速搭建環境,節省開發時間,提高開發效率。
技術樹
十二、業務解決方案
雖然我們已經具備了基礎技術和高階技術,但是要想與企業開發相接軌,還需要對實際項目的業務解決方案進行探究。而此版塊就是在實際業務場景中的真實解決方案集合,常用的業務解決方案有如下:搜索業務場景解決方案、日誌收集與分析場景解決方案、工作流引擎場景解決方案、任務調度場景解決方案、地圖開發平台場景解決方案、支付開放平台場景解決方案、圖表可視化場景解決方案。通過分析實際業務來學習這個解決方案技術集,完全可以達到中級甚至高級工程師水平。
技術樹
學習java需要什麼基礎?
從安裝JDK的那一瞬間,我就知道我將和Java結下不解之緣,就像談戀愛一樣,始於心動,終於白首。不知不覺來千鋒廣州參加Java面授學習已經一個多月了,從「helloWorld」開始,一路走來確實不容易。
第一周學習了Java數據類型、運算符、分支、循環結構,方法。都是比較基礎的部分,內容有些多,還好我之前有看過書能跟上進度。循環結構這部分的知識比較考驗邏輯性,特別是多重嵌套循環,比如打印九九乘法口訣表,正三角形等,之前寫日曆查詢時寫了70多行代碼,也就是用了嵌套for循環以及if分支,當時覺得代碼寫太多了。學習了方法之後,發現寫起代碼來變得靈活了,這裡調用一個方法,那裡調用一個方法,非常方便。
第一周學習的位運算和位移運算都比較重要,面試題里就有一個如何快速計算2^3,可能大家第一反應是2*2*2=8,,其實最快的方法就是直接用位移運算符,2
第二,三周學習了數組、面向對象、內部類、System、Math、String等。面向對象是一種思想,萬事萬物皆對象,這是Java學習的一個核心哲學思想,聽說我們老師花了五年時間才領悟,所以我想我還有很長時間需要去摸索。對象的三大特性封裝、繼承、多態以及內部類的知識以後會經常用到,在學習匿名內部類的時候,會學到有關lambda的知識,用五個字來總結就是行為參數化,因為它的簡便性,用過lambda的人都說好。
在學習這一部分的時候要學會使用面向對象的思想去思考問題,當要寫一個程序時,可以先試着在草稿紙上面寫個大概的流程,要學會使用這種打草稿畫流程圖的方法,正所謂工欲利其事,必先利其器。
第四周學習了集合、異常、IO。集合裏面涉及的知識點比較多,但是整理過後會發現集合之間都會有着一些聯繫和區別,其中ArrayList、linkedList、HashMap這幾個是需要重點掌握的,可以把這些集合之間的區別以及共性做一個整理,這樣會對理解集合有幫助。異常時我們會經常遇到學會拋異常和抓異常,使用finally通知GC來回收那些不再使用可以回收的垃圾。IO是很重要的知識點,可我學得不是很好,主要是被那一大段的單詞給擊敗了,不過IO的本質也還是把內容寫入對應的磁盤,然後從磁盤裏面的內容讀取,這個過程中的流大都是裝飾基礎流的,並沒有想像中那麼複雜。
第五周學習了多線程、線程池、並發、Socket,NIO。說實話,這個星期的知識都很難,並不好掌握,如果是能力強學的好的話,可以做一些類似客戶端與服務器之間的文件傳輸練習,先做單線程然後再實現多線程。如果覺得這一部分學的不太好,就重點學好基礎部分,掌握了基礎,那些難一點的知識才能更好的掌握。
總的來說在千鋒廣州Java面授學習的第一階段收穫還是很多的,學習過程中一定要讓自己靜下心來,編程中要養成打草稿的習慣,先整體再局部。我相信只要把學習Java當成一種興趣,在程序員這條路上我一定能走得更遠。
如何配置java項目的jdk
如果是window的需要在環境變量設置jdk的路徑
我的電腦——屬性——高級系統設置——環境變量——系統變量
添加jdk的bin路徑地址
如果是linux用文本編輯器打開/etc/profile,在profile文件末尾加入:
JAVA_HOME=/usr/share/jdk1.5.0_05
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME
export PATH
export CLASSPATH
如果是jdk配tomcat 可以直接修改tomcat的catalina.bat(window)或者catalina.sh(linux)文件
具體的可以百度 tomcat配置jdk
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/288462.html