大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國(guó)咨詢/投訴熱線:400-8080-105
動(dòng)力節(jié)點(diǎn)LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁(yè) 學(xué)習(xí)攻略 Java學(xué)習(xí) JavaWeb完整項(xiàng)目要用到的專業(yè)技能

JavaWeb完整項(xiàng)目要用到的專業(yè)技能

更新時(shí)間:2019-10-28 15:25:51 來(lái)源:動(dòng)力節(jié)點(diǎn) 瀏覽2902次



  完成JavaWeb項(xiàng)目用到哪些專業(yè)技能?在經(jīng)典的JavaWeb的開(kāi)發(fā)模式中,我們使用Jsp技術(shù)來(lái)作為展現(xiàn)層的實(shí)現(xiàn),其實(shí)也就是所謂的前端。Web開(kāi)發(fā)中經(jīng)典的MVC模式,Model-View-Controller。


  最近自己做了幾個(gè)JavaWeb項(xiàng)目,有公司的商業(yè)項(xiàng)目,也有個(gè)人做著玩的小項(xiàng)目,寫篇文章記錄總結(jié)一下收獲,列舉出在做項(xiàng)目的整個(gè)過(guò)程中,所需要用到的技能和知識(shí)點(diǎn),帶給還沒(méi)有真正接觸過(guò)完整JavaWeb項(xiàng)目的同學(xué)一個(gè)比較完整的視角,提供一個(gè)所謂的“大局觀”,也以便于同學(xué)們更有針對(duì)性地學(xué)習(xí)。


  當(dāng)然,這里所用到的例子項(xiàng)目是非常初級(jí),簡(jiǎn)單的項(xiàng)目,所以大神們就可以不用往下看了。


