本文目錄一覽:
初學者學Java開發 學習路線是怎樣的
【導語】Java是一種計算機語言,近年來隨着計算機行業的發展,學習Java開發的人越來越多了,在學習的隊伍中,不乏有很多的初學者,那麼初學者學Java開發,學習路線是怎樣的呢?下面就來具體了解一下吧。
1、首先建議大家從HTML+CSS
靜態布局還開始,有人說我是做後端的,前端的事情不用管,這本身就是一個誤區,如今HTML5這麼強大,你不會本身就不會有什麼競爭力。
2、Java和jQuery的學習,不用說Java無論在前端還是後端中都是佔比非常大的,很多人學不懂也是情理之中,這個跟思維有關係,適當了解一下數據結構有利於學習Java和Javase。
3、最重要的JAVASE,想必大家都清楚,JAVASE就是JAVA的基礎部分,上過學的人都知道,任何一個試卷80%都是基礎,沒有太難的東西,JAVASE就是JAVA的基礎,根據小編這麼多年學習Java的經驗來看,如果一個人學不好JAVASE,那JAVA基本就是白學,後面的框架基本就是聽天書。
4、數據庫,不用了說了,最常見的那三個數據庫,增刪改查,多去練習SQL語句吧,複雜的連接表示有難度的。
5、JSP和servlet 就目前來看 有些公司現在不用JSP,因為他的加載速度有點慢。不過還是現在學着吧,畢竟在JAVA體系中也是非常重要的。
6、框架,struts2,hibernate4,mybatis3,spring4,spring
mvc,這些東西都要掌握,但是整個JAVA體現想要理解的還算可以確實有些難度,自己的話,基本沒啥可能了。
以上就是初學者Java開發學習路線的有關內容,希望對想要進行Java學習的大家能有所幫助,一分耕耘一分收穫,相信大家學習成功後,必然會獲得更好的就業機會的,加油!
Java學習路線
根據個人實際的經歷,結合多種書籍,特別整理出了下面的java學習路線:
一、Java SE部分
1、java基礎:基礎語法;面向對象(重點);集合框架(重點);常見類庫API;
2、java界面編程:AWT;事件機制;Swing;
3、java高級知識:Annotation;IO和NIO、AIO;多線程、線程池;阻塞、非阻塞、異步網絡通信;反射、動態代理;
二、JDBC編程
4、SQL基礎:基礎SQL語句;基本查詢;多表查詢;子查詢;結果集的交、並、差運算;
5、JDBC基礎:常見數據庫用法;JDBC操作常見數據庫;RowSet與離線結果集;數據庫連接池;事務管理、批處理;
6、JDBC進階:存儲過程、函數;觸發器;理解JCBC的不足;掌握ORM工具優勢和設計;
三、DHTML編程
7、HTML基礎:基本HTML標籤;常見表單標籤;DIV+CSS布局;
8、JavaScript知識:javascript基本語法;javascript基本對象特徵;Json語法;深刻理解javascript的動態特徵;
9、Dom和事件機制:DOM操作、編程;常見瀏覽器事件機制;掌握用戶交互技巧;
四、XML編程
10、XML基礎:XML基礎規則;DTD和SCheme;XML和樣式單;
11、XML進階:DOM、SAX和JAXP;dom4j、JDOM等工具;XQuery和XQJ;基於XML的數據交換;
12、Web Service:JAX_WS2、SAAJ規範;WSDL和SOAP協議;CXF框架、攔截器;CXF整合Spring;
五、Java Web編程
13、Web編程基礎:Tomcat服務器;Jsp語法、EL、內置對象;Servlet API;Servlet 3.0註解;Listener和Filter;
14、Web編程進階:自定義標籤庫;MVC和DAO、Servlet、標籤的作用;JSTL、DisplayTag等常見標籤庫用法;
15、Web編程原理:請求/響應、架構;Http協議;深刻理解Jsp運行原理;掌握Web容器底層的線程池、socket通信、調用Servlet的命令模式;
六、Ajax編程:
16、Ajax編程:XML HttpRequest和異步請求;發送請求和處理響應;常見Ajax庫(Prototype、Jquery、ExtJs、DWR)用法;結合Http協議、異步請求深入研究ajax庫的設計;
七、Android開發
17、Android基礎:Android開發調試環境;Android應用結構;界面組件與界面編程;資源管理;四大組件;
18、Android中級:文件IO和SQLite;圖形、圖像與動畫;音頻、視頻的錄製與播放;傳感器編程;GPS應用;
19、Android高級:網絡編程與Web Service;OpenGL_ES 3D開發;整合Google服務;使用NDK開發;java和c相互調試;
八、輕量級Java EE
17、Struts2:MVC與struts體系;Action和Result;國際化和標籤庫;文件上傳、下載;類型轉換和輸入檢驗;攔截器與插件開發;
18、Hibernate:ORM與持久化映射;關係映射、繼承映射;延遲加載、性能調優;HQL查詢、條件查詢、SQL查詢;二級緩存和查詢緩存;
19、Spring:IoC與Bean配置、管理;Bean生命周期;SP、EL;AOP與事務權限控制;S2SH整合開發;Spring整合Jpa;
九、經典Java EE
20、JSF選學:MVC與JSF設計理念;託管Bean與導航模型;JSF流程與事件機制;JSF標籤庫;類型轉換與輸入檢驗;
21、EJB及相關技術:JNPI與RMI;會話Bean及其生命周期;IoC與EJB攔截器;JMS與MDB;會話Bean與Web Service;
22、JPA:ORM框架與JPA規範;JPA註解與常用API;JTA事務與事務管理;JPQL查詢;EJB、JPA整合;
十、Java 拓展、進階:
23、Java EE實踐與架構:Ant+Ivy或Maven;SVN、CVS;深刻理解10種以上設計模式;掌握各種Java EE架構及各自優勢;
24、Workflow:Workflow規範及功能;JBPM等workflow框架;多次重構、反覆思考;大型項目經驗;
25、Java EE進階:掌握各MVC框架運行原理、能開發類似框架;掌握Spring、HiveMind、AspectJ等框架原理、能開發類似工具;掌握Hibernate、iBatis等框架原理,能開發類似工具;深入研究EJB機制、大致了解應用服務器的實現;
希望對您有所幫助!~
java學習路線
目前在職Java開發,我給出的Java學習路線是:
JavaSE–數據庫–jdbc—-前端基礎–Javaweb–Spring–Mybatis–Maven–Springboot—Reids–Springcloud–Linux–Git。
JavaSE:java基礎,既然是基礎,那肯定是最重要的,所以學習的時候也是需要重點學習的地方。
數據庫:為什麼要學數據庫呢,因為我們的web數據需要持久化到磁盤上統一管理,而數據庫無疑就是最好工具。目前主流的關係型數據庫有mysql 和oracle。我建議先學mysql。為什麼呢mysql相比Oracle難度要低,而在國內應用場景又是最多的。
學會了mysql可以開發出一個完整的產品了,再學oracle都可以的。
前端基礎:既然是做一個網站,那肯定不能是後台的數據,這樣用戶也是沒辦法看的,所以需要學習前端知識,把數據展示到頁面上,而對於後台人員來說,學習階段只需要學習前端基礎就可以了。Html 、js、css、jquery就可以了。當然到離開後期你也可以學學專門為後端人員定製的前端框架,比如,layui,easyui。如果還覺得不夠可以學學前端專用框架。比如vue element ,但是大前提是把自己的後台學到位了再學其他的。
Javaweb:jsp、servlet。為什麼用了html還要學jsp呢。因為jsp和Java是無縫連接的。學了javaweb以後就可以自己做一個項目出來了,比如你想做一個個人網站。你可以給你們學校做一個教務管理系統都是可以的。
Spring:後台框架。為什麼要用框架呢,可以快速開發,並且降低了耦合。Spring的AOP支持允許將一些通用任務如安全、事務、日誌等進行集中式管理,從而提供了更好的復用,Spring的ORM和DAO提供了與第三方持久層框架的良好整合,並簡化了底層的數據庫訪問。
Mybatis:持久層框架,當然持久層還有一個框架應用也很廣的,那就是hibernate,一個是半自動的一個是全自動,而在國內應用最多的是mybatis,在國外用得最多的是hibernate,具體原因,大家可以百度查查。持久層框架有什麼好處呢?如果你用原始的jdbc做開發,那你得自己來管理每一個連接,連接的打開和關閉,都是有開發人員來操作的,而且jdbc也沒有實體的映射,需要我們寫代碼把值set進去,而用了框架這些都交給框架去做了。
Maven:mavne是一個工具,他的核心是pom.xml,這個配置文件,pom的全英文是project object model,意思是對象管理模型,也就是把項目也看成一個對象來操作了。給我們帶來最直觀的好處就是依賴問題,以前我們需要自己下載jar包,在構建到項目中,但是有了maven只需要寫jar的依賴就可以自動給我們下載了。
Springboot:springboot是基於maven的,springboot最明顯的特點就是開箱即用,也就是構建了一個springboot項目 直接就可以做開發了,而不需要像我們自己配一個springmvc的框架一樣的需要去配置大量的xml文件。讓我們開發人員更着重於業務上的開發。
Redis:前面的mysql,oracle是關係型數據庫,什麼是關係型呢,就是一對一 一對多 多對多。有表與表之間有這些關係在,所以就叫關係型數據庫,而redis就是非關係型數據庫,也就是他存儲數據之間是沒有這些關係,他是以鍵值對 list set方式存儲的。
對了,順便在這裡說一下,我目前是在職Java開發,如果你現在也在學習Java,了解Java,渴望成為一名合格的Java開發工程師,在入門學習Java的過程當中缺乏基礎入門的視頻教程,你都可以申請加入我的Java新手學習交流qun:前面輸入是:前面輸入是:七九八,中間輸入是:八四四,最後輸入是:六二零。裏面聚集了很多正在學習Java技術的初學者,qun文件裏面還有我做Java技術這段時間整理的一些學習手冊,面試題,開發工具,PDF文檔書籍教程,需要的話都可以來獲取下載。
Springcloud:微服務框架,什麼是微服務呢,就是把我們傳統的單體服務拆分開了,就是將一個單體架構的應用按業務劃分為一個個的獨立運行的程序即服務,微服務架構其實就是一個分佈式架構,具體的就不詳細的講了,因為這裏面牽涉到的解決方案是靈活的。
Linux:linux的應用通常都是在底層,那我們上層開發人員為什麼也要學它呢,其實我們的主要應用是在服務器上,也就是服務器的系統。當然系統也有Windows的,而Windows的和Linux的區別就是Windows服務器有問題是微軟來解決,很方便:別人替你做,但也不方便:你遇到問題都得讓他官方來解決漏洞,但是Linux就不一樣,他是完全開源的,有問題自己馬上就可以解決,只要開發人員能力夠硬去改內核都是可以的。
Git:版本管理工具,與之對應的還有svn,最大的區別在於git是分佈式系統,而svn不是分佈式的,因為你們進企業以後都是協同開發 也就是一個項目小組裏面幾個小夥伴一起開發一個項目,所以就要有一個代碼的管理工具來保證你們做的不同模塊可以整合,所以說git也是需要學的。
學習Java的最佳路線
首先先搞懂JavaSE的部分,Swing和swt部分就可以少看或不看,因為現在用的比較少。重點是看懂Java中的面向對象、集合框架、JDBC、異常、IO、線程和網絡編程。JavaSE搞定後再學習Servlet、JSP,然後才是經典的Struts2、Hibernate和Spring,學習框架時重點理解框架的運行原理,甚至可以嘗試自己寫個輕量級的框架。理解運行原理的最好方法就是閱讀源代碼,還是要感謝Java中的開源項目。這期間還要多找各種大小的項目去完成,不一定要大,但是要精緻,功能要完整,這樣可以練習所學知識,並且可以在做項目中發現自己的知識體系中不足的地方。關於看視頻,我不推薦,很多同學一天到晚就知道看視頻,殊不知,編程真理在於「練習,練習,不停練習」!
推薦看看這個學習路線,規劃的很棒:
再補充下:當學習Java的期間,會碰到各種各樣的異常,請積累這些異常信息,以及如何出現的異常和如何處理的,因為java中常見的異常就那麼幾種,積累的多了,處理問題的能力就提高,這樣水平會提高的很快!
SpringMVC 這幾年的佔有率迅速的提高,可能之後會取代 Struts2,但是無論怎麼變化,這些還都是 MVC 模式,理解了這個模式,上手任何的 MVC框架都應該很快。
企業需要的變化還體現在大數據方面,因為 Hadoop 的流行,Java 的應用場景又多了一個。所以,不喜歡 web 的可以考慮學習大數據方面的知識。
另一個流行的場景自然就是 Android,學習 Android 依然需要你有 JavaSE 的底子+HTTP 協議的理解,再配合上 Linux 的知識就可以開始了。
再說下找項目的問題,初學者可能會碰到不知道做什麼的問題,其實最開始大家都是從模仿開始的,例如你學會了 jsp+Servlet,那就可以模仿一個 v2ex 這樣的論壇出來。學會了 SpringMVC,那就試着將論壇的代碼重構,提供restful接口供客戶端訪問(Android、IOS 、web 等)。論壇做的沒難度了,那就模仿一個團購網站,依然是不一定要做全部的功能,但是做出的功能要穩定,要精緻。或者一個微信公眾平台的開發都是不錯的項目。
初學者看源代碼有的人推薦看 Struts2、spring 的,但是我相信10個初學者9個看不懂,那就從簡單的開始,例如 Apache 的 Commons 庫,例如 lang、dbutils、io 等,這些都是非常不錯的代碼,類的數量不多而且質量也不錯,這些看懂之後,你的基礎水平增長的不是一點點。
再次提醒初學者,學習編程沒有你想的那麼簡單,必須要多練習,多思考,最主要的是你對這個有興趣。現在不少網站和媒體都宣傳1個月學會前端、3個月入職 BAT 的口號,那也就是口號而已,別太認真。這條路沒有捷徑,寫你的代碼就是了!
大家知道java程序員學習路線嗎
java所需要的學習的知識點很多,可以大致分為以下幾個階段:
一、預科學習:
HTML5:HTML5標籤入bai門、HTML5表格、表單
CSS3:CSS3選擇器和簡單屬性、CSS3定位和布局、CSS3複雜選擇器和高級屬性
數據庫:mysql數據庫安裝和數據操作、約束和簡單查詢、複雜查詢、數據庫設計、oracle的安裝與數據操作、oracle與mysql的對比學習
二、JavaSE
Java語言基礎、程序邏輯:環境配置和第一個語言程序-HelloWorld 變量運算符 條件和循環 方法和數組
Java面向對象:面向對象入門、面向對象應用_管理系統類
Java常用類、String相關、算法相關 面向對象深入(重載、this、static )繼承(重寫、super、初始化順序)
多態(抽象類和接口、final、克隆和比較接口 設計模式、對象和類的生命周期)
API:異常、日誌 集合 集合工具類和泛型 IO JDBC基礎線程 網絡編程 反射 NIO Junit
Java面向對象思想:設計模式 面向對象原則
Java底層理論:集合底層 性能監控工具 反編 JUC
三、Java web
web基礎:TOMCAT/WEB程序結構/HTTP協議、Servlet基礎入門、servlet作用域(cookie、session、ServletContext)、
Cookie和Session 、Servlet的交互/JSP原理及運用、 JavaBean/EL/JSTL/MVC思想
、JSP+Servlet+JDBC綜合練習、Session購物車案例/驗證碼/防止表單重複提交、監聽器過濾器等
第三方工具包:連接池、事務、分頁、文件上傳下載、Dom4j/Log4j/Log back
JavaScript和jQuery框架技術:JS入門和DOM基礎 、DOM模型深入 、jQ基礎、 jQ操作
MVC動態Web開發技術:自定義MVC框架、DAO框架、前端框架(layUI)
Web開發高級運用:tomcat server服務器配置 、nginx使用、 jetty配置
網絡編程:網絡原理、HTTP協議基礎、Linux操作系統、雲服務搭建
四、SSM框架
Spring框架、SpringMVC框架、MyBatis框架:mybatis入門、配置文件詳解和動態sql的使用、
mybatis管理關係映射和延遲加載、 查詢緩存和逆向工程 、Spring入門和集成、myBatis SpringMVC入門 、SSM集成、
Spring配置詳解 、Spring AOP、 Spring事務配置 、SpringMVC高級功能 、SpringMVC原理
五、前沿技術
高可用、高並發、高擴展:Spring Boot 、緩存 、分佈式 、全文索引、 服務中間件、 myCat、 雲服務 、人臉識別 、語言識別 、JVM底層+優化
在java的學習中,最重要的表示實踐,任何一個大牛都是敲出來的,光有理論知識,沒有實際動手能力也是不行的。
對java有興趣的小夥伴們,不妨先從java入門開始!B站上有很多的java教學視頻,從基礎到高級的都有,還挺不錯的,知識點講的很細緻,還有完整版的學習路線圖。也可以自己去看看,下載學習試試。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/237243.html