本文目錄一覽:
java職業路線規劃,從基礎語法學習開始到能完成一些大型項目
Java介紹
Java分為三個體系JavaSE(Java2 Platform Standard Edition,java平台標準版),JavaEE(Java 2 Platform,Enterprise Edition,java平台企業版),JavaME(Java 2 Platform Micro Edition,java平台微型版)。
* Java SE(Java Platform,Standard Edition)。Java SE 以前稱為 J2SE。它允許開發和部署在桌面、服務器、嵌入式環境和實時環境中使用的 Java 應用程序。Java SE 包含了支持 Java Web 服務開發的類,並為 Java Platform,Enterprise Edition(Java EE)提供基礎。
* Java EE(Java Platform,Enterprise Edition)。這個版本以前稱為 J2EE。企業版本幫助開發和部署可移植、健壯、可伸縮且安全的服務器端 Java 應用程序。Java EE 是在 Java SE 的基礎上構建的,它提供 Web 服務、組件模型、管理和通信 API,可以用來實現企業級的面向服務體系結構(service-oriented architecture,SOA)和 Web 2.0 應用程序。
* Java ME(Java Platform,Micro Edition)。這個版本以前稱為 J2ME。Java ME 為在移動設備和嵌入式設備(比如手機、PDA、電視機頂盒和打印機)上運行的應用程序提供一個健壯且靈活的環境。Java ME 包括靈活的用戶界面、健壯的安全模型、許多內置的網絡協議以及對可以動態下載的連網和離線應用程序的豐富支持。基於 Java ME 規範的應用程序只需編寫一次,就可以用於許多設備,而且可以利用每個設備的本機功能。
J2SE就是做那種桌面安裝程序樣的,像QQ,WORD那種應用程序。
J2EE 就是做基於Internet的應用程序,像選課系統,企業網站,銀行系統之類的。
J2ME就是做嵌入式系統開發的,像手機遊戲之類的,像現在流行的Android操作系統。
為了讓大家能夠更快的加入到做項目的隊伍,工作室特制定以下培訓計劃。我們java組現在主要是沿着J2EE這條路線走,主要是這方面項目目前比較多。
一.培訓階段的劃分
1. 學習java基礎(包括基本語法,面向對象的思想的一些特性,IO,集合框架,jdbc)
2. 學習網頁的基礎知識(包括html,css,javascript),這些是做好界面的必備知識。
3. 學習javaweb的基礎知識(包括jsp,servlet,javabean,MVC,JSTL,EL表達式)
4. 學會使用ssh框架(struts.,hibernate,spring)
二.培訓階段的要求
1.Java基礎
1. 大體了解java的運行原理,安裝java虛擬機(java虛擬編繹與運行)
2. 熟練掌握java語言基本語法(這個和c語言裡面的差不多)
3. 熟練掌握面向對象編程的思想及面向對象的一些基本概念(類,對象,接口,繼承,重載,覆蓋)
4. 熟練掌握輸入輸出流(流的概念,文件的讀寫,終端輸入)
5. 熟練掌握集合框架(List,Set,Map)
6. 熟練掌握JDBC連接數據庫(sqlserver2000,mysql數據庫的使用及連接)
7. 熟練掌握API的使用,熟悉常用類庫的使用。
8. 能夠編寫簡單的圖形界面程序
這個階段是j2se的基礎知識,特別是面向對象的知識的掌握,類和對象的概念,接口,繼承,重載,覆蓋,掌握基本的輸入輸出,然後就是集合框架,List,Set,Map的使用,因為這些在以後的數據庫操作中經常將查詢結果放在裡面,最後就是用jdbc連接數據庫,也許之前學過的一些理論都感覺沒興趣,但學了數據庫的連接之後,興趣就來了,因為這是第一次寫程序操作數據庫。
這個階段培養人的最大能力就是要勤查API文檔,要多去百度,要多向別人請教。
2. 靜態網頁的製作
1.了解網頁的基本知識
2.會寫基本的html語言,能夠看懂別人寫的html
3.會使用表單
4.使用javascript進行客戶端驗證
這個階段要掌握一些靜態網頁的基本知識,學會動手做靜態網頁。學會用css控制
頁面,學會用javascript來進行表單的驗證。
3. javaweb基礎
1. 搭建開發環境
安裝Tomcat,並配置虛擬目錄
安裝Eclipse,並安裝MyEclipse插件
作用MyEclipse新建項目,整合Tomcat服務器,部署項目
2. Jsp的基礎語法
了解JSP基本特點
理解JSP的運行機制
熟練使用JSP聲明語句
熟練使用JSP Scriptlets
熟練使用JSP表達式
3. JSP指令元素
了解Page,include,taglib指令的使用
了解jsp:forwardjsp:includejsp:paramjsp:params
4. JSP內置對象(9個)
熟練使用JSP內置對象保存屬性
熟練JSP屬性保存的四個範圍(page,request,session,application)
熟練使用request,session對象取得參數值,了解其他各對象常用的方法
5. JavaBean
熟練掌握定義JavaBean,調用JavaBean,設置並獲得JavaBean屬性,設置JavaBean的範圍,移除JavaBean
6. EL表達式
熟練掌握使用EL運算符
熟練掌握EL內置對象
熟練掌握EL存取
7. JSTL標籤庫
JSTL核心標籤庫,數據庫標籤庫,I18N格式化標籤庫,XML標籤庫和JSTL函數標籤庫
熟練掌握通過JSTL核心標籤庫定義變量,輸出變量,移除變量
熟練掌握通過數據庫標籤庫完成數據庫操作
熟練掌握XML標籤庫完成 XML文件操作
熟練掌握I18N標籤庫完成國際化操作
熟練掌握通過JSTL函數標籤庫完成常用函數操作
8. Servlet開發
熟練掌握如何定義Servlet
理解Servlet的生命周期
熟練掌握HttpServlet的常用方法
熟練掌握使用Servlet的接口
9. Filter開發
熟練掌握如何定義並配置Filter
理解Filter的生命周期
熟練掌握如何添加非法文字過濾器,字符編碼過濾器,登錄驗證過濾器
10. Listener開發
熟練掌握如何定義並配置Listener
熟練掌握 ServletContextListener,ServletContextAttributeListener,HttpSessionListener,
HttpSessionAtrributeListener接口的實現和作用
11. Dao設計模式
了解什麼是Dao設計模式以及其特點
熟練掌握如何定義數據庫連接類
熟練掌握如何定義Vo類
熟練掌握如何定義Dao接口,Dao類以及Dao工廠類
熟練掌握如何使用Dao實現數據庫操作
12. MVC設計模式
了解什麼是MVV設計模式
了解Model1和Model2的區別以及優缺點
熟練掌握如何定義視圖,模型,控制器部分,用MVC進行開發
這個階段才是真正的接觸了javaweb的知識,要會用javaweb進行動態網頁的開發,
這個階段完成後,就能做一些應用系統的開發了,javaweb也基本上學完了,後面基本上都是些別人根據基礎知識做好的框架或組件,我們只要拿來用就行。
4 . ssh框架
1 Struts2基礎
了解如何下載並安裝Struts2 框架
了解Struts2運行原理
熟練掌握如何新建控制器
熟練掌握如何配置控制器
了解實現Action接口的優點
熟練掌握通過Struts2標籤庫簡化表單
熟練掌握通過繼承ActionSupport完成輸入校驗
熟練掌握頁面國際化以及校驗錯誤信息國際化
2 Struts2高級開發
熟練使用Struts2內建的類型轉換器
理解服務器端校驗的重要性
熟練使用addFieldError來添加校驗錯誤信息
熟練使用struts2校驗框架完成輸入校驗
3 Hibernate持久化
了解什麼是ORM映射以及特點
熟練掌握配置Hibernate配置文件
熟練掌握創建持久化類
熟練掌握創建關係映射文件
熟練掌握通過Hibernate框架進行數據庫操作
4 Struts2整合Hibernate開發
熟練掌握持久層設計
熟練掌握業務邏輯層設計
熟練掌握struts2 整合hibernate 開發
5 Spring開發
熟練掌握Spring的依賴注入
熟練掌握Spring的自動裝配
熟練掌握Spring面向切面編程
框架的發現,提高了軟件開發的速度,增強了軟件開發的規範性,使人們都按照某一種模式,一種規範去進行開發。這個階段我們要做的就是學會使用這些框架來進行開發,了解框架的原理,當然有能力的話,根據它的原理,我們可以試着看下它的源碼,自己試着寫框架。
三.各階段所要掌握的工具
1.Java基礎
1.會用記事本(或EditPlus)編寫java程序,在DOS下進行編繹與運行。(初級階段)
2.會用JCreator編寫,編繹,運行。(中級階段)
3.會用Eclipse,JBuilder,NetBeans其中之一集成開發環境(高級階段,推薦使用Eclipse)
4.會安裝並使用Navicate(mysql的界面環境),sqlserver2000。(數據庫)
2. 靜態網頁的製作
1. 會用記事本(或EditPlus)編寫Html語言
2. 會用Dreamweaver進行編寫Html語言
3.Fireworks切圖
4.Photoshop圖片處理
3. javaweb開發
1.Tomcat使用(javaweb服務器)
2.MyEclipse (javaweb開發)
3.JUit單元測試工具
4.PowerDesigner數據庫設計工具
5.CVS版本控制工具
6. Rose ,visio UML建模工具
四.各階段所要掌握的知識點
1.Java基礎
(基本要求)
1. 了解Java語言的特徵,掌握JDK(Java開發工具包)的安裝、目錄層次、
環境變量配置,Java程序的實現過程
2.Java語言基礎
a). 數據類型:
8種基本類型:byte,char,short,int,long,float,double,boolean
引用類型: 數組, 類,接口
b).結構化語句: if,if–else ,if–else if ,switch–case,while,do–while,for
c).數組
int num[]={1,2,3,4,5}; == int []num={1,2,3,4,5};
3.面向對象的基礎
a).類:具有相同屬性和行為的一組對象的集合
b).對象:客觀存在的或可被描述的抽象對象,具有特定屬性和行為的實體。
c).類是對象的模板(原型),對象是類的具體實例
d).抽象、封裝、繼承,多態(重載,重寫,接口多實現)
e).構造方法(默認構造器/參數化構造器)
f).限制訪問修飾符: private,缺省(默認),protected,public
g).附加修飾符:final,static,abstract
h).接口
4.Java 基礎包
a). java.lang :
包裝類(Byte,Character,Short,Integer,Long,Float,Double,Boolean)
其它類:String,StringBuffer,Math,Class,Object
b). java.util
隨機類:Random
日期類:Date,Calender
集合框架體系:Collection,List,Set,ArrayList,LinkedList,Vector,HashMap
c). java.io
文件類:File
字節流:FileInputStream,FileOutputStream
字符流:FileReader,FileWriter,BufferedReader,BufferedWriter
二進制流:(了解) DataInputStream,DataOutputStream
構造鍵盤流:BufferedReader input=
new BufferedReader(new InputStreamReader(System.in));
d). java.swt /javax.swing 了解java圖形界面及事件響應機制
容器類組件:JFrame,JPanel,JScrollPane
組件: JLabel,JTextField,JPasswordField,JTextArea,JComboBox,
JRadioButton,JCheckBox,JMenuBar,JMenu,JMenuItem
5.JDBC 數據庫連接
數據庫的連接步驟:
1). 加載數據庫驅動類: Class.forName(driver)
2). 通過驅動程序管理器獲取連接: DriverManager.getConnection(url,user,password)
3). 基於連接對象建立處理器對象/預處理器對象
Statement stmt=conn.createStatement();
PreparedStatement stmt=conn.prepareStatement(“insert into student values(?,?,?,?,?)”);
4). 處理器執行SQL命令(Select/Insert/Update/Delete)
executeQuery(Select)
==返回查詢的結果集(ResultSet, ResultSet.getXXX(列編號,從1開始))
executeUpdate(Insert/Update/Delete) ==返回執行命令影響的記錄行(int)
5). 關閉各個對象
(高級要求,可以暫時不用掌握)
1. java內存管理(垃圾收集及對象引用的內存分析)
2. 棧和堆的區別(變量比較複製,引用傳遞和值傳遞)
3. 異常處理機制(異常的原量,異常程序流程)
4. 網絡通信(TCP和UDP開發)開發
5. Java多線程開發
6. Applet,JavaWebStart.SWT,JavaFX
7. 數據庫存取(事務存取,SavePoint)
8. 分布式計算(RMI,CORBA)
9. java本地調用(JNI原理,調用c程序,調用Delphi)
10. 反射機制(Annotation,動態代理)
11. Java動態編程(Compiler API,Instrumentation,Javassist,ClassEditor)
12. JMX資源管理容器
13. XML開發(DOM,DOM4J,SAX,JDOM)
14. LOG4J日誌開發
15. 定時任務,日程工具Timer,Quartz
16. ZIP工具包
17. Excel文檔存取工具POI
18. UML建模
19. 設計模式
2. 靜態網頁的製作
(基本要求)
1. 會寫簡單的HTML,並且能看懂一些正規網頁(多級標題的運應。列表標記(序和無序標記)超鏈接標記,圖像標記,表格標記,多媒體標記,表單標記
)
2. 用javascript做些簡單的表單驗證
3. 用css做排版
4. 會用Dreamweaver做簡單的網頁
(高級要求)以後從事界面開發的人,可以多下點工夫
1. 能夠熟練用Dreamweaver製作網頁
2. 能夠熟練使用Photoshop進行圖片處理
3. 能夠熟練用Fireworks對圖片進行切割
4. 能夠熟練使用javascript做一些特效
5. 能夠熟練使用DIV+CSS進行排版
3. javaweb開發
(基本要求)
1. WEB的兩個發展階段:靜態,動態
2. 動態WEB的主要實現手段及區別
3. Tomcat的主要作用及配置
4. 開發一個簡單的交互式程序
5. MyEclipse開發工具的使用
6. 在MyEclipse中使用Tomcat服務器
7. JSP中的三種注釋
8. 三種SCriptlet及其區別
9. Page指令,包含指令
10. Jsp連接數據庫
11. 兩個include以及forward語句
12. 了解九個內置對象的定義
13. 掌握JAVAWEB中的四種屬性範圍
14. 掌握pageContext對象的使用
15. 掌握request,response,session,application四種內置對象及屬性的設置
16. Javabean的主要作用,定義及使用,四種保存範圍
17. 掌握Smartupload組件的作用,上傳文件,為上傳文件重命名
18. Dao數據庫操作
19. MVC模式
20. Servlet
21. EL
22. JSTL
(高級要求,可以暫時不用掌握)
1. Filter
2. Listener
3. 報表的處理(JFreeChat)
4. 郵件收發(JavaMail)
5. 分頁技術
6. Ajax
7. JSF
8. Freemarker
4.ssh框架學習
1.Struts(基本要求)
1. 了解struts2 框架的思想,MVC實現
2. 在Eclipse中開發struts2
3. Struts2 的基本流程
4. Struts2的基本配置(web.xml,struts.xml.struts.properties,struts.xml)
5. Struts2的Action(實現Action類,Action訪問Servlet API,配置Action,動態方法調用,使用通配符,默認Action)
6. Struts2的處理結果(配置結果,Struts2支持的處理結果類型,redirect,chain)
7. Struts2的屬性驅動與模型驅動
8. Struts2的類型轉換器
Struts(高級要求)
1. Struts2的文件上傳下載
2. Struts2的攔截器
3. Struts2的輸入校驗
4. Struts2的國際化
5. Struts2的標籤庫
6. Struts2的Ajax
7. 整合JSF
8. 整合JFreeChart
五.各階段任務
1.Java基礎
1. 安裝配置java運行環境JDK,了解java程序的運行機理,用記事本寫個HelloWorld程序,並在命令行操作。
2. 用java寫個對數組降序排列程序(數組最好可以自己輸入);在後面抄一個有圖形的界面的程序(像畫圖的,有菜單的之類的),自己試着運行下(相信大家看到圖形後會有驚喜的)。
3. 安裝JCreator,用JCreator寫個執行單步的計算器(不要求界面)。如輸入3+5 輸出8
4. 了解類,面向對象,繼承,接口的相關概念,會編寫一定的基礎程序。
(1)定義一個接口,裡面有方法ShowS(),ShowC()
(2)編寫一個正方形類,實現了上面的接口,其中包含邊長A,面積S和周長C,編寫方法ShowS()和ShowC()分別輸出正方形的面積和周長。(測試數據:A=5)
(3)編寫一個長方體類繼承自正方形類,長為A寬為B,重寫方法ShowS()和ShowC()分別輸出長方形的面積和周長。(測試數據:A=3,B=5)
(4)編寫測試類來測試以上兩個類。
5. 學會查API文檔(這是必備的,因為類庫非常多,要記是不可能的,記得常用的就行,另外就是要勤查文檔),實現下面的接口。
要求:涉及到具體時間的標準格式格式一般為:yyyy-MM-dd HH:mm:ss
測試類可以自己寫。
public interface TimeInterface {
// 計算當月最後一天,返回字符串
public String getDefaultDay();
// 獲得本周星期日的日期
public String getCurrentWeekday();
// 獲取當天時間
public String getNowTime(String dateformat);
// 獲得上周星期日的日期
public String getPreviousWeekSunday();
// 獲得下個月最後一天的日期
public String getNextMonthEnd();
// 獲得明年最後一天的日期
public String getNextYearEnd();
/**
* 是否閏年,參數要求由鍵盤輸入
*
* @param year
* 年
* @return
*/
public boolean isLeapYear(int year);
}
6. 安裝Eclipse,會用Eclipse編寫程序,編寫圖形界面程序,能夠對事件響應有很好的了解。編寫一個記事本,能夠對字體大小,字體形狀,字體顏色進行控制,能夠複製粘貼。(多查API文檔)
7. 編寫圖形界面的計算器,能夠實現簡單的加減乘除運算,乘立方法算。
8. 安裝sqlserver2000數據庫,了解數據庫基本知識,能夠用查詢分析器進行簡單的增刪改查。
9. 能夠用JDBC連接數據庫,將登錄註冊程序連接上數據庫。
2. 靜態網頁的製作
1. 學會用html語言做靜態網頁。做一個介紹自己的網站(要求:代碼手寫,有以下標籤:多級標題,列表,超鏈接,圖像,表格,多媒體,表單)
2. 對介紹自己的網站的布局用css ,div控制完成
3. 用javascript對自己的網站進行表單驗證。
4. javaweb開發
1. 安裝Tomcat和MyEclipse,配置環境,了解jsp的運行原理。
2. 學習jsp的基本語法,會用四種內置對象,能夠實現表單的提交,頁面的跳轉,做個登錄註冊程序,不要求連接數據庫。
3. 用jsp對介紹自己的網站進行更改,要求能夠,實現表單的提交,頁面的參數傳遞和連接數據庫對自己信息進行更改。
4. 了解Servlet的運行原理,配置Servlet,利用Servlet做一個登錄註冊程序。
5. 學習javabean,對登錄註冊用Servlet+javaBean+jsp實現
6. 用el表達式,對登錄註冊程序用EL表達式實現
7. 用JSTL表達式,對登錄注岫程序用JSTL表達式實現
4.ssh框架學習
Java學習路線
首先給自己定位是為了什麼而學?比如說是為了高薪,買車,買房子,要幾年之內月薪達到多少多少。或者說本身就是非常喜歡程序,覺得寫軟件有成就感。反正要知道自己為了什麼而學,而不是為了學而學,不然為什麼那麼人中途放棄了?
其次能不能堅持下去?因為JAVA本身學起來沒有融入,是很枯燥,沒人喜歡枯燥。
1、了解java的所有要學習的東西,學好基本語法,了解java的特點。
2、選擇合適的書籍,比如《Thingking in Java》、《Java核心技術》、《Java從入門到精通》
3、選擇合適的教學視頻輔助書籍進行學習比如:網頁鏈接
4、或者參加培訓班,進行專業輔導,能更好的解決你學習中所遇到的問題
無論你在學習JavaSE,數據庫,JavaWeb,還有框架的知識,你都要切記一點,在學習編程的過程中,聰明人的唯一體現只有是對於知識點的理解上而已,其他的都是一樣,你花多少時間去動手實踐,就決定了你能走多遠,學習這事,任何行業都是題海戰術,編程更是如此,你除了多寫代碼,沒有其他捷徑可走。整理不易!!!
另附上我們的學習路線圖,希望對你能有所幫助!
Java學習路線是怎樣的?
第一階段,Java SE基礎:
Java環境搭建、Java流程控制語句-for循環、switch選擇判斷、循環嵌套、數組拷貝、多維數組、final關鍵字、構造函數的調用、類的訪問權限和路徑、面向對象高級特性、Java異常處理、Set,Map,List接口及接口實現類、Java線程、同步阻塞、JavaIO流、文件的操作,複製,讀寫,刪除等。
第二階段,JavaWeb:
MySQL安裝、管理、創建數據庫、MySQLUPDATE
查詢、Mysql高級操作、JDBC、JDBC數據庫連接操作,JDBC動態Sql處理、Servlet3.0 網頁重定向、Servlet3.0
新增的註解支持、AJAX、responseText屬性詳解等。
第三階段,Java高級框架-SSH:
Struts2異常處理、Struts2+Log4j集成、Struts2和JSON實例、Hibernate5、Hibernate集合映射、Hibernate組件映射、Spring4.0、SpringAOP+
AspectJ框架、Spring 與其它Web框架集成、Spring Hibernate支持等。
第四階段,Java高級框架-SSM:
SpringMVC、Spring MVC生成JSON數據、MyBatis、MyBatis 環境配置及入門、Mybatis set標籤、Mybatis trim標籤、Shiro、Shiro快速入門教程、Shiro Web應用等。
第五階段,SpringBoot+VUE全棧框架:
SpringBoot、全局異常處理、過濾器監聽器、EHCache緩存、SpringBoot Quartz定時任務、Vue、Vue.js 安裝、模板語法、計算屬性、事件處理器、Vue.js 自定義指令、Vue.js 路由等
第六階段,特色課程:
ActiveM環境搭建、生產者和消費者、消息持久化操作、RSA數字加密算法、Codebar條形碼生成器、zxing二維碼生成器、HighCharts統計圖、Echarts統計圖、網絡播放器ckplayer、嵌入式網絡播放器,可以瀏覽器和移動端隨意使用
第七階段,互聯網框架的高級應用1:
分布式服務框架的理解,Dubbo架構設計詳解及其核心要點,框架運行原理分析、SpringData數據訪問、Lucene搜索引擎、Lucene的全文搜索服務器介紹、索引建立方式、Solr海量數據搜索引擎、Socket網絡通信、實現RMI遠程對象通訊、使用JMS消息服務、Kafka分布式消息系統、WebService與RestfulWS等
第八階段,互聯網框架的高級應用2:
Spring Security安全框架、實現Web應用安全控制、緩存應用與EhCache框架、OSCache與JBossCache框架、MyBatis與Hibernate緩存機制、NoSQL應用與SQL調優、MongoDB
NoSQL數據庫、Redis內存數據庫、實現RedisSession共享、SQL語句的優化、實現數據庫讀寫分離、WEB應用集群及性能優化、Maven項目管理工具、Web服務器負載均衡、實現Nginx與Tomcat集群、使用LoadRunner測試工具、性能優化之內存調優、代碼優化與重構的方法等。
對java有興趣的小夥伴們,不妨先從java入門開始!B站上有很多的java教學視頻,從基礎到高級的都有,還挺不錯的,知識點講的很細緻,還有完整版的學習路線圖。也可以自己去看看,下載學習試試。
學習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的知識點,一共分為六個階段,273個技能點,第一階段、第二階段、第三階段、第四階段是必須要掌握的,很多機構忽悠人,就只學到第四階段,第五階段和第六階段就是高薪、高職的保障,就說說想高薪必須得把後面兩個階段的給掌握了,老鐵你慢慢看。
第一階段:java基本功修鍊
1. 認識計算機硬件
2. 計算機組成原理
3. 計算機軟件知識
4. 計算機網絡知識
5. 常用網絡應用操作
6. 認識計算機病毒
7. 邏輯訓練
8. 初識Java
9. 變量和數據類型
10. 選擇結構
11. 循環結構for
12. 循環結構do-while
13. 循環結構while
14. 多重循環及程序調試
15. 循環進階
16. 一維數組及經典應用
17. 二維數組
18. 認識類與對象
19. 方法及方法重載
20. 封裝與繼承
21. 方法重寫與多態
22. 項目實戰-汽車租賃系統
23. 抽象類和接口
24. 異常
25. 項目實戰-QuickHit
26. Java 中的集合類型
27. List 集合
28. Set 集合
29. HashMap 集合
30. Iterator
31. Collections 算法類及常用方法
32. enum
33. 包裝類及裝箱拆箱
34. String、StringBuffer 類常用方法操作字符串
35. Date、Calendar
36. Math 類常用方法
37. IO/NIO
38. 字節輸入流(InputStream、FileInputStream、BufferedInputStream)
39. 字節輸出流(OutputStream、FileOutputStream、BufferedOutputStream)
40. 字符輸入流(Reader、InputStreamReader、FileReader BufferedReader)
41. 字節輸出流(Writer、OutputStreamWriter、FileWriter、BufferedWriter)
42. 文件複製
43. Serialize、Deserialize
44. 職場晉陞力:四象限時間管理與精力管理
45. 多線程(Thread、Runnable)
46. Thread LifeCycle
47. 線程的調度
48. 線程的同步和死鎖
49. Thread Pool
50. 職場晉陞力:團隊合作
51. Socket(TCP、UDP)
52. XML 概念、優勢、規範
53. XML 中特殊字符的處理
54. 使用DOM 讀取、添加、刪除、解析 XML 數據
第二階段:javaweb開發
55. 搭建和配置MySQL 數據庫
56. 數據庫增、刪、查、改語句
57. 事務
58. 視圖
59. 數據庫備份與恢復
60. 數據庫用戶管理
61. 數據庫設計
62. 項目實戰-銀行ATM 存取款機系統
63. 走進 HTML 和CSS
64. 列表表格及表單美化
65. CSS 高級操作
66. Bootstrap
67. CSS 組件
68. JavaScript 面向對象
69. JavaScript 判斷、循環
70. JavaScript 閉包
71. JavaScript 語法
72. Bootstrap 綜合案例
73. HTML5、CSS3
74. jQuery 基礎
75. jQuery 基本操作
76. jQuery 事件與特效
77. jQuery Ajax
78. jQuery 插件
79. 搭建Web 環境初識JSP
80. JSP 九大內置對象
81. JSP 實現數據傳遞和保存
82. JDBC
83. 單例模式、工廠模式
84. MVC、三層模式
85. Commons-fileupload、CKEditor
86. 分頁查詢
87. EL 與 JSTL
88. Servlet 與Filter
89. Listener 與MVC
90. Ajax 與 jQuery
91. jQuery 的Ajax 交互擴展
92. 項目實戰—使用Ajax 技術改進新聞發布系統
93. 反射
94. Linux 系統的安裝
95. 在Linux 中管理目錄和文件
96. 在Linux 中管理用戶和權限
97. 在Linux 服務器環境下安裝軟件和部署項目
98. 職場晉陞力:職場溝通
第三階段: 企業級框架開發
99. MyBatis 環境搭建
100. SQL 映射文件
101. 動態SQL
102. MyBatis 框架原理
103. Spring IOC
104. 構造注入、依賴注入、註解
105. Spring 整合MyBatis(SqlSessionTemplate、MapperFactoryBean、事務
處理)
106. Spring 數據源(屬性文件、JNDI)、Bean 作用域
107. Spring 框架的運行原理
108. SpringMVC 體系概念
109. SpringMVC 之數據綁定、數據效驗、
110. SpringMVC 之視圖及視圖解析
111. SpringMVC 之文件上傳、本地化解析
112. SpringMVC 之靜態資源處理、請求攔截器、異常處理
113. Oracle 數據庫環境搭建、安裝
114. Oracle 數據庫 SQL、分頁、備份、還原
115. Hibernate 概念、依賴
116. HQL 查詢語言
117. Hibernate 中配置關聯映射
118. HQL 連接查詢與 Hibernate 註解
119. Struts 2 概念、依賴
120. Struts 2 配置
121. OGNL 表達式
122. Struts 2 攔截器
123. SSH 框架整合
124. 使用Maven 構建項目
125. 使用Struts 2 實現Ajax
126. Jsoup 網絡爬蟲
127. 多線程網絡爬蟲
128. 反爬及反反爬策略
129. 通用爬蟲設計
130. Echart 圖表分析
131. IKAnalyzer 分詞
132. 企業框架項目實戰-代理商管理系統
133. 企業框架項目實戰-SL 會員商城
134. 企業框架項目實戰-會員管理系統
135.企業框架項目實戰-互聯網招聘信息採集分析平台
第四階段: 前後端分離開發
136. GitHub
137. Git 基礎(checkout、pull、commit、push、merge 等)
138. Git 進階(多分支協作)
139. GitLab
140. IDEA 的使用
141. Maven 介紹(概念、倉庫、構建、命令)
142. 使用Maven 構建WEB 項目
143. 使用Maven 構建多模塊項目
144. 使用Maven 搭建私服倉庫
145. Scrum 框架介紹(三個角色、三個工件、四個會議)
146. Scrum Team 組建團隊
147. 產品需求和用戶故事
148. 每日立會
149. 使用敏捷-Scrum 方式開發管理實戰
150. 前後端分離、分布式集群架構、垂直架構
151. SSM(SpringMVC+Spring+MyBatis)整合實戰
152. Git、Maven 私服Nexus
153. 第三方接入技術(微信、阿里)
154. MySQL 電商實戰
155. Redis(緩存服務)
156. 搜索引擎-Solr
157. 集成API Doc 工具-Swagger
158. 圖片自動化處理:Tengine+LUA+GraphicsMagic
159. 手機、郵箱註冊
160. 單點登錄 Token
161. OAuth2.0 認證
162. Jsoup 網絡爬蟲(多線程爬蟲/代理 IP 爬蟲)
163. ExecutorService 線程池
164. IK 中文分詞
165. Postman
166. ReactJS
167. webpack
168. 職場晉陞力:簡歷撰寫
169. 程序猿面試寶典之項目面試
170.大型互聯網旅遊電商項目實戰-愛旅行
第五階段: 分布式微服架構開發
171. Spring Boot 環境搭建
172. Spring Boot 常用技能
173. Spring Boot 整合Redis
174. Spring Boot 整合Mybatis
175. 微服務架構及架構設計
176. 消息隊列
ActiveMQ\RabbitMQ
177. 分布式事務
178. 分布式鎖 Redis-setnx
179. Zookeeper 註冊中心
180. 基於 ActiveMQ 實現高並發
181. Docker 環境搭建
182. Docker 鏡像加速
183. Docker 容器管理
184. Docker 鏡像管理
185. Docker 容器文件備份
186. Dockerfile
187. Docker 私服倉庫
188. 真實互聯網高並發電商項目實戰-雙十一搶購
189. 可視化監控 Portainer
190. Docker Compose 容器編排
191. Docker Compose 擴容、縮容
192. Docker Swarm 集群編排
193. Jenkins 安裝、插件配置
194. Jenkins 配置普通任務
195. Jenkins 配置管道任務
196. Jenkins 自動發布服務
197. Spring Cloud Eureka
198. Spring Cloud Feign
199. Spring Cloud Ribbon
200. Spring Cloud Zuul
201. Spring Cloud Config
202. Spring Cloud Hystrix
203. Spring Cloud Sleuth
204. Spring Boot Admin
205.Eureka 註冊原理探秘
206. Spring Cloud 大坑解讀
207. Zipkin
208. Zipkin 整合RabbitMQ
209. Zipkin 整合MySQL
210. ELK 日誌收集
211.Kafka
212. Elasticsearch 映射管理
213. Elasticsearch 查詢/複合查詢
214. Elasticsearch 集群/集群規劃
215. Elasticsearch 聚合
216. Elasticsearch 集群監控
217. Elasticsearch 插件
(Head/BigDesk)
218. Mycat 讀寫分離
219. Mycat 一主多從
220. Mycat 多主多從
221. Mycat 數據分片
222. Redis
223. Redis-Redlock
224. Elasticsearch 環境搭建
225. Elasticsearch 客戶端
226. Elasticsearch 索引管理
227. Elasticsearch 文檔管理
228. Mycat 集群
229. Jmeter 並發測試
230. Jmeter 生成測試報告
231. 微信登錄
232. 微信支付
233. 支付寶支付
234. 百度地圖
235. Sonar 本地檢測
236. Sonar +Jenkins 線上檢測
237. CI/CD
238. Spring Boot 改造愛旅行項目實戰
239. 大型互聯網票務類電商項目實戰-大覓網
240. ES6 概念(les、const)
241. ES6 對象和數組
242. ES6 函數擴展
243. VUE 環境搭建
244. VUE.JS 指令
245.VUE 交互
246. VUE 實例生命周期
247. VUE 組件
248. VUE 項目環境配置及單文件組件
249.VUE 路由
第六階段:cc服務
250. Spring Cloud Gateway
251. Consul
252. Nacos
253. Eureka、Consu、lNacos、Zookeeper 對比分析
254. Prometheus + Grafana
255. ES 分布式存儲原理
256. NoSQL 數據庫解決方案(Redis、MongoDB)
257. OAuth2.0 認證( authorization code 模式)
258. OAuth2.0 認證( implicit 模式)
259. OAuth2.0 認證( resource owner password credentials 模式)
260. OAuth2.0 認證( client credentials 模式)
261. NAS/FastDFS 分布式文件存儲
262. Python 基礎
263. Python 爬蟲
264. 大數據及 Hadoop 概述
265. 分布式文件系統 HDFS
266. 分布式計算框架MapReduce
267. 分布式列式數據庫 HBase
268. Hadoop 綜合應用
269. 面試大局觀
270. 職業規劃
271. 項目面試
272. 具體業務場景化解決方案
273. 更多技術專題持續增加中
有不清楚的可以繼續問我!
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/244593.html