timg (11).jpg


  首先我們從網(wǎng)站的架構(gòu)談起


  一般來(lái)說(shuō),我們將網(wǎng)站分為前端和后端。前端主要負(fù)責(zé)頁(yè)面的展示,后端則是業(yè)務(wù)邏輯的實(shí)現(xiàn)。由于html5的興起,前端領(lǐng)域已經(jīng)越來(lái)越火熱,前端技術(shù)發(fā)展極快,今天我們不做過(guò)多介紹,因?yàn)楝F(xiàn)在的互聯(lián)網(wǎng)公司,前端工程師和Java工程師是完全不同的兩種技術(shù)崗位。所以我們還是以Java的角度去看待一個(gè)項(xiàng)目。


  在前端沒(méi)有那么火的前幾年,或者說(shuō)在經(jīng)典的JavaWeb的開(kāi)發(fā)模式中,我們使用Jsp技術(shù)來(lái)作為展現(xiàn)層的實(shí)現(xiàn),其實(shí)也就是所謂的前端。當(dāng)然只懂得Jsp是不夠的還需要懂html,css,js,ajax等一些前端的基礎(chǔ)技術(shù),Jsp技術(shù)在其中扮演外層包裝的角色。那么后端呢?后端是由于一些實(shí)現(xiàn)了業(yè)務(wù)邏輯Java代碼和數(shù)據(jù)庫(kù)組成。


  說(shuō)到這,就可以推出Web開(kāi)發(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)分離。


  在更加大型的網(wǎng)站中,會(huì)出現(xiàn)更加復(fù)雜的架構(gòu),比如dao層與數(shù)據(jù)層之間要有緩存層,或者訪問(wèn)壓力增大后,需要使用集群,負(fù)載均衡等高級(jí)技術(shù),但在這里,我們就不深入討論復(fù)雜架構(gòu)了。


  所以以上我們看到,一個(gè)Web項(xiàng)目前端需要表現(xiàn)層,后端有controller層,service層,dao層,持久層。在表現(xiàn)層,除了剛才提到的html,css,js,ajax,jsp等基礎(chǔ)知識(shí),在實(shí)際開(kāi)發(fā)中,我們還會(huì)用到許多框架技術(shù),比如tiles,velocity,freemarker等模板技術(shù)來(lái)簡(jiǎn)化表現(xiàn)層的開(kāi)發(fā)。


  在持久層,除了jdbc外,還有Mybatis,Hibernate等框架來(lái)提高開(kāi)發(fā)效率。在JavaWeb中最耀眼的當(dāng)屬Spring了,Spring作為一個(gè)貫穿整個(gè)項(xiàng)目的框架,為項(xiàng)目開(kāi)發(fā)帶來(lái)依賴注入,面向切面編程的功能。除了這些,我們還需要熟練掌握一種關(guān)系型數(shù)據(jù)庫(kù)的使用,如MySQL,Oracle等,當(dāng)然更好地話還需要掌握一種非關(guān)系型數(shù)據(jù)庫(kù),MongoDB,Redis。


  掌握了以上知識(shí)點(diǎn),恭喜你,你已經(jīng)可以開(kāi)始寫JavaWeb項(xiàng)目了。但是只會(huì)寫而不會(huì)部署,我們的項(xiàng)目仍然不能拿出來(lái)用。


  找一個(gè)容器來(lái)運(yùn)行我們的代碼


  所以說(shuō)到這里,我們的項(xiàng)目代碼已經(jīng)寫好,接下來(lái)該怎么辦呢?當(dāng)然是需要找一個(gè)容器來(lái)運(yùn)行我們的代碼。這里的容器是當(dāng)然不是指Java里的數(shù)據(jù)類型,而是指應(yīng)用服務(wù)器,此處要特別區(qū)分應(yīng)用服務(wù)器與Web服務(wù)器,至于Web服務(wù)器是什么,稍后會(huì)介紹。(如果有同學(xué)不是很清楚服務(wù)器的概念,可以先看下一段,再回來(lái)看)


  目前,市面主要流行的應(yīng)用服務(wù)器有Tomcat,Jetty,JBoss等。很多人會(huì)問(wèn)我們?yōu)槭裁葱枰獞?yīng)用服務(wù)器?顧名思義,應(yīng)用服務(wù)器就是用來(lái)運(yùn)行我們的應(yīng)用代碼的。這里需要特別提到的是,JavaWeb用到了像Jsp,servlet這樣的動(dòng)態(tài)web技術(shù),而這些技術(shù)的代碼是必須運(yùn)行中應(yīng)用服務(wù)器中的。


  所以當(dāng)我們寫好應(yīng)用代碼后,需要把自己的應(yīng)用部署到應(yīng)用服務(wù)器上。應(yīng)用部署好后,那么用戶們?cè)撛趺丛L問(wèn)呢?直接訪問(wèn)應(yīng)用服務(wù)器嗎?這個(gè)時(shí)候就需要web服務(wù)器出場(chǎng)了。


  在互聯(lián)網(wǎng)上,最強(qiáng)大的應(yīng)用層協(xié)議當(dāng)屬http協(xié)議了,人們?cè)L問(wèn)網(wǎng)站就是通過(guò)http協(xié)議來(lái)進(jìn)行訪問(wèn)的,而Web服務(wù)器就是支持http協(xié)議的服務(wù)器,所以就叫http服務(wù)器。Web服務(wù)器接收http請(qǐng)求,然后再將請(qǐng)求轉(zhuǎn)交給應(yīng)用服務(wù)器。有人會(huì)問(wèn)用戶直接訪問(wèn)應(yīng)用服務(wù)器不好嗎?為什么要給web服務(wù)器,然后再到應(yīng)用服務(wù)器?


  從功能實(shí)現(xiàn)上來(lái)說(shuō),是可以的。許多應(yīng)用服務(wù)器,比如Tomcat是具有web服務(wù)器的功能,所以直接訪問(wèn)也可以。但是由于在實(shí)際的生產(chǎn)環(huán)境中,由于負(fù)載均衡,cdn加速等原因,我們還是需要在應(yīng)用服務(wù)器的前端再加一個(gè)web服務(wù)器來(lái)提高訪問(wèn)效率,常用的有Nginx,Apache這樣的服務(wù)器。


  之前老是在講這個(gè)服務(wù)器,那個(gè)服務(wù)器,不知道有沒(méi)有同學(xué)聽(tīng)懵了。其實(shí)服務(wù)器這個(gè)概念,我們應(yīng)該在真正接觸計(jì)算機(jī)專業(yè)領(lǐng)域之前早就聽(tīng)說(shuō)過(guò),比如以前打游戲覺(jué)得卡的時(shí)候大家都時(shí)不時(shí)會(huì)用到服務(wù)器這個(gè)詞匯。但是我真正理解并研究服務(wù)器是在學(xué)習(xí)tomcat,jetty之后才開(kāi)始的。


  那么服務(wù)器到底什么呢?


  服務(wù)器這個(gè)概念其實(shí)很簡(jiǎn)單,就是一臺(tái)電腦,那它和我們?nèi)粘S玫碾娔X有什么區(qū)別?


  第一,它一般沒(méi)有顯示器,它只有主機(jī)。


  第二,它的操作系統(tǒng)不同于我們常用的windows,MacOS。更多的是*nix系統(tǒng)。


  第三,它運(yùn)行了一些服務(wù)器端軟件。


  比如說(shuō),我們上文提到的Tomcat,Jetty,Nginx,Apache,其實(shí)這些都是服務(wù)器軟件,只是主機(jī)運(yùn)行了這些軟件,所以有時(shí)候大家就混淆了叫法。所以所謂的數(shù)據(jù)庫(kù)服務(wù)器,大家也知道了,其實(shí)就是運(yùn)行了數(shù)據(jù)庫(kù)的主機(jī)。說(shuō)到服務(wù)器,我們所需要掌握的重點(diǎn)知識(shí)就是服務(wù)器操作系統(tǒng),也就是*nix系統(tǒng),比如CentOS,Ubuntu等。


  說(shuō)到這里,其實(shí)一個(gè)簡(jiǎn)單的完整的JavaWeb項(xiàng)目就差不多了。我們簡(jiǎn)單回顧一下


  首先,我們需要利用各種框架和開(kāi)發(fā)技術(shù)寫出應(yīng)用代碼。


  接下來(lái),我們需要一個(gè)臺(tái)安裝了*nix系統(tǒng)的主機(jī),在上面安裝好Web服務(wù)器軟件,應(yīng)用服務(wù)器軟件,再把我們的應(yīng)用代碼部署到應(yīng)用服務(wù)器上。


  現(xiàn)在我們只需要獲取到主機(jī)的IP地址,就能夠遠(yuǎn)程訪問(wèn)應(yīng)用了。

