Java學(xué)習(xí)路線


Java學(xué)習(xí)路線

簡(jiǎn)單學(xué)了遍Java囤官,發(fā)現(xiàn)Java其實(shí)還是要學(xué)習(xí)很多東西的冬阳,有些也比較難以理解,簡(jiǎn)單整理了下党饮,為第二階段的學(xué)習(xí)做個(gè)準(zhǔn)備肝陪,同時(shí),希望以過(guò)來(lái)人的身份刑顺,可以幫助大家少走一點(diǎn)彎路氯窍,避開一些坑。我是一只菜鳥蹲堂,希望大家不喜就噴狼讨。

1.Java基礎(chǔ)圖解:

2.Java總體路線


Java 總體解說(shuō)

Java 是一門純粹的面向?qū)ο蟮木幊陶Z(yǔ)言,所以除了基礎(chǔ)語(yǔ)法之外柒竞,必須得弄懂它的 oop 特性:封裝政供、繼承、多態(tài)朽基。此外還有泛型布隔、反射的特性,很多框架的技術(shù)都依賴它踩晶,比如 Spring 核心的 Ioc 和 AOP执泰,都用到了反射枕磁,而且 Java 自身的動(dòng)態(tài)代理也是利用反射實(shí)現(xiàn)的渡蜻。此外還有 Java 一些標(biāo)準(zhǔn)庫(kù)也是非常常見,比如集合计济、I/O茸苇、并發(fā),幾乎在 Web 開發(fā)中無(wú)處不在沦寂,也是面試經(jīng)常會(huì)被問到的学密,所以在自學(xué) Java 后端之前,不妨先打好這些基礎(chǔ)传藏,另外還有 Java8 的一些新特性腻暮,也要重點(diǎn)關(guān)注彤守,比如 Lambda 表達(dá)式、集合的 Stream 流操作哭靖、全新的 Date API 等等具垫,關(guān)于新特性,我也寫了幾篇關(guān)于這方面的博客试幽,請(qǐng)自行找吧筝蚕,就不貼出來(lái)了。

關(guān)于書籍推薦铺坞,我是不建議初學(xué)者一開始就拿著「Java 編程思想」啃的起宽,因?yàn)楫?dāng)初我就是那個(gè)當(dāng)天下午決定自學(xué) Java,晚上就抱著這本書啃的人济榨,說(shuō)實(shí)話坯沪,我當(dāng)時(shí)真的不懂它在說(shuō)啥,因?yàn)槲覜]有一點(diǎn)的面向?qū)ο笳Z(yǔ)言編程的基礎(chǔ)腿短,而這本書又寫得太博大精深了屏箍,在當(dāng)時(shí)的我來(lái)說(shuō),完全是天書橘忱,但是我認(rèn)為它仍然是 Java 界的圣經(jīng)赴魁,每讀一次都有所收獲。我在這里推薦你們一開始先看「Java 核心技術(shù)」钝诚,這本書講得比較通俗易懂颖御,初學(xué)者比較能接受。

關(guān)于視頻推薦凝颇,我當(dāng)初就是聽某客的畢向東老師講的 Java 基礎(chǔ)教程(可以關(guān)注我的微信公眾號(hào)獲扰斯啊),畢老師講的實(shí)在是太生動(dòng)有趣了拧略,不知不覺把我?guī)нM(jìn) Java 的坑里無(wú)法自拔芦岂,有時(shí)候我會(huì)聽他視頻時(shí)笑出聲來(lái),也許是我那段自學(xué)階段最有趣的時(shí)刻了垫蛆。

關(guān)于 sql 方面:

我是了解了一些基礎(chǔ)語(yǔ)法之后禽最,就直接跟著視頻的老師做一些表操作實(shí)戰(zhàn)練習(xí)了,比如單表查詢袱饭、多表查詢等川无。我建議學(xué) sql 切勿眼高手低,需多加練習(xí)虑乖,不要只看懂了就行懦趋,因?yàn)楣ぷ髦袑懙靡皇趾?jiǎn)練的 sql 是非常重要的。在這里我說(shuō)下我在項(xiàng)目一直秉承著 sql 語(yǔ)句是能避免多表查詢就避免多表查詢疹味,能夠分開多條語(yǔ)句就分開多條語(yǔ)句仅叫,因?yàn)檫@里涉及到多表查詢性能和數(shù)據(jù)庫(kù)擴(kuò)展的問題帜篇。

