java学习路线_java学习路线_我的入坑路
java詳細(xì)路線:
網(wǎng)上有很多學(xué)習(xí)路線,當(dāng)初,我就是受這個(gè)學(xué)習(xí)路線的影響入坑的。
既然看到標(biāo)題為我的java學(xué)習(xí)路,那就給大家看下我是怎么走過(guò)來(lái)的。
階段一_JavaSE
入門推薦書:java開發(fā)實(shí)戰(zhàn)經(jīng)典,對(duì),沒看錯(cuò),就是你們手里這本黃黃的書(頭條不讓發(fā)鏈接,有需要的私信我)。
在這個(gè)階段,可以去牛客網(wǎng)等多途徑找尋筆試題,面試題,書本上的總是基礎(chǔ),遠(yuǎn)遠(yuǎn)達(dá)不到該掌握的水平!
階段二_JavaWeb
Java Web程序設(shè)計(jì)(第3版)-微課視頻版
說(shuō)實(shí)話,學(xué)到這個(gè)地方,涉及到網(wǎng)頁(yè)端了,相信大家都學(xué)過(guò)mysql/sqlserver/等等數(shù)據(jù)庫(kù),最少是掌握了一個(gè)其中一個(gè)把,在這個(gè),大家應(yīng)該還沒有聽到過(guò)nosql,聽到最多的就是關(guān)系型數(shù)據(jù)庫(kù),這是數(shù)據(jù)庫(kù)實(shí)體層(持久層)。至于前端,顯示層,在這個(gè)階段,html5+css+div想必也都學(xué)過(guò)了!后端,這里用的是java,javase大家也都學(xué)過(guò)了,那么在這個(gè)階段,就可以去做一下簡(jiǎn)單的項(xiàng)目了,下面進(jìn)入正兒八經(jīng)的文章。
至少我是想動(dòng)手做項(xiàng)目了,那就開始搞項(xiàng)目了。
借鑒這前文的學(xué)習(xí)路線圖,我也就很傻瓜的開始學(xué)這個(gè)水平檔次的項(xiàng)目了。
因?yàn)橐粋€(gè)人在單打獨(dú)斗,所以當(dāng)爸也當(dāng)媽,前端后端一碗端,不分順序先后,因?yàn)檫@些本就是要獨(dú)立階段開發(fā)的,此處先說(shuō)前端。
前端:HTML5+CSS+Jquery+Bootstrap下
先看下自己的效果圖
看起來(lái)前端是不是很簡(jiǎn)單,不怕你們笑,就這樣,我也做了好久,發(fā)現(xiàn)一個(gè)重大問(wèn)題,CSS/DIV自己學(xué)的是個(gè)什么,不就和沒學(xué)一樣么!
沒人帶么,想想也正常,那就缺啥補(bǔ)啥白,那就再去學(xué)css。
后來(lái)發(fā)現(xiàn)自己js不會(huì),真是弱啊,時(shí)間有限,就直接去學(xué)了jquery,在B站學(xué)的,4天從零玩轉(zhuǎn)jQuery【黑馬程序員】。你要問(wèn)我學(xué)完什么感覺么?算了算了。前端不適合我,自己沒有審美搞前端。?網(wǎng)頁(yè)只要不是黑白在我看來(lái)都是好看的,讓我怎么搞么!搞后端把,所以本文介紹偏向后端。
階段三_框架學(xué)習(xí)
大學(xué)日子過(guò)的太快了,這個(gè)時(shí)候,也該學(xué)習(xí)框架了,這里,因?yàn)槲乙恢痹谏婕?#xff0c;說(shuō)的詳細(xì)一點(diǎn)。先看下web項(xiàng)目結(jié)構(gòu)。
Web項(xiàng)目結(jié)構(gòu)
后端是由于一些實(shí)現(xiàn)了業(yè)務(wù)邏輯Java代碼和數(shù)據(jù)庫(kù)組成。說(shuō)到這,就可以推出Web開發(fā)中經(jīng)典的MVC模式,Model-View-Controller。View,,就是指表現(xiàn)層,Model,是用來(lái)承載數(shù)據(jù)的抽象結(jié)構(gòu),而Controller則是View和Model的橋梁。View存在與前端代碼中,Controller,Model存在與后端代碼中。在后端代碼中,為了保證代碼的整潔,易讀性,一般會(huì)采用分層的辦法,自頂向下分為controller層,service層,dao層,數(shù)據(jù)層或者叫持久層(直接與數(shù)據(jù)庫(kù)打交道)。有時(shí)候,為了達(dá)到解耦的目的,會(huì)在上述基層中間加入相應(yīng)的接口層,以使得接口與實(shí)現(xiàn)分離。
Web項(xiàng)目結(jié)構(gòu)
如圖層次關(guān)系所示,DAO層一般負(fù)責(zé)對(duì)數(shù)據(jù)庫(kù)進(jìn)行增刪改查各種操作,Service層調(diào)用DAO層的操作完成自己的功能需求,Controller層負(fù)責(zé)接收web請(qǐng)求,并調(diào)用Service做出相應(yīng)的處理。
所以以上我們看到,一個(gè)Web 項(xiàng)目前端需要表現(xiàn)層,后端有controller層,service層,dao層,持久層。在表現(xiàn)層,除了剛才提到的html,css,js,ajax,jsp等基礎(chǔ)知識(shí),在實(shí)際開發(fā)中,我們還會(huì)用到許多框架技術(shù),比如tiles,velocity,freemarker等模板技術(shù)來(lái)簡(jiǎn)化表現(xiàn)層的開發(fā)。在持久層,除了jdbc外,還有Mybatis,hibernate等框架來(lái)提高開發(fā)效率。在Java Web中最耀眼的當(dāng)屬Spring了,Spring作為一個(gè)貫穿整個(gè)項(xiàng)目的框架,為項(xiàng)目開發(fā)帶來(lái)依賴注入,面向切面編程的功能。除了這些,我們還需要熟練掌握一種關(guān)系型數(shù)據(jù)庫(kù)的使用,如Mysql,Oracle等,當(dāng)然更好地話還需要掌握一種非關(guān)系型數(shù)據(jù)庫(kù),MongoDB,Redis。
想必你在上面幾段話看到了你學(xué)過(guò)的聽過(guò)的或者沒聽過(guò)的,不管如何,之后都要學(xué)習(xí)掌握。
知識(shí)點(diǎn)列表:
一、開發(fā):
1.視圖層技術(shù)——HTML,CSS,JS,AJAX,Tiles,Velocity,FreeMarker
2.持久層技術(shù)——MyBatis,Hibernate
3.Spring , Spring MVC
4.項(xiàng)目構(gòu)建工具M(jìn)aven
5.日志Log4j
6.版本控制 Git
二、數(shù)據(jù)庫(kù)技術(shù):
1 SQL語(yǔ)句
2.參數(shù)調(diào)優(yōu)
三、操作系統(tǒng):
熟練掌握一種Linux系統(tǒng),原理,Shell命令
四、服務(wù)器技術(shù):
熟練使用并理解一個(gè)應(yīng)用服務(wù)器技術(shù)的原理(Tomcat)
熟練使用并理解一個(gè)Web服務(wù)器技術(shù)的原理(Nginx)
五、附加:
1.緩存技術(shù):
熟練使用并理解一種緩存技術(shù)(Redis,Memcache,EhCache)
2.非關(guān)系型數(shù)據(jù)庫(kù)
熟練使用并理解一種非關(guān)系型數(shù)據(jù)庫(kù)(MongoDB)
3.中間件技術(shù):
JMS:activeMQ和kafka
RPC: Dubbo
4.設(shè)計(jì)模式:
了解并能夠使用幾種最主要的設(shè)計(jì)模式
5.網(wǎng)絡(luò):
熟練使用并理解一個(gè)網(wǎng)絡(luò)開發(fā)技術(shù)(Netty)
熟悉http,TCP協(xié)議
6.Java虛擬機(jī):
熟悉jvm運(yùn)行原理,內(nèi)存分布
jvm參數(shù)調(diào)優(yōu)
這些技術(shù)不分先后
總結(jié)
以上是生活随笔為你收集整理的java学习路线_java学习路线_我的入坑路的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: python数字转汉字-Python转换
- 下一篇: 很好的阻止了事件的发生_请定好您的闹钟,