課程簡(jiǎn)介
Java全棧培訓(xùn)課程
階段一:Java零基礎(chǔ)入門(mén)
1、環(huán)境搭建與語(yǔ)法入門(mén)
這是Java入門(mén),學(xué)習(xí)Java語(yǔ)法規(guī)則,鍛煉編程思維。學(xué)會(huì)環(huán)境搭建,掌握J(rèn)ava程序的執(zhí)行流程,能夠使用運(yùn)算符和選擇與循環(huán)結(jié)構(gòu)進(jìn)行編程。
課程安排:
1、Java基本概念介紹
2、Windows和Mac下開(kāi)發(fā)環(huán)境搭建
3、數(shù)據(jù)類(lèi)型、變量和常量的使用
4、Java中多種運(yùn)算符的應(yīng)用
5、選擇結(jié)構(gòu)的執(zhí)行流程與應(yīng)用
2、Java語(yǔ)法之循環(huán)、數(shù)組與方法
將繼續(xù)學(xué)習(xí)語(yǔ)法基礎(chǔ),掌握循環(huán)結(jié)構(gòu)、數(shù)組和方法的語(yǔ)法規(guī)則和應(yīng)用,最后通過(guò)案例對(duì)所學(xué)知識(shí)進(jìn)行綜合應(yīng)用。學(xué)完該內(nèi)容可以進(jìn)行簡(jiǎn)單的程序邏輯開(kāi)發(fā)。
課程安排:
1、基礎(chǔ)語(yǔ)法綜合案例——數(shù)組移位與統(tǒng)計(jì)
2、while、do-while和for三種循環(huán)結(jié)構(gòu)的使用
3、嵌套循環(huán)的應(yīng)用
4、break和continue語(yǔ)句的特點(diǎn)及應(yīng)用
5、如何進(jìn)行程序的調(diào)試,debug的使用
6、一維數(shù)組和二維數(shù)組的應(yīng)用
7、Java自定義方法和方法調(diào)用
8、大作業(yè)——學(xué)生*管理
3、面向?qū)ο笾庋b與繼承
面向?qū)ο笫情_(kāi)發(fā)中非常重要的思想,在此我們將學(xué)習(xí)到面向?qū)ο笕筇卣髦械姆庋b與繼承,開(kāi)始運(yùn)用面向?qū)ο笏枷脒M(jìn)行程序開(kāi)發(fā)。
課程安排:
1、封裝綜合案例——學(xué)生信息管理
2、類(lèi)的定義和對(duì)象的創(chuàng)建
3、理解構(gòu)造方法的概念,并進(jìn)行應(yīng)用
4、封裝的特點(diǎn),應(yīng)用代碼實(shí)現(xiàn)程序的封裝
5、包的創(chuàng)建和導(dǎo)入
6、靜態(tài)變量和靜態(tài)方法的應(yīng)用
7、大作業(yè)——部門(mén)員工管理
8、繼承的概念和特點(diǎn),父類(lèi)和子類(lèi)的概念及應(yīng)用
9、方法重寫(xiě)的特點(diǎn)及使用
10、通過(guò)super關(guān)鍵字對(duì)父類(lèi)方法進(jìn)行調(diào)用
4、面向?qū)ο笾畣卫J脚c多態(tài)
將繼續(xù)學(xué)習(xí)面向?qū)ο笾兄匾母拍睿⒛軌蜻M(jìn)行代碼實(shí)現(xiàn),學(xué)完后可以利用面向?qū)ο笏枷腴_(kāi)發(fā)更復(fù)雜的應(yīng)用。
課程安排:
1、所有類(lèi)的父類(lèi)Object類(lèi)的使用
2、使用final關(guān)鍵字定義最終類(lèi)
3、現(xiàn)階段開(kāi)發(fā)中涉及到的常用注解的使用
4、單例模式的定義和使用
5、懶漢模式和餓漢模式的特點(diǎn)及代碼實(shí)現(xiàn)
6、向上轉(zhuǎn)型和向下轉(zhuǎn)型的概念和應(yīng)用
7、接口和抽象類(lèi)的定義和使用
8、成員內(nèi)部類(lèi)、靜態(tài)內(nèi)部類(lèi)、方法內(nèi)部類(lèi)和匿名內(nèi)部類(lèi)的應(yīng)用
9、大作業(yè)——使用多態(tài)完成馬戲團(tuán)動(dòng)物表演
5、常用工具類(lèi)(上)
工具類(lèi)是Java為我們提供的一些類(lèi),可以直接應(yīng)用于程序開(kāi)發(fā)中。學(xué)習(xí)工具類(lèi)不但要學(xué)習(xí)常用工具類(lèi)的使用,還要學(xué)會(huì)閱讀工具類(lèi)的文檔,這是開(kāi)發(fā)中非常重要的技能。
課程安排:
1、使用try-catch-finally處理異常
2、理解throw和throws的區(qū)別,會(huì)使用自定義異常和異常鏈
3、包裝類(lèi)的基本使用,理解裝箱和拆箱的概念
4、字符串處理類(lèi)String和StringBuffer的基本使用和應(yīng)用場(chǎng)景
5、集合List、Set、HashMap及實(shí)現(xiàn)類(lèi)的特點(diǎn)和應(yīng)用
6、常用工具類(lèi)(下)
繼續(xù)學(xué)習(xí)常用工具類(lèi),通過(guò)案例學(xué)習(xí)復(fù)雜業(yè)務(wù)邏輯的開(kāi)發(fā),同時(shí)實(shí)現(xiàn)增刪改的功能,為后續(xù)課程內(nèi)容的學(xué)習(xí)打下扎實(shí)的基礎(chǔ)。
課程安排:
1、階段綜合案例——播放器管理
2、使用Comparator和Comparable兩個(gè)接口對(duì)集合進(jìn)行排序
3、泛型的使用,包括泛型作為方法參數(shù)、自定義泛型類(lèi)和泛型方法
4、線程的創(chuàng)建,理解線程的生命周期
5、線程同步的使用和如何進(jìn)行線程間通信
6、使用字節(jié)流和字符流進(jìn)行數(shù)據(jù)傳輸
7、應(yīng)用序列化和反序列化對(duì)對(duì)象進(jìn)行讀寫(xiě)
8、大作業(yè)——學(xué)生管理系統(tǒng)
階段二:從網(wǎng)頁(yè)搭建入門(mén)Java Web
1、 前端基礎(chǔ)之HTML與CSS
前端知識(shí)是進(jìn)行Java Web開(kāi)發(fā)的必備基礎(chǔ),接下來(lái)將入門(mén)前端,學(xué)習(xí)HTML常用標(biāo)簽和CSS樣式,能夠應(yīng)用盒子模型進(jìn)行布局管理。
課程安排:
1、HTML的基本結(jié)構(gòu)和字體、標(biāo)題、列表、圖片等常用標(biāo)簽的使用
2、表格和表單標(biāo)簽使用,二者嵌套使用進(jìn)行簡(jiǎn)單布局管理
3、CSS的基本使用和常用樣式
4、CSS偽類(lèi)和偽元素的區(qū)別和應(yīng)用
5、CSS的各種選擇器及其應(yīng)用
6、浮動(dòng)和定位的使用
7、使用盒子模型進(jìn)行頁(yè)面布局管理
2、前端基礎(chǔ)之JavaScript與綜合案例
JavaScript中是前端的重要基礎(chǔ)知識(shí),主要用于數(shù)據(jù)校驗(yàn)和特效展示。我們將學(xué)習(xí)JavaScript的基礎(chǔ)知識(shí),能夠獨(dú)立完成靜態(tài)頁(yè)面開(kāi)發(fā)。
課程安排:
1、前端綜合案例——企業(yè)門(mén)戶(hù)網(wǎng)站首頁(yè)開(kāi)發(fā)
2、JavaScript變量、運(yùn)算符、程序控制語(yǔ)句等基本語(yǔ)法
3、JavaScript常用函數(shù)和自定義函數(shù)
4、JavaScript數(shù)組的基本使用
5、使用JavaScript對(duì)表單元素進(jìn)行操作
6、使用JavaScript開(kāi)發(fā)簡(jiǎn)單計(jì)算器
7、大作業(yè)——校園網(wǎng)首頁(yè)開(kāi)發(fā)
3、Java Web基礎(chǔ)
從此開(kāi)始進(jìn)入Java Web基礎(chǔ)知識(shí)的學(xué)習(xí),這將是一個(gè)新的階段,要注意概念的理解,多動(dòng)手練習(xí)體會(huì)開(kāi)發(fā)流程?;A(chǔ)很重要,對(duì)于以后職業(yè)發(fā)展非常有好處,一定要重視。
課程安排:
1、XML文件的結(jié)構(gòu)和約束
2、對(duì)XML文檔進(jìn)行讀寫(xiě)操作
2、掌握Web項(xiàng)目開(kāi)發(fā)流程,獨(dú)立進(jìn)行項(xiàng)目開(kāi)發(fā)和運(yùn)行
3、JSP九大內(nèi)置對(duì)象的使用
4、重定向和轉(zhuǎn)發(fā)的區(qū)別和應(yīng)用
5、session和cookie的區(qū)別和使用
6、使用JSTL和EL表達(dá)式對(duì)集合數(shù)據(jù)進(jìn)行展示
7、大作業(yè)——商品信息管理
4、常用功能與過(guò)濾器
在Web開(kāi)發(fā)中還會(huì)有一些常用功能的應(yīng)用,比如局部刷新數(shù)據(jù)、表單數(shù)據(jù)校驗(yàn)等,這些功能是由特定的技術(shù)來(lái)完成,Web基礎(chǔ)和這些技術(shù)結(jié)合,開(kāi)發(fā)出具有良好體驗(yàn)的項(xiàng)目。
課程安排:
1、JSON基礎(chǔ)語(yǔ)法和FastJSON的應(yīng)用
2、jQuery的常用語(yǔ)法及應(yīng)用
3、正則表達(dá)式基本語(yǔ)法,完成常見(jiàn)數(shù)據(jù)驗(yàn)證
4、過(guò)濾器的生命周期和開(kāi)發(fā)流程
5、使用過(guò)濾器解決中文亂碼問(wèn)題
6、過(guò)濾器鏈的概念和使用
7、使用過(guò)濾器完成多端設(shè)備自動(dòng)適配的功能開(kāi)發(fā)
5、監(jiān)聽(tīng)器與項(xiàng)目實(shí)戰(zhàn)
接下來(lái)繼續(xù)學(xué)習(xí)Java Web技術(shù),并學(xué)習(xí)Web階段綜合項(xiàng)目。通過(guò)該項(xiàng)目學(xué)會(huì)前后臺(tái)結(jié)合的項(xiàng)目開(kāi)發(fā),掌握項(xiàng)目結(jié)構(gòu)設(shè)計(jì),為后續(xù)課程內(nèi)容的學(xué)習(xí)做準(zhǔn)備。
課程安排:
1、階段綜合案例——Java Web實(shí)現(xiàn)企業(yè)門(mén)戶(hù)網(wǎng)站前后臺(tái)開(kāi)發(fā)
2、監(jiān)聽(tīng)器的概念和應(yīng)用場(chǎng)景
3、使用過(guò)濾器完成請(qǐng)求流量分析統(tǒng)計(jì)和靜態(tài)數(shù)據(jù)預(yù)加載功能開(kāi)發(fā)
4、使用ECharts完成動(dòng)態(tài)圖表開(kāi)發(fā)
5、FreeMarker模板引擎的基本語(yǔ)法和開(kāi)發(fā)步驟,以及與Servlet進(jìn)行整合開(kāi)發(fā)
6、MVC設(shè)計(jì)模式的特點(diǎn)和使用
7、項(xiàng)目結(jié)構(gòu)的分層設(shè)計(jì)
8、大作業(yè)——MVC模式完成圖書(shū)管理系統(tǒng)
階段三:Java數(shù)據(jù)庫(kù)開(kāi)發(fā)與實(shí)戰(zhàn)
1、MySQL基礎(chǔ)
現(xiàn)在開(kāi)啟Java數(shù)據(jù)庫(kù)開(kāi)發(fā),按照數(shù)據(jù)庫(kù)基礎(chǔ)——JDBC和MyBatis框架為主線進(jìn)行學(xué)習(xí)。接下來(lái)的兩周主要學(xué)習(xí)數(shù)據(jù)庫(kù)的設(shè)計(jì),并結(jié)合MySQL學(xué)習(xí)數(shù)據(jù)庫(kù)基本操作。SQL語(yǔ)句的書(shū)寫(xiě)是重點(diǎn),一定要熟練掌握。
課程安排:
1、根據(jù)數(shù)據(jù)庫(kù)規(guī)范設(shè)計(jì)數(shù)據(jù)庫(kù)
2、數(shù)據(jù)庫(kù)的創(chuàng)建、表的創(chuàng)建和修改等操作
3、數(shù)據(jù)表的增刪改查等基本操作
4、數(shù)據(jù)庫(kù)的數(shù)字、日期時(shí)間、字符等常用函數(shù)使用
5、事務(wù)的ACID屬性和隔離級(jí)別
6、SQL文件的導(dǎo)入和導(dǎo)出
2、Java數(shù)據(jù)庫(kù)開(kāi)發(fā)基礎(chǔ)
JDBC是非常重要的數(shù)據(jù)庫(kù)基礎(chǔ)知識(shí),是后續(xù)數(shù)據(jù)庫(kù)框架學(xué)習(xí)的基礎(chǔ)!現(xiàn)在開(kāi)始圍繞JDBC的基礎(chǔ)知識(shí)展開(kāi)學(xué)習(xí),應(yīng)用數(shù)據(jù)庫(kù)連接池提升性能,使用DBUtils工具類(lèi)提高開(kāi)發(fā)效率。
課程安排:
1、IntelliJ IDEA開(kāi)發(fā)工具的使用
2、使用JDBC實(shí)現(xiàn)數(shù)據(jù)的增刪改查
3、使用PreparedStatment對(duì)數(shù)據(jù)進(jìn)行預(yù)處理,防止SQL注入漏洞
4、數(shù)據(jù)庫(kù)連接池Druid和C3P0的使用
5、使用Apache的數(shù)據(jù)庫(kù)工具類(lèi)DBUtils簡(jiǎn)化代碼開(kāi)發(fā)
6、大作業(yè)——新聞管理系統(tǒng)
3、框架前置知識(shí)
在框架學(xué)習(xí)前要了解工廠模式和反射的內(nèi)容,并要學(xué)會(huì)使用Maven進(jìn)行管理,還會(huì)涉及到Lambda表達(dá)式的代碼,因此我們把這些知識(shí)點(diǎn)放到這一階段來(lái)學(xué)習(xí),為框架學(xué)習(xí)打好基礎(chǔ)。
課程安排:
1、Maven的常用命令
2、在IntelliJ和IDEA兩種開(kāi)發(fā)環(huán)境下創(chuàng)建Maven項(xiàng)目
3、工廠模式中簡(jiǎn)單工廠和工廠方法的特點(diǎn)及應(yīng)用
4、反射的基本概念和四個(gè)反射類(lèi)Class、Field、Method、Constructor的使用
5、Lambda表達(dá)式的基本語(yǔ)法
6、Lambda表達(dá)式的靜態(tài)方法、實(shí)例方法、對(duì)象方法和構(gòu)造方法的的引用
7、Stream API的創(chuàng)建、中間操作和終止操作
4、MyBatis基礎(chǔ)
開(kāi)始學(xué)習(xí)MyBatis框架,這也是我們接觸的框架。從框架增刪改查的基本操作到緩存、批處理等進(jìn)階知識(shí)點(diǎn)都會(huì)在課程中涉及。學(xué)習(xí)過(guò)程中注意框架與之前知識(shí)的不同,跟著老師的節(jié)奏編寫(xiě)代碼。
課程安排:
1、MyBatis開(kāi)發(fā)的基本流程
2、MyBatis參數(shù)傳遞
3、MyBatis多表關(guān)聯(lián)查詢(xún)
4、使用logback進(jìn)行日志管理
5、使用動(dòng)態(tài)SQL語(yǔ)句進(jìn)行稍復(fù)雜的邏輯開(kāi)發(fā)
6、MyBatis一級(jí)緩存與二級(jí)緩存的概念和應(yīng)用
7、MyBatis對(duì)象關(guān)聯(lián)查詢(xún)
8、使用PageHelper插件進(jìn)行數(shù)據(jù)分頁(yè)
9、使用MyBatis進(jìn)行數(shù)據(jù)的批量插入和刪除
10、MyBatis常用注解
5、MyBatis實(shí)現(xiàn)OA系統(tǒng)項(xiàng)目實(shí)戰(zhàn)
接下來(lái),我們來(lái)對(duì)MyBatis的知識(shí)進(jìn)行綜合應(yīng)用,完成企業(yè)OA項(xiàng)目的實(shí)現(xiàn)。 OA項(xiàng)目是與MySQL數(shù)據(jù)庫(kù)進(jìn)行交互的Web項(xiàng)目,意在掌握一個(gè)完整的數(shù)據(jù)庫(kù)應(yīng)用分析與設(shè)計(jì)、開(kāi)發(fā)過(guò)程。
課程安排:
1、需求分析到數(shù)據(jù)庫(kù)的設(shè)計(jì)至建表的過(guò)程
2、手把手搭建底層開(kāi)發(fā)框架
3、基于工作流程開(kāi)發(fā)一個(gè)完整的員工請(qǐng)假與審批應(yīng)用
4、使用RBAC權(quán)限模型完成基于角色的權(quán)限控制
5、使用動(dòng)態(tài)SQL確定不同角色訪問(wèn)的數(shù)據(jù)范圍
6、使用LayUI框架實(shí)現(xiàn)后臺(tái)頁(yè)面開(kāi)發(fā)
7、使用MD5加密算法保證數(shù)據(jù)的安全性
8、大作業(yè)——圖書(shū)后臺(tái)管理
6、Linux環(huán)境搭建與Redis應(yīng)用
在實(shí)際開(kāi)發(fā)中,項(xiàng)目最終要被部署到Linux環(huán)境下,我們就會(huì)學(xué)習(xí)如何將企業(yè)OA項(xiàng)目部署到Linux下,并使用Redis進(jìn)行數(shù)據(jù)緩存,提高訪問(wèn)速度。
課程安排:
1、CentOS 7系統(tǒng)、以及客戶(hù)端工具Xshell和XFtp的下載和安裝
2、Linux系統(tǒng)目錄結(jié)構(gòu)和常用命令
3、文本編輯工具vim
4、使用tar命令進(jìn)行文件壓縮和解壓縮
5、使用Bash shell開(kāi)發(fā)自動(dòng)運(yùn)維程序
6、使用yum進(jìn)行軟件安裝卸載
7、Linux的網(wǎng)絡(luò)設(shè)置
8、Linux下安裝、部署并運(yùn)行Web應(yīng)用
9、Redis下載安裝、基本配置和常用命令
10、使用Jedis對(duì)Redis進(jìn)行操作
階段四:從SSM到SpringBoot 項(xiàng)目實(shí)戰(zhàn)
1、Spring基礎(chǔ)
本階段將開(kāi)啟Spring家族的框架學(xué)習(xí),會(huì)重點(diǎn)學(xué)習(xí)Spring框架中的控制反轉(zhuǎn)IoC、依賴(lài)注入DI和面向切面編程AOP的內(nèi)容??蚣懿糠值母拍畋容^抽象,要結(jié)合案例進(jìn)行理解,先學(xué)會(huì)使用,再進(jìn)行深入學(xué)習(xí)。
課程安排:
1、Spring IoC、DI和AOP等核心概念
2、Spring實(shí)例化和管理Bean的方式
3、Spring注解分類(lèi)和常用注解應(yīng)用
4、Spring AOP開(kāi)發(fā)與配置流程
5、Spring五種通知類(lèi)型與應(yīng)用場(chǎng)景
6、PointCut切人點(diǎn)表達(dá)式的語(yǔ)法規(guī)則及應(yīng)用
7、JDK動(dòng)態(tài)代理和CGLib代理的執(zhí)行過(guò)程及區(qū)別
8、JdbcTemplate的使用步驟與增刪改查實(shí)現(xiàn)
9、聲明式事務(wù)與編程式事務(wù)的區(qū)別及開(kāi)發(fā)流程
10、理解聲明式事務(wù)七種事務(wù)傳播行為
11、導(dǎo)入交易流水賬單案例
2、Spring MVC基礎(chǔ)
學(xué)習(xí)重點(diǎn)是SpringMVC,能夠開(kāi)發(fā)RESTful風(fēng)格的API。至此,SSM框架的基礎(chǔ)知識(shí)就已經(jīng)學(xué)習(xí)完畢,后面將開(kāi)啟整合開(kāi)發(fā)的學(xué)習(xí),進(jìn)行企業(yè)級(jí)項(xiàng)目開(kāi)發(fā)。
課程安排:
1、SpringMVC開(kāi)發(fā)流程與環(huán)境配置
2、SpringMVC數(shù)據(jù)綁定的實(shí)現(xiàn)
3、使用RESTful開(kāi)發(fā)規(guī)范開(kāi)發(fā)API
4、使用SpringMVC解決跨域問(wèn)題
5、SpringMVC攔截器的基本使用
6、使用SpringMVC攔截器開(kāi)發(fā)用戶(hù)流量統(tǒng)計(jì)功能
3、SSM開(kāi)發(fā)社交網(wǎng)站
會(huì)使用SSM實(shí)現(xiàn)“仿豆瓣”社交項(xiàng)目,該項(xiàng)目是SSM階段最重要 的項(xiàng)目,也是一個(gè)前后臺(tái)分離的項(xiàng)目,使用移動(dòng)端展示前臺(tái)。該項(xiàng)目是我們學(xué)習(xí)的企業(yè)級(jí)項(xiàng)目,業(yè)務(wù)需求也比之前更加復(fù)雜,動(dòng)手寫(xiě)代碼更加重要。
課程安排:
1、項(xiàng)目的需求分析,用例設(shè)計(jì),流程圖繪制和數(shù)據(jù)庫(kù)設(shè)計(jì)
2、使用MyBatis-plus敏捷開(kāi)發(fā)插件實(shí)現(xiàn)數(shù)據(jù)的增刪改查操作
3、使用Ajax+騰訊ArtTemplate模板進(jìn)行熱門(mén)圖書(shū)查詢(xún)
4、基于MyBatis實(shí)現(xiàn)分頁(yè)查詢(xún),并實(shí)現(xiàn)上拉"加載更多"功能
5、采用Redis對(duì)訪問(wèn)的圖書(shū)內(nèi)容進(jìn)行緩存
6、用戶(hù)評(píng)價(jià)、回復(fù)和點(diǎn)贊功能實(shí)現(xiàn)
7、應(yīng)用阿里云短信驗(yàn)證實(shí)現(xiàn)注冊(cè)登錄
8、使用Web富文本編輯器進(jìn)行在線編輯
9、實(shí)現(xiàn)評(píng)價(jià)/回復(fù)的后臺(tái)審核功能
10、大作業(yè)——圖書(shū)后臺(tái)管理系統(tǒng)的短評(píng)管理及登錄功能
4、Spring Boot電商項(xiàng)目實(shí)戰(zhàn)
接下來(lái)的兩周我們將迎來(lái)重量級(jí)的電商項(xiàng)目,該項(xiàng)目源于企業(yè)真實(shí)應(yīng)用,前后端徹底分離,帶我們體驗(yàn)企業(yè)級(jí)開(kāi)發(fā)流程,憑此一項(xiàng)綜合實(shí)戰(zhàn),足以叩開(kāi)企業(yè)大門(mén)。
課程安排:
1、采用前后端分離模式進(jìn)行開(kāi)發(fā),覆蓋企業(yè)開(kāi)發(fā)需求分析、設(shè)計(jì)、編碼、測(cè)試和上線全流程
2、實(shí)現(xiàn)用戶(hù)管理、商品分類(lèi)管理、商品信息管理、購(gòu)物車(chē)、訂單管理等電商核心功能
3、數(shù)據(jù)庫(kù)設(shè)計(jì)與實(shí)現(xiàn)
4、應(yīng)用RESTful進(jìn)行接口設(shè)計(jì),并使用Postman進(jìn)行接口測(cè)試
5、應(yīng)用MyBatis generator代碼自動(dòng)生成插件,提升開(kāi)發(fā)效率
6、使用阿里云完成項(xiàng)目的線上部署
7、使用Swagger2構(gòu)建強(qiáng)大的API文檔
8、使用Log4j 2進(jìn)行日志管理
9、使用Redis對(duì)商品分類(lèi)信息進(jìn)行緩存
10、使用JSR-303實(shí)現(xiàn)請(qǐng)求參數(shù)校驗(yàn)
5、面試
學(xué)習(xí)完前面的內(nèi)容,已經(jīng)可以滿足公司對(duì)企業(yè)級(jí)開(kāi)發(fā)的需求了。為了幫大家準(zhǔn)備面試,專(zhuān)門(mén)為大家設(shè)計(jì)了面試指導(dǎo)課程,介紹面試中的注意事項(xiàng),對(duì)常見(jiàn)面試問(wèn)題進(jìn)行解析。
課程安排:
1、面試前的準(zhǔn)備,常見(jiàn)問(wèn)題的解答方式及建議
2、面向?qū)ο蟮奶攸c(diǎn)、類(lèi)的執(zhí)行順序、Java異常體系
3、String與字符串常量池,String與StringBuffer的區(qū)別
4、List與Set集合的區(qū)別,TreeSet排序,hashCode與equals的區(qū)別與聯(lián)系
5、垃圾回收與JVM內(nèi)存
6、Servlet執(zhí)行流程和生命周期
7、請(qǐng)求與響應(yīng)結(jié)構(gòu)、重定向與轉(zhuǎn)發(fā)的區(qū)別
8、Spring的核心概念
9、MyBatis的緩存機(jī)制
階段五:Java分布式與微服務(wù)實(shí)戰(zhàn)
1、多線程與分布式
開(kāi)始第五階段的內(nèi)容學(xué)習(xí),主要包括分布式與微服務(wù)。這些內(nèi)容也是互聯(lián)網(wǎng)公司進(jìn)行開(kāi)發(fā)需要用到的知識(shí)點(diǎn),知識(shí)深度也比之前有所提高,學(xué)習(xí)過(guò)程中要注意跟著視頻進(jìn)行操作。
課程安排:
1、線程池的基本使用和狀態(tài)
2、ThreadLocal的基本使用、原理和注意事項(xiàng)
3、分布式核心概念
4、docker的下載、安裝和基本命令
5、獨(dú)立制作docker容器
6、Nginx的安裝、基本使用和常用命令
7、使用Nginx搭建文件服務(wù)
8、消息隊(duì)列RabbitMQ的核心概念queue、message和exchange
9、RabbitMQ的四種交換機(jī)模式
10、Spring Boot整合RabbitMQ案例
2、Spring Cloud基礎(chǔ)
進(jìn)行微服務(wù)的課程學(xué)習(xí),通過(guò)案例完成對(duì)SpringCloud基礎(chǔ)知識(shí)的介紹。
課程安排:
1、微服務(wù)的基本概念、設(shè)計(jì)與拆分原則
2、微服務(wù)和Spring Cloud的關(guān)系
3、微服務(wù)常見(jiàn)的組件和功能
4、課程查詢(xún)案例基本介紹、系統(tǒng)架構(gòu)設(shè)計(jì)和接口設(shè)計(jì)
5、分模塊構(gòu)建Spring Cloud項(xiàng)目
6、完成課程列表、課程價(jià)格等服務(wù)開(kāi)發(fā)
7、課程服務(wù)整合,利用服務(wù)注冊(cè)與發(fā)現(xiàn)機(jī)制,完成課程查詢(xún)基本功能
8、整合Feign實(shí)現(xiàn)服務(wù)間調(diào)用
9、網(wǎng)關(guān)的集成與開(kāi)發(fā),并接入服務(wù)
10、引入服務(wù)的熔斷與降級(jí),并進(jìn)行實(shí)操演練
3、Spring Cloud電商實(shí)戰(zhàn)
下面的對(duì)Spring Boot電商項(xiàng)目進(jìn)行重構(gòu),應(yīng)用Spring Cloud進(jìn)行項(xiàng)目開(kāi)發(fā),理解服務(wù)拆分規(guī)則,鍛煉微服務(wù)項(xiàng)目實(shí)戰(zhàn)開(kāi)發(fā)能力。
課程安排:
1、服務(wù)拆分過(guò)程分析和經(jīng)驗(yàn)分享
2、完成用戶(hù)、商品、購(gòu)物車(chē)和訂單等服務(wù)開(kāi)發(fā)
3、通用common模塊的拆分和應(yīng)用
4、Eureka server注冊(cè)中心開(kāi)發(fā),用Feign完成服務(wù)之間的調(diào)用
5、共享Session的處理方案
6、統(tǒng)一網(wǎng)關(guān)的集成與開(kāi)發(fā)
7、大作業(yè)——在項(xiàng)目基礎(chǔ)上動(dòng)手完成廣告系統(tǒng)模塊開(kāi)發(fā)
4、Zookeeper+Dubbo應(yīng)用與面試
對(duì)Dubbo和Zookeeper的應(yīng)用進(jìn)行介紹,區(qū)分它們與Spring Cloud的異同。最后同樣安排了面試課程,對(duì)常見(jiàn)的面試問(wèn)題進(jìn)行總結(jié)。
課程安排:
1、Zookeeper的下載、配置與運(yùn)行
2、數(shù)據(jù)結(jié)構(gòu)node與常用命令
3、Watcher機(jī)制和權(quán)限acl介紹
4、使用Zookeeper的Java原生客戶(hù)端和Curator進(jìn)行開(kāi)發(fā)
5、RPC調(diào)用,在Dubbo架構(gòu)下各服務(wù)的關(guān)系
6、整合Dubbo和Zookeeper
7、完成Dubbo開(kāi)發(fā)案例
8、單例模式的多種寫(xiě)法和對(duì)比
9、如何選型Dubbo和Spring Cloud
10、闡述Spring Cloud核心組件