timg (2).jpg

  知識(shí)點(diǎn)列表:


  開(kāi)發(fā):


  1、視圖層技術(shù)——HTML,CSS,JS,AJAX,Tiles,Velocity,FreeMarker


  2、持久層技術(shù)——MyBatis,Hibernate


  3、Spring,SpringMVC


  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):


  1、熟練掌握一種Linux系統(tǒng),原理,Shell命令


  服務(wù)器技術(shù):


  1、熟練使用并理解一個(gè)應(yīng)用服務(wù)器技術(shù)的原理(Tomcat)


  2、熟練使用并理解一個(gè)Web服務(wù)器技術(shù)的原理(Nginx)


  附加:


  緩存技術(shù):


  1、熟練使用并理解一種緩存技術(shù)(Redis,Memcache,EhCache)


  非關(guān)系型數(shù)據(jù)庫(kù)


  1、熟練使用并理解一種非關(guān)系型數(shù)據(jù)庫(kù)(MongoDB)


  中間件技術(shù):


  1、JMS:activeMQ和kafka


  2、RPC:Dubbo


  設(shè)計(jì)模式:


  1、了解并能夠使用幾種最主要的設(shè)計(jì)模式


  網(wǎng)絡(luò):


  1、熟練使用并理解一個(gè)網(wǎng)絡(luò)開(kāi)發(fā)技術(shù)(Netty)


  2、熟悉http,TCP協(xié)議


  Java虛擬機(jī):


  1、熟悉jvm運(yùn)行原理,內(nèi)存分布


  2、jvm參數(shù)調(diào)優(yōu)


  求職拿高薪,最主要的還是要有一身過(guò)硬的本領(lǐng),學(xué)一門時(shí)下最流行,并且未來(lái)發(fā)展前景好的技術(shù)。作為編程界的不老傳奇,Java是很多人入門的首選。想入門就和業(yè)內(nèi)大咖學(xué)習(xí)吧,手把手帶你入行拿高薪。

  

  以上就是動(dòng)力節(jié)點(diǎn)Java培訓(xùn)機(jī)構(gòu)小編介紹的“JavaWeb完整項(xiàng)目要用到的專業(yè)技能”的內(nèi)容,希望對(duì)大家有幫助,如有疑問(wèn),請(qǐng)?jiān)诰€咨詢,有專業(yè)老師隨時(shí)為你服務(wù)。


       視頻相關(guān)


  全網(wǎng)最新全套Java視頻教程下載:http://www.dabaquan.cn/video.html


  Java學(xué)習(xí)資料下載:http://www.dabaquan.cn/tutorial_java_se/


提交申請(qǐng)后,顧問(wèn)老師會(huì)電話與您溝通安排學(xué)習(xí)

免費(fèi)課程推薦 >>
技術(shù)文檔推薦 >>
主站蜘蛛池模板: 在线免费h| 午夜久久免影院欧洲 | 另类日本人xxxxbbbb | 亚洲精品www久久久久久 | 国产在线自在拍91精品黑人 | 亚洲国产成人99精品激情在线 | 极品福利在线 | 中文字幕有码在线观看 | 国产福利在线观看永久视频 | 美女操操| 在线日韩中文字幕 | 国产 欧美 日产久久 | 亚洲精品乱码久久久久久蜜桃 | 蜜桃久久久久久久久久久 | 九九成人 | 综合热久久| 毛片破处| 在线播放亚洲视频 | 天天做天天添天天谢 | 午夜激情网站 | 女人182毛片a级毛片 | 午夜免费福利网站 | 极品精品国产超清自在线观看 | 国内精品免费网站牛牛 | 在线视频97 | 四虎国产 | 999热视频 | 99九九久久 | 天天干免费视频 | 免费看aa| 伊人久久香蕉 | 免费男女网站 | 色综合视频在线 | www.99视频| 欧美aaaa黄色一级毛片 | 天天操操操操操操 | 免费日本黄色网址 | 亚洲精品色 | 五月婷婷天 | 国产精品视频男人的天堂 | 天天做天天爱天天操 |