當前位置:
首頁 > 知識 > 怎樣成為一個JavaWeb開發者?

怎樣成為一個JavaWeb開發者?

一個Java程序員,可能曾是優秀的前端開發人員,也可能以前是不錯的後端開發人員.所謂"前端",指的是眾多瀏覽器端技術--HTML、CSS、Javascript,以及Java模板技術,如Thymeleaf、SiteMesh,或者古老的JSPs.後端開發人員有更堅實的Java、資料庫(SQL和NoSQL),消息傳遞(JMS/AQMP)和Web服務(SOAP/REST)技能.Java培訓班開設Java語言基礎與面向對象、JDK核心API與JavaSE核心、SQL語言與Oracle資料庫、Spring技術與MyBatis、Struts2與Hibernate等課程,雄厚的師資力量為學員就業提供基礎保障。

你應該也知道所謂的"全棧"Java開發人員.這是個人的技能集合.一個完整的全棧開發者應該同樣勝任前端開發和後端開發的工作.這可能是難度係數最高的一條路了,因為所涉及得技術非常多樣.也許有一天,你前一秒還在jQuery調試,接下來就去性能調優Oracle資料庫查詢了.但是,成為一個全棧Java開發人員是需要時間和經驗的.

(一)從哪裡開始?

對於有抱負的開發人員,技術的前景會成為壓倒一切的動力.但是技術也是在不斷變化發展中的.你會冒著學習的東西很快就會過時的風險嗎?

(二)伺服器端技術

1. Java

Java--本文的問題就是如何成為一個Java web開發人員.所以,你當然得知道Java編程語言.除了Java本身,你還應該熟悉Java Servlet API.有一些Java web框架,隱藏著Java Servlet API的用法.如果出現問題,那麼你需要知道幕後究竟發生了什麼事情.

2. JPA

JPA--Java持久性API--使用資料庫.JPA是Java傳統關係資料庫的標準.Hibernate是現在使用最廣泛的JPA實現.作為一個Java web開發人員,你肯定要用到資料庫.你要從資料庫中得到內容,以顯示在網頁上,或從用戶那裡接收內容存儲到資料庫中.所以,Java web開發人員需要知道如何使用JPA.

3. Java應用程序伺服器

Java應用程序伺服器--Java web應用程序的運行時容器.Tomcat是到目前為止最流行的Java應用程序伺服器.Web應用程序歸檔文件,又名WAR文件,有一個Java標準.這些被部署到應用程序伺服器,如Tomcat,以此為你的web應用程序提供運行環境.十年以前,還流行在應用程序和應用程序伺服器之間應用更複雜的耦合.然而,現在的趨勢更支持應用程序和應用伺服器之間的鬆散耦合.

4. Java框架

請注意,到目前為止,我還沒有提到任何Java框架.我所描述的,都是你作為一個Java web開發人員會用到的不同技術.客戶端技術完全獨立於伺服器端技術.Firefox不在乎,伺服器運行的是Java,Python還是.NET.不過,新手開發人員似乎常常遺忘這一點.

不使用Java框架的Java web開發也是可以的.但是這樣一來,你需要額外寫很多代碼來處理原本框架可以為你辦到的事情.這就是為什麼開發Java web應用程序時,你通常會想要使用某一個框架.

5. Spring框架

Spring框架是構建web應用程序一個非常棒的工具集合.雖然沒有精確的統計數據,但我看到有文章估算已有超過60%基於Java的web應用程序使用Spring.這其實也不奇怪.Spring Core有IoC容器和依賴注入.Spring MVC,是一款基於MVC的成熟又靈活的web框架.Spring Security是保護網站最好的工具.Spring Date有助於維護持久性.Spring還有其他的項目,你可以用來構建大範圍推廣的應用.

當涉及到整體框架時,真的找不到替代品代替Spring.哪怕存在著很多針對不同Spring項目的競爭技術.但是,沒有單一的解決方案,能夠具備Spring框架系列項目的深度和廣度.在我的Spring入門在線教程上,我對主要的Spring框架項目做了一個很好的概述,並說明了如何使用它們來構建企業級應用程序.

6. Grails

Grails是建立在Spring之上的快速應用程序開發框架.它不但擁有Spring的所有內容,還借鑒了Groovy的生產力優勢.我喜歡將Grails形容為用Groovy包裝過的Spring.關鍵一點要記住的是,其背後依然是Spring.

Grails現在越來越受到企業的歡迎.Grails的優勢之一就是其出色的社區支持.

7. Spring Roo

Spring Roo是一個純Java框架,這似乎和Grails的作用相同,不過它沒有Groovy.我不是Spring Roo的的粉絲,並且我最後一次使用Spring Roo也不是因為市場要求.Spring Roo還沒有被廣泛接受.

8. Play

基於Scala的框架.雖然我還沒有嘗試過Play.但是現在市場上面的反響不錯.所以有機會的話我會試一試.不過它目前還沒有被企業中廣泛採用.至少到現在為止還沒有.

9. JBoss Sea

