您好,登錄后才能下訂單哦!
Java工程師學習指南
初級篇
最近有很多小伙伴來問我,Java小白如何入門,如何安排學習路線,每一步應該怎么走比較好。原本我以為之前的幾篇文章已經(jīng)可以解決大家的問題了,其實不然,因為我之前寫的文章都是站在Java后端的全局上進行思考和總結的,忽略了很多小白們的感受,而很多朋友都需要更加基礎,更加詳細的學習路線。
所以,今天我們重新開一個新的專題,分別按照四篇文章講述Java的學習路線(分別是入門篇,初級篇,中級篇,高級篇),筆者也打算趁此機會,回憶一下自己的Java學習歷程。今天我們要講的是,小白同學如何入門Java。
先聲明一點,文章內(nèi)容不會詳細到每一步怎么操作,只會提供大致的思路和方向,給大家以啟發(fā),如果真的要一步一步指導操作的話,那至少需要一本書的厚度啦。
本文所述的方法不一定適合所有人,如有錯誤敬請諒解。
01
Java Web項目指南
jav在上一篇文章中,我們講到了入門Java的幾個步驟,先搭建好環(huán)境,然后熟悉基本語法,接著熟悉Java的一些核心技術,并且在代碼中進行實現(xiàn)。
如果你已經(jīng)完成了這部分內(nèi)容的學習,應該會感覺自己對Java已經(jīng)有一定了解了,可以輕松地寫出一些Java代碼,比如實現(xiàn)多線程輸出數(shù)字,再如操作IO流等等。
當然,這些代碼通常只是一些demo,我們在實際的項目中可能并不會這么簡單地使用這些技術,我們可能會同時使用集合類,多線程,以及操作數(shù)據(jù)庫的API。
所以,在今天的初級篇中,我們就來談談怎么做項目吧。
對于大部分Java新手來說,最適合他們?nèi)腴T的項目就是Java Web了。因為Java天然適合做Web應用,并且生態(tài)完善,更有很多開源的工具和框架去支撐這些應用,比如Spring,Hibernate,SpringMVC等等。
那么,如何開始著手做一個Java Web項目呢。個人認為最好的方式就是看視頻了。因為,看書的話,很多內(nèi)容比較過時,并且一般不會提供源代碼。也有一些大佬喜歡推薦開源的項目(在GitHub上面的項目),但是對于小白來說,如果沒有很完整的文檔去指導他們,那也是毫無意義的。
曾幾何時,Java Web的項目還在使用JSP + Servlet進行開發(fā),后來出現(xiàn)了Struts2,再后來,出現(xiàn)了我們現(xiàn)在也一直在用的SpringMVC,說實話,不論使用哪種開發(fā)框架,你都需要先花一些時間去學習相關的技術,否則你會發(fā)現(xiàn),即使是看視頻,你也不知道里面在講什么。
要想做好一個JavaWeb項目,你不僅需要一個好的項目課程,還需要足夠的知識儲備,下面就讓我們來理一理這些內(nèi)容把。
Java基礎部分的內(nèi)容咱們上次說過了,這里就不再重復啦~下面我們分別來說說其他幾方面的知識儲備把
02
前端知識
推薦資源:在w3cschool學習html,css和js,支持在線測試代碼。
既然是做Web,就難免要涉及到前端技術,不過,現(xiàn)在前后端分離已經(jīng)是一種趨勢,所以,如果你對前端不感興趣,也沒必要花太多時間去學習。
對于大部分同學來說,你最好要了解html的基本標簽和格式,自己能夠?qū)懸恍┖唵雾撁?,CSS的話,也可以稍微接觸一些。相對于前面兩個服務于樣式的技術,我們倒是更應該去學習一下JavaScript,了解它的一些基本語法,以及ajax的使用,因為在前后端交互時,ajax是非常重要的。
所以,做一個Java Web項目,你不需要花太多時間在寫前端頁面上,如果有源代碼可以直接使用,當然,對于一些需要修改的前端頁面,你得怎么去做修改它,因為有時候你需要使用JSP,JSP既包括前端代碼也包括Java代碼,如果你完全看不懂前端代碼的話,那就很尷尬了。
03
Java Web常用技術
JavaWeb的技術棧其實比較龐大,所以我們不要求面面俱到,只是希望你能夠熟悉一下項目中可能用到的技術。下面列舉一些常見的技術,大家最好要了解一下。
1 JSP和Servlet
推薦資源:《JavaWeb入門到精通》,慕課網(wǎng)、極客學院等網(wǎng)站上的JavaWeb基礎課程
這是Java Web開發(fā)最原始的形態(tài),現(xiàn)在很少直接使用了,但是后來的各種框架其實也是建立在servlet之上來做的。你們需要了解這兩個技術分別是用來干什么的,最好能寫一些demo來實踐。
對于JSP,有時候你可能還要學習jstl等標簽語言,因為這些標簽可以讓你更方便地往JSP中插入Java代碼。
2 Spring和SpringMVC
推薦資源:《Spring實戰(zhàn)》,慕課網(wǎng)、極客學院等網(wǎng)站上的SpringMVC基礎課程。
事實上,除了上述資源之外,你也可以直接到官網(wǎng)上查看快速開始文檔。
Struts2早已被時代拋棄,Spring則是當今的霸主,你需要了解Spring如何使用,以及SpringMVC如何使用,并且學會在項目中使用它。
由于SpringBoot最近很火,并且搭建方式比SpringMVC更簡單,你也可以先學習SpringBoot,以便更快速地搭建起你的第一個Java Web項目。
3 MySQL
推薦資源:《Sql必知必會》,Runoob上的MySQL基礎教程,慕課網(wǎng)、極客學院等網(wǎng)站上的視頻課程
一個JavaWeb應用一定要有數(shù)據(jù)啊,所以我們需要用到數(shù)據(jù)庫,其實搭一個mysql數(shù)據(jù)庫是非常簡單的,但是對于初學者來說最麻煩的就是寫sql了,所以,先學會建表,熟悉sql,對你以后做項目也是大有裨益的。
4 Hibernate和Mybatis
推薦資源:Runoob上的Hibernate和Mybatis基礎教程,慕課網(wǎng)、極客學院等網(wǎng)站上的視頻課程
當你學會了使用sql去查詢數(shù)據(jù),可能還不足以讓你在項目中很方便地處理數(shù)據(jù),因為我們還需要一個步驟,就是把數(shù)據(jù)庫的數(shù)據(jù)轉(zhuǎn)化成Java里的對象。orm框架就是為了解決這一問題而出現(xiàn)的,它可以讓一張表和Java類一一對應,讓數(shù)據(jù)查詢變得非常方便。Hibernate和Mybatis都是orm框架,只不過現(xiàn)在mybatis越來越火了。
所以,你需要了解這一技術,因為它會廣泛地運用到大部分Java Web項目中。
5 Maven
推薦資源:《maven實戰(zhàn)》,易百教程里的maven教程,慕課網(wǎng)、極客學院等網(wǎng)站上的視頻課程
剛才咱們已經(jīng)說過了Spring,orm框架,以及MySQL等方面的技術了。實際上,一個簡單的Java Web項目也只需要這些東西了。
但是,有一個問題,就是:一個項目里用到這么多技術,所需要的jar包也會很多,我們?nèi)绾喂芾磉@些jar包呢。如果直接導入所需jar包,那當jar包更新或者需要替換時,每次都要手動操作,非常麻煩。另外,當jar包很多時,項目打包后的war格式文件也會很大,不利于傳輸。
為了解決上述問題,maven應運而生了。maven通過pom.xml文件來指定所需的jar包,并且自帶了很多構建相關的功能,比如編譯,打包,運行單元測試等等,因為它本身就是一個構建工具。
當然,新手可能還難以理解這些概念,你必須要知道的是,大部分Java Web項目需要用maven來管理,你需要學會maven的基本用法,最基本的用法就是:學會修改pom.xml文件。
6 Tomcat
推薦資源:慕課網(wǎng)、極客學院等網(wǎng)站上的視頻課程。
對于小白來說,Tomcat相關的技術是非常復雜的,畢竟它是一個應用服務器啊,事實上這個時候,你只需要學會如何安裝Tomcat即可。畢竟,它在項目中的作用就是提供一個運行環(huán)境而已。
正常來說,你只要下載解壓Tomcat的壓縮包即可。由于現(xiàn)在的IDE都支持集成Tomcat,所以一般情況下你都可以在IDE中配置好你的Tomcat路徑,然后設置好你的項目路徑,IDE會自動把你的工程代碼部署到Tomcat服務器上。
如果你使用想跳過IDE直接部署工程到Tomcat上,也可以直接編譯工程并且打包得到war格式的文件(這個步驟可以使用maven來完成),然后拷貝war文件到Tomcat下的特定目錄即可。
上述兩種部署方式的詳細步驟請到搜索引擎尋找答案。
7 Git和GitHub
推薦資源:廖雪峰的Git教程,GitHub官網(wǎng),慕課網(wǎng)、極客學院等網(wǎng)站上的視頻課程。
既然要做項目,為什么不把它發(fā)布在GitHub上。當你熟悉了Git指令之后,你可以很方便地發(fā)布你項目中的每一次更新,并且同步到GitHub上,這樣既可以讓你更好地管理項目版本,又可以讓你GitHub更加活躍,為你未來的面試加分。
所以,趕緊學好Git指令,然后開啟你的項目之旅吧。
04
其他常用組件
除了上面幾種必備的技術之外,有時候我們在項目中還會用到其他東西,在這里我們把它們叫做組件。這里只做簡單的介紹,至于具體怎么使用,在網(wǎng)上都可以很容易地找到相關文章。
1 日志系統(tǒng)
當項目代碼比較多的時候,容易發(fā)生錯誤,日志可以很好地記錄代碼運行時的錯誤,常用的日志系統(tǒng)有l(wèi)og4j,logging等等,另外你還需要了解一下slf4j。
2 單元測試
日志系統(tǒng)可以記錄代碼問題,單元測試則是為了避免代碼出錯,常用的單元測試組件主要是JUnit,建議你找個文檔看一看,然后下載下來玩一下。
3 JSON
JSON逐漸成為前后端數(shù)據(jù)交互的標準格式,為了在項目中使用JSON的API,你也需要導入它的jar包,一般我們都會使用阿里提供的fastjson,趕快下載來玩一玩吧。
當然,常用的Java Web組件還有很多,比如HTTPClient,再比如一些加密工具,一些壓縮工具等等,這里就不再一一列舉了。
推薦項目課程
現(xiàn)在網(wǎng)上的項目課程那么多,哪一款更適合你呢?
其實我看過的視頻課程也不是很多,早先在慕課網(wǎng)和極客學院看過一些項目課程,覺得比較一般,對新手來說不太友好。
我的一些同學看過一些培訓機構的課程,專業(yè)講師錄的項目課程可能會稍微好一點。在我公眾號后臺回復“Java”可以領取某機構的視頻課程,不過我不是打廣告的,這個機構也沒有給我錢啦。
當然,我最推薦的還是??途W(wǎng)的視頻課程,分別是Java中級項目課和Java高級項目課。主要有幾點原因吧:
1 葉神講課,比較了解同學們的情況,而且技術功底擺在那里沒的說。
2 所做的項目比較接地氣,用的技術棧也比較新,比較全。
3 我自己全程跟著??途W(wǎng)的項目課做了一遍,感覺確實有收獲,而且每個章節(jié)的安排也比較合理。
4 配套有PPT,項目代碼以及部分安裝包,可以讓你省去很多繁瑣的環(huán)節(jié)。
看來我真是??途W(wǎng)的真愛粉,居然幫牛客網(wǎng)免費推廣~
當然,你也可以自己去找一些你感興趣的項目課程,后續(xù)我也會收集更多的視頻課程來分享給大家。
06
總結
今天的內(nèi)容就到這里了,與其說是初級篇,反而更像是“項目篇”呢。因為學完基礎內(nèi)容之后,做項目是最好的復習和實踐方式了。所以這篇文章圍繞著做項目來展開,也就不足為奇了。
今天我們主要講的是,做好一個JavaWeb項目,需要哪些知識儲備,需要了解哪些技術,并且我也推薦一些比較精品的視頻課程。
后面我還會寫一篇文章,專門講一講怎么做項目,會更加詳細,更加側重怎么去做,敬請期待吧。
總結以下今天說的幾個要點吧:
1 Java基礎知識儲備
2 前端知識儲備
3 了解和使用JavaWeb常用技術
4 JavaWeb常用組件介紹
5 視頻課程推薦
俗話說的好,磨刀不誤砍柴工,相信你看了本文之后,可以更好地做好知識儲備,然后開始Java Web的項目實踐,希望你能夠順利地完成你的第一個項目。
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。