關(guān)于 JDBC 方面:

你需要弄懂 JDBC API 的用法,其實(shí)它只是一組規(guī)范接口诫咱,所有數(shù)據(jù)庫(kù)驅(qū)動(dòng)只要實(shí)現(xiàn)了 JDBC坠狡,那么我們就可以通過(guò)標(biāo)準(zhǔn)的 API 調(diào)用相應(yīng)的驅(qū)動(dòng),完全不用知道驅(qū)動(dòng)是怎么實(shí)現(xiàn)的遂跟,這就是面向接口編程的好處逃沿。而且對(duì)于 JDBC 我是直接看視頻去理解的,跟著視頻做了一個(gè)基于 Apache Dbutils 工具做了一個(gè)具有事務(wù)性的小工具幻锁,我特意用思維導(dǎo)圖總結(jié)了一下:

曾經(jīng)開源中國(guó)創(chuàng)始人紅薯寫了一篇文章? 凯亮,我覺得他說(shuō)的太對(duì)了,在如今 Java 開發(fā)中哄尔,很多開發(fā)者只知道怎么使用框架假消,但根本不懂 Web 的一些知識(shí)點(diǎn),其實(shí)框架很多岭接,但都基本是一個(gè)套路富拗,所以在你學(xué)習(xí)任何框架前,請(qǐng)把 Web 基礎(chǔ)打好鸣戴,把 Web 基礎(chǔ)打好了啃沪,看框架真的是如魚得水。

關(guān)于 JSP窄锅,你只要了解它其實(shí)就是一個(gè) Servlet 就行了创千,關(guān)于它的一些標(biāo)簽用法,我認(rèn)為可以直接忽略入偷,因?yàn)楝F(xiàn)在互聯(lián)網(wǎng)幾乎沒哪間公司還用 JSP追驴,除了一些老舊的項(xiàng)目。現(xiàn)在都是流行前后端分離疏之,單頁(yè)應(yīng)用殿雪,后端只做 API 接口的時(shí)代了,所以時(shí)間寶貴锋爪,把這些時(shí)間重點(diǎn)放在 Servlet 規(guī)范上面吧丙曙。

關(guān)于 Tomcat,它是一個(gè) Web 容器几缭,我們寫的后端項(xiàng)目都要部署到Web容器才能運(yùn)行河泳,它其實(shí)是一個(gè)遵循 Http沃呢,通過(guò) Socket 通信與客戶端進(jìn)行交互的服務(wù)端程序

Java Web 框架多如牛毛年栓,等你有一定經(jīng)驗(yàn)了,你也可以寫一個(gè) Web 框架薄霜,網(wǎng)上很多說(shuō) Spring某抓、Struts2纸兔、Hibernate 是 Java 三架馬車,我只想說(shuō)否副,那是很久遠(yuǎn)的事情了汉矿,我嚴(yán)重不推薦 Struts2、Hibernate备禀,相信我洲拇,一開始只需要上手 Spring、SpringMVC曲尸、Mybatis 就可以了赋续,特別是 Spring 框架,其實(shí) Spring 家族的框架都是很不錯(cuò)的另患。

但是提醒一點(diǎn)就是纽乱,千萬(wàn)不要沉迷于各種框架不能自拔,以會(huì)多種用法而沾沾自喜昆箕,導(dǎo)致知其然而不知其所以然鸦列。

Spring其核心思想就是 IOC 和 AOP

SpringMVC 它的思想是全部請(qǐng)求統(tǒng)一用一個(gè) Servlet 去做請(qǐng)求轉(zhuǎn)發(fā)與控制,這個(gè) Servlet 叫 DispatcherServlet

Mybatis 它可實(shí)現(xiàn)動(dòng)態(tài)拼裝 sql鹏倘,避免了幾乎所有的 JDBC 代碼和手動(dòng)設(shè)置參數(shù)以及獲取結(jié)果集薯嗤。

使用了 SSM 框架后,你會(huì)覺得框架也不過(guò)這么回事纤泵,如果你對(duì) Spring 有過(guò)大概了解应民,你也會(huì)產(chǎn)生想寫一個(gè)「山寨版」Spring 的心思了,一個(gè)輕量級(jí) Web 框架主要具備以下功能:

可讀取用戶自定義配置文件夕吻,并以此來(lái)初始化框架诲锹;

具備 Bean 容器,管理項(xiàng)目的類的對(duì)象生命周期涉馅;

具備依賴注入归园,降低類之間的耦合性;

具備 AOP 功能稚矿,使項(xiàng)目可進(jìn)行橫向編程庸诱,可不改變?cè)写a的情況增加業(yè)務(wù)邏輯;

具備 MVC 框架模式晤揣。

其實(shí)除了 SSM 之外桥爽,Web 框架可謂是百家齊放,其中以 Spring 全家桶最為耀眼昧识,在這里我極力推薦兩個(gè) Spring 家族框架:SpringBoot 和 SpringCloud钠四。

SpringBoot 彌補(bǔ)了 Spring 配置上的缺點(diǎn),再也不用為繁雜的 xml 費(fèi)勁精力了跪楞,堪稱是 Java 后端開發(fā)的顛覆者缀去,推薦書籍「Java EE 開發(fā)的顛覆者:SpringBoot實(shí)戰(zhàn)」

SpringCloud 是一個(gè)微服務(wù)架構(gòu)侣灶,能夠?qū)㈨?xiàng)目按照業(yè)務(wù)分成一個(gè)個(gè)微服務(wù),每個(gè)微服務(wù)都可獨(dú)立部署缕碎,服務(wù)之間互相協(xié)調(diào)褥影。當(dāng)一個(gè)項(xiàng)目越來(lái)越大時(shí),隨之而來(lái)的是越來(lái)越難以維護(hù)咏雌,此時(shí)將項(xiàng)目拆分成若干個(gè)微服務(wù)凡怎、單獨(dú)維護(hù)、單獨(dú)部署赊抖,也可以降低項(xiàng)目不同業(yè)務(wù)間的耦合度栅贴。推薦書籍「Spring Cloud 與 Docker 微服務(wù)架構(gòu)實(shí)戰(zhàn)」,這本書將 Docker 與微服務(wù)完美地結(jié)合在一起熏迹,堪稱完美檐薯!

Redis:一個(gè)高性能的 key-value 數(shù)據(jù)庫(kù),當(dāng)有并發(fā)量很高的請(qǐng)求時(shí)注暗,將數(shù)據(jù)緩存在 Redis 中坛缕,將提高服務(wù)器的響應(yīng)性能,大大減輕數(shù)據(jù)庫(kù)的壓力捆昏。

Git:世界上最先進(jìn)的分布式版本控制系統(tǒng)赚楚,建議所有初學(xué)者從命令行開始使用 Git!

Maven:一個(gè)用于構(gòu)建項(xiàng)目的工具骗卜,將項(xiàng)目間的依賴通過(guò) xml 完美地組織到一起宠页,可通過(guò)編譯插件將項(xiàng)目編譯成字節(jié)碼文件。還有類似的 Gradle 也是不錯(cuò)的選擇寇仓。

Linux:至少要求常用的命令會(huì)用举户,能夠在 linux 環(huán)境下部署項(xiàng)目。

Docker:簡(jiǎn)直是項(xiàng)目部署神器啊遍烦,來(lái)不及解釋了俭嘁,!

工欲善其事服猪,必先利其器供填,以下是我推薦的一些開發(fā)工具:

Intellij IDEA:Java 開發(fā)最好的 IDE,這個(gè)是公認(rèn)的罢猪,我一開始是用 Eclipse 的近她,后來(lái)用了 Intellij IDEA,才發(fā)現(xiàn) Eclipse 就是一坨屎膳帕,所以我以過(guò)來(lái)人勸你們不要使用 Eclipse粘捎,直接 Intellij IDEA!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市晌端,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌恬砂,老刑警劉巖咧纠,帶你破解...
    沈念sama閱讀 223,126評(píng)論 6 520
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異泻骤,居然都是意外死亡漆羔,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,421評(píng)論 3 400
  • 文/潘曉璐 我一進(jìn)店門狱掂,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)演痒,“玉大人,你說(shuō)我怎么就攤上這事趋惨∧袼常” “怎么了?”我有些...
    開封第一講書人閱讀 169,941評(píng)論 0 366
  • 文/不壞的土叔 我叫張陵器虾,是天一觀的道長(zhǎng)讯嫂。 經(jīng)常有香客問我,道長(zhǎng)兆沙,這世上最難降的妖魔是什么欧芽? 我笑而不...
    開封第一講書人閱讀 60,294評(píng)論 1 300
  • 正文 為了忘掉前任,我火速辦了婚禮葛圃,結(jié)果婚禮上千扔,老公的妹妹穿的比我還像新娘。我一直安慰自己库正,他們只是感情好曲楚,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,295評(píng)論 6 398
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著褥符,像睡著了一般洞渤。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上属瓣,一...
    開封第一講書人閱讀 52,874評(píng)論 1 314
  • 那天载迄,我揣著相機(jī)與錄音,去河邊找鬼抡蛙。 笑死护昧,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的粗截。 我是一名探鬼主播惋耙,決...
    沈念sama閱讀 41,285評(píng)論 3 424
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了绽榛?” 一聲冷哼從身側(cè)響起湿酸,我...
    開封第一講書人閱讀 40,249評(píng)論 0 277
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎灭美,沒想到半個(gè)月后推溃,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,760評(píng)論 1 321
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡届腐,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,840評(píng)論 3 343
  • 正文 我和宋清朗相戀三年铁坎,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片犁苏。...
    茶點(diǎn)故事閱讀 40,973評(píng)論 1 354
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡硬萍,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出围详,到底是詐尸還是另有隱情朴乖,我是刑警寧澤,帶...
    沈念sama閱讀 36,631評(píng)論 5 351
  • 正文 年R本政府宣布助赞,位于F島的核電站寒砖,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏嫉拐。R本人自食惡果不足惜哩都,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,315評(píng)論 3 336
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望婉徘。 院中可真熱鬧漠嵌,春花似錦、人聲如沸盖呼。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,797評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)几晤。三九已至约炎,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間蟹瘾,已是汗流浹背圾浅。 一陣腳步聲響...
    開封第一講書人閱讀 33,926評(píng)論 1 275
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留憾朴,地道東北人狸捕。 一個(gè)月前我還...
    沈念sama閱讀 49,431評(píng)論 3 379
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像众雷,于是被迫代替她去往敵國(guó)和親灸拍。 傳聞我的和親對(duì)象是個(gè)殘疾皇子做祝,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,982評(píng)論 2 361

推薦閱讀更多精彩內(nèi)容

  • 對(duì)于軟件開發(fā)來(lái)說(shuō)更是這樣,編程語(yǔ)言比較枯燥鸡岗,學(xué)習(xí)難度大混槐,沒有好的學(xué)習(xí)方法和學(xué)習(xí)路線,在過(guò)程中很容易就會(huì)失去了學(xué)習(xí)的...
    清灑暖捷閱讀 1,038評(píng)論 0 3
  • 可視化編程已經(jīng)能取代高級(jí)語(yǔ)言了嗎轩性? 之前在知乎看到了一則較早的問題現(xiàn)在的可視化編程發(fā)展到什么程度了声登,什么時(shí)候可以取...
    iVX研究所閱讀 616評(píng)論 0 1
  • 阿里大數(shù)據(jù)部門 數(shù)據(jù)研發(fā)專家(P7) 崗位描述: 1、負(fù)責(zé)全域數(shù)據(jù)和應(yīng)用產(chǎn)品的數(shù)據(jù)體系建設(shè)炮姨,通過(guò)數(shù)據(jù)+算法+工程化...
    lindazhangyh閱讀 173評(píng)論 0 0
  • 阿媽離開桃子外出打工的哪天早上捌刮,或是二月碰煌,或是三月舒岸,反正那滿坡的桃花開得很絢爛。桃子只知道今年的桃花開得格外好看...
    甜到掉牙閱讀 650評(píng)論 16 5
  • 今天使用 Github+Hexo 搭建的博客寫文章時(shí)遇到一個(gè) Bug芦圾,查閱資料解決之后蛾派,發(fā)現(xiàn)很多人都遇到過(guò)由于 n...
    養(yǎng)樂多__閱讀 2,291評(píng)論 0 2