JBoss Seam可能是最接近Spring框架的替代品.JBoss Seam遵循JEE標準.JBoss Seam是一個很好的選擇,具有良好的支持而被企業所接受.不過,JBoss Seam經常因為在開發和性能方面比Spring慢而飽受詬病.但是有的批評對於JBoss Seam過於苛刻了.

(三)客戶端技術

建議新手開發人員可以從基礎的學起;HTML,CSS和JavaScript.這些技術是web開發的核心.而且這些技術在某種意義上說也是通用的,無論你是Java web開發人員還是Ruby Web開發人員都要用到.中軟卓越培訓在現開設多種課程,除了java開發外,還包括web開發等前端技術課程,學員可根據個人喜好,選擇相應課程進行學習.

1. HTML

HTML--超文本標記語言.這是用來生成網頁的.你需要對HTML有一個深入的了解.在萬維網初期,HTML習慣上是一個由網頁伺服器向瀏覽器提供的文件.它對靜態內容非常有效.不會改變內容.但是,現在人們越來越傾向於動態的內容.於是,HTML不再是靜態的文件,HTML開始按需生成.作為一個Java web開發者,你得會編寫如何為網頁瀏覽器生成HTML文件的代碼.你需要對HTML文檔的結構有一個深刻的理解.

2. CSS

CSS--層疊樣式表.這是用來顯示頁面樣式的.它控制字體、顏色和布局.與HTML定義的是網頁的內容不同,CSS定義的是當在瀏覽器中呈現時網頁的外觀.例如,你可以對桌面Web應用程序使用一套CSS規則,對移動應用程序使用另一套不同的CSS規則.相同的HTML,當渲染在瀏覽器上時,就有了兩個完全不同的外觀.

3. Javascript

Javascript--製作網頁上的東西.不要將Java與Javascript混淆.雖然它們有一些語法的相似性,但這是兩個完全不同的編程語言.JavaScript才能真正推動Web 2.0應用程序.通過使用Javascript,你可以根據用戶的操作,動態地改變HTML/CSS,提供更有視覺感受的網頁給用戶.

4. HTTP

HTTP(超文本傳輸協議)--客戶端和Web伺服器之間的通信.有太多的web開發人員居然對HTTP一無所知.HTTP絕對是你必學的關鍵技能.尤其是當你要用AJAX工作的時候.你需要知道一個POST和一個GET之間的區別.你應該記住HTTP狀態碼200,301和404的含義--以及更多.作為一個Java web開發人員,你的日常工作不可避免要與HTTP打交道.

(四)結論

成為Java web開發人員是不可能一蹴而就的.沒有所謂的速成教材,也沒有捷徑.你需要學習和掌握很多不同的技術.而所有這些都需要時間來學習.

成為Java web開發人員是一個非常有意義的事業.你剛入門的時候可以只專註於前端技術,也可以只專研後端技術.隨著以後開發的項目增多,你就可以從這一技術領域轉移到另一個技術領域.

如果我現在作為一個Java web開發人員入門的話,我會先專註於客戶端技術,因為客戶端技術獨立於伺服器端技術.因此,等你入門了以後,你將會有更多的就業選擇.此外,雖然客戶端技術的薪酬通常比伺服器端的低,但這會是一個良好的開端.你可以快速獲得技能以便於就業,然後再轉移焦點,拓寬技能集,以謀求更好的就業機會.

學習Java遇到困難需要交流即學習資料可以

學習群 六二三九六六八零六 可以免費學習java還有大量學習乾貨哦

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 IT技術java交流 的精彩文章:

如何正確理解C語言中默認構造函數
Web前端開發學習路線—初學者必看!
Java 帝國之撥雲見日識回調
Java面試居然有這麼多學問,看看高級程序員面試題是什麼樣的

TAG:IT技術java交流 |

您可能感興趣

Facebook:一批開發者已經拿到了Santa Cruz開發機
想成為一名Web開發者?你應該學習Node.js而不是PHP
想成為一名Web開發者?或許應該學習Node.js而不是PHP
Python開發的十個Tips,你知道幾個?
Facebook表示已經有開發者收到Santa Cruz開發機
webpack 開發者:我當初為什麼寫webpack
Magic Leap首屆開發者大會開幕!都有哪些看點
Angular 5成為您下一個開發項目的最佳選擇
一文讀懂Facebook開發者大會:除了VR還有這些乾貨
Facebook正在開發一種「Talk the Walk」的AI
開啟第一個WeChat Applet項目開發之旅
Magic Leap開發者大會開放申請;Adobe Captivate
如何開發一個基於 Docker 的 Python 應用
第一個Wear OS Android P開發者預覽版終於在這裡了
Chrome web 開發用到的插件
以太坊前開發者要做新一代區塊鏈 Nervos說他們不Nervous
Karmin更新Aripuan?鋅項目開發
Google發布Android KTX預覽版,它能為Kotlin開發者做些什麼?
Instagram 跟著 Facebook 修改個資規則,開發者被殺得措手不及
Google發布首個Android P開發者預覽版