于亞芳 郭磊
摘要:隨著Web技術(shù)的發(fā)展,JavaEE框架技術(shù)課程在軟件工程專業(yè)的地位越來(lái)越重要,該文對(duì)JavaEE框架技術(shù)課程的建設(shè)做了深入研究,從課程內(nèi)容、教學(xué)方法和考核方式等方面均做出了較大的改變,以提高學(xué)生學(xué)習(xí)積極性,培養(yǎng)學(xué)生在Web開發(fā)過(guò)程對(duì)框架的應(yīng)用能力及自主學(xué)習(xí)能力,更好地與企業(yè)連接,同時(shí)提高了教學(xué)質(zhì)量。
關(guān)鍵詞:JavaEE;Spring;Mybatis;SpringMVC;改革
中圖分類號(hào):TP30 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2018)20-0119-03
Research on Construction of JavaEE Framework Technology Course
YU Ya-fang1, GUO Lei2
(Anyang Normal University, Anyang 455000, China)
Abstract: With the development of Web technology, the JavaEE framework technology course is becoming more and more important in the software engineering specialty. This paper researches on the construction of the JavaEE framework technology course in deeply. It has made a great change from the contents of the course, the teaching method and the method of examination. In order to improve the students' enthusiasm for learning, train the students' application ability and autonomous learning ability to the JavaEE framework in the Web development. Connect with the enterprise better. Improve the quality of teaching in the same time.
Key words: JavaEE; Spring; Mybatis; SpringMVC; reform
1 引言
JavaEE是指Java Enterprise Edition,多用于企業(yè)級(jí)開發(fā),是目前應(yīng)用非常廣泛的熱門Web開發(fā)技術(shù)[1]。在企業(yè)招聘軟件開發(fā)崗位中占的比例也越來(lái)越大,許多高校為了與企業(yè)需求接軌,都將該課程作為軟件工程專業(yè)高年級(jí)的選修或必選課程[2]。該課程開設(shè)在JavaWeb課程之后,在學(xué)生掌握Web開發(fā)的基礎(chǔ)知識(shí)之后,通過(guò)《JavaEE框架技術(shù)》課程的學(xué)習(xí),使學(xué)生掌握使用框架技術(shù)進(jìn)行軟件開發(fā)的基本方法,培養(yǎng)學(xué)生綜合應(yīng)用其開發(fā)Web項(xiàng)目的能力。以便能夠使學(xué)生畢業(yè)后能更好滿足企業(yè)需求。
本文以安陽(yáng)師范學(xué)院軟件學(xué)院為例,對(duì)其JavaEE框架技術(shù)課程建設(shè)進(jìn)行研究分析。通過(guò)對(duì)本學(xué)院軟件工程專業(yè)Java技術(shù)方向?qū)W生調(diào)查發(fā)現(xiàn),該方向?qū)W生中有大部分是調(diào)劑到本專業(yè),而且還有一部分是文科學(xué)生,學(xué)生相對(duì)學(xué)習(xí)積極性不高,理工科基礎(chǔ)相對(duì)薄弱,針對(duì)學(xué)生本身的特點(diǎn),對(duì)JavaEE框架技術(shù)的課程建設(shè)、教學(xué)內(nèi)容及教學(xué)方法進(jìn)行研究探討,并希望做出一些改革建議,促使學(xué)生能更好地理解框架技術(shù)的概念,并掌握利用JavaEE相關(guān)技術(shù)進(jìn)行Web應(yīng)用程序的實(shí)際開發(fā)知識(shí)。
2 JavaEE框架技術(shù)教學(xué)內(nèi)容改革
目前流行的框架技術(shù)主要有Struts2+Spring+Hibernate(SSH)框架[3]和Spring+SpringMVC+MyBatis(SSM)框架,SSM框架相對(duì)于SSH框架配置文件較少,入門較快且容易上手,結(jié)合安陽(yáng)師范學(xué)院軟件學(xué)院學(xué)生的實(shí)際情況,課程教學(xué)內(nèi)容由原來(lái)的SSH框架轉(zhuǎn)換為SSM框架。SSM框架集由Spring、SpringMVC、MyBatis三個(gè)開源框架整合而成[1],它們?cè)谌龑蛹軜?gòu)中所處位置不同,功能也各不相同。為了更好地讓學(xué)生掌握SSM的知識(shí)及其應(yīng)用,課程內(nèi)容設(shè)置主要包括5個(gè)部分。
2.1 SSM前言
前言部分主要內(nèi)容包括系統(tǒng)架構(gòu)、Junit用法、log4j日志、回調(diào)設(shè)計(jì)模式、靜態(tài)代理設(shè)計(jì)模式、動(dòng)態(tài)代理設(shè)計(jì)模式、適配器設(shè)計(jì)模式和模板方式設(shè)計(jì)模式[4]。在課程開始安排前言部分講授這些內(nèi)容主要考慮到之后程序測(cè)試需要用到Junit和log4j日志,設(shè)計(jì)模式的種類很多,選擇這幾種設(shè)計(jì)模式在前言部分講解是因?yàn)樵诤罄m(xù)Spring的學(xué)習(xí)中,程序執(zhí)行調(diào)用過(guò)程中有用到這些設(shè)計(jì)模式,沒有這些基礎(chǔ)學(xué)生很難理解Spring編寫的程序執(zhí)行流程。
2.2 MyBatis
第二部分主要內(nèi)容是MyBatis,其原名為iBatis,是一款持久層框架,支持定制化SQL、存儲(chǔ)過(guò)程及高級(jí)映射等。作為Dao層的實(shí)現(xiàn)者,完成對(duì)數(shù)據(jù)庫(kù)的增、刪、改、查操作。該部分主要內(nèi)容包括MyBatis框架介紹、作用、結(jié)構(gòu)與工作原理,、MyBatis訪問(wèn)數(shù)據(jù)庫(kù)的過(guò)程實(shí)例,對(duì)單表進(jìn)行增、刪、改、查的操作,MyBatis實(shí)現(xiàn)動(dòng)態(tài)SQL、多表關(guān)聯(lián)查詢、查詢的緩存管理以及MyBatis的注解實(shí)現(xiàn)等內(nèi)容。選擇這些內(nèi)容的主要原因在于JavaEE框架技術(shù)最終是實(shí)現(xiàn)Web應(yīng)用的開發(fā),根據(jù)在Web開發(fā)過(guò)程中經(jīng)常用到對(duì)數(shù)據(jù)庫(kù)的相關(guān)操作選擇了該部分的內(nèi)容。
2.3 Spring
第三部分主要內(nèi)容是Spring,它是最受歡迎的企業(yè)級(jí)Java應(yīng)用程序開發(fā)框架,主要解決業(yè)務(wù)邏輯層和其它層的耦合問(wèn)題,應(yīng)用的面向接口的編程思想。該部分詳細(xì)內(nèi)容主要包括Spring概述、Spring與IoC(控制反轉(zhuǎn))、基于XML的DI(依賴注入)、基于注解的DI、AOP(Aspect Orient Programming,面向切面編程)概述、ASpectJ對(duì)AOP的實(shí)現(xiàn)、JDBC模板、事務(wù)管理,最后是Spring與MyBatis的整合應(yīng)用以及Spring與Web的整合應(yīng)用。Spring主要是降低耦合度,實(shí)現(xiàn)方式有多種,比如對(duì)AOP的實(shí)現(xiàn)只選取了常用的實(shí)現(xiàn)方式ASpectJ作為重點(diǎn),把一些不重要的內(nèi)容略過(guò)或簡(jiǎn)單說(shuō)明。
2.4 SpringMVC
第四部分主要內(nèi)容是SpringMVC,也稱為Spring Web MVC,是Spring框架的一部分,是一個(gè)視圖層框架,它提供了MVC(模型 - 視圖 - 控制器)架構(gòu)和用于開發(fā)靈活和松散耦合的Web應(yīng)用程序的組件。該部分主要包括SpringMVC概述、實(shí)例程序、SpringMVC配置式開發(fā)、SpringMVC注解式開發(fā)、SpringMVC核心技術(shù)及SSM整合實(shí)現(xiàn)。該部分內(nèi)容選取重點(diǎn)以Web開發(fā)中實(shí)際應(yīng)用為基礎(chǔ),選擇性以實(shí)例應(yīng)用方式講授SpringMVC的相關(guān)知識(shí)。
2.5案例
第五部分主要內(nèi)容是一個(gè)OA系統(tǒng)的欄目管理模塊的實(shí)現(xiàn)。SSM框架集三個(gè)主要模塊學(xué)習(xí)完畢,用一個(gè)具體實(shí)用的案例講授項(xiàng)目開發(fā)過(guò)程中各個(gè)模塊實(shí)現(xiàn)的流程,以便于學(xué)生更好的理解并應(yīng)用。
3 JavaEE框架技術(shù)教學(xué)方法的改革
傳統(tǒng)的教學(xué)方法不適合實(shí)踐性較強(qiáng)的JavaEE框架技術(shù)這門課程,為了更好地配合課程內(nèi)容及教學(xué)對(duì)象,在教學(xué)過(guò)程中選用項(xiàng)目教學(xué)法和任務(wù)驅(qū)動(dòng)教學(xué)法,讓學(xué)生在“學(xué)中做,做中學(xué)”。
(1)課前準(zhǔn)備,每次上課前給學(xué)生相關(guān)學(xué)習(xí)資料,因?yàn)檎n程內(nèi)容選取不到合適的教材,課程組老師為每個(gè)模塊都提前準(zhǔn)備了課程需要的相關(guān)文件如圖1所示,每個(gè)模塊中包含資源文件、編寫的課程筆記、錄制的微課視頻及案例源碼等,如圖2所示,視頻資源共計(jì)時(shí)長(zhǎng)達(dá)到68小時(shí),展示部分視頻資源截圖如圖3所示,并把所有資源分享給學(xué)生,要求學(xué)生提前閱讀課堂筆記,聽課程相關(guān)視頻。
(2)課堂安排,遵循學(xué)生主體,教師主導(dǎo)的原則。由于學(xué)生有對(duì)課程提前學(xué)習(xí)的基礎(chǔ),課上主要進(jìn)行學(xué)習(xí)情況的抽查,對(duì)學(xué)生問(wèn)題較多的重點(diǎn)部分再重點(diǎn)講授,采用任務(wù)驅(qū)動(dòng)的教學(xué)方法布置實(shí)例任務(wù),要求學(xué)生完成,老師主要對(duì)任務(wù)完成過(guò)程中遇到的難題加以解決。
(3)課堂總結(jié),每次課結(jié)束時(shí)對(duì)本次課上主要問(wèn)題,學(xué)生完成任務(wù)情況進(jìn)行總結(jié)分析,總結(jié)本次課的重難點(diǎn),完善學(xué)生的知識(shí)結(jié)構(gòu)。
(4)課后復(fù)習(xí),實(shí)踐性較強(qiáng)的課程關(guān)鍵是課后的練習(xí),每次課后要求學(xué)生把當(dāng)次課對(duì)應(yīng)的視頻中的實(shí)例手動(dòng)實(shí)現(xiàn),加強(qiáng)對(duì)知識(shí)點(diǎn)的理解,并提高代碼編寫能力。
4 考核方式改革
該課程主要目標(biāo)是為了適應(yīng)企業(yè)需求,結(jié)合學(xué)生特點(diǎn)培養(yǎng)其自主學(xué)習(xí)能力,培養(yǎng)良好的開發(fā)習(xí)慣,提高其編程能力的。所以傳統(tǒng)的試卷考核方式并不能檢測(cè)學(xué)生的學(xué)習(xí)情況,為了配合課程性質(zhì),保證教學(xué)改革的順利進(jìn)行,必須建立健全的考核體制。真正的開發(fā)過(guò)程中都需要團(tuán)隊(duì)合作,因此把班級(jí)同學(xué)隨機(jī)分組,讓學(xué)生自主選擇要完成的項(xiàng)目,最后分小組進(jìn)行答辯,每個(gè)小組成員闡述自己在項(xiàng)目實(shí)現(xiàn)過(guò)程中完成的工作,最后根據(jù)項(xiàng)目完成效果、答辯表現(xiàn)及平時(shí)課堂表現(xiàn)給定最終成績(jī)。
5 結(jié)語(yǔ)
實(shí)行新的課程建設(shè)方案后,JavaEE框架技術(shù)課程內(nèi)容有了較大的變化,上課方式也由原來(lái)的滿堂灌的講授變成了學(xué)生主動(dòng)學(xué)習(xí),老師解決問(wèn)題學(xué)生,讓學(xué)生在“做中學(xué)”,學(xué)生的學(xué)習(xí)積極性明顯提高,更好的貫徹的學(xué)生主體,教師主導(dǎo)的原則。
參考文獻(xiàn):
[1]陳永政, 張正龍.Java EE框架技術(shù) :SpringMVC+Spring+MyBatis[M]. 西安 :西安電子科技大學(xué)出版社,2017.
[2] 鄧丹君. 面向軟件工程師崗位的 Jav aEE課程體系改革方案[J]. 軟件導(dǎo)刊, 2014(9):165-167.
[3]王文明. 基于JavaEE架構(gòu)的SSH框架[J]. 電子技術(shù)與軟件工程, 2017(5):69-69.
[4]劉偉. 設(shè)計(jì)模式[M]. 清華大學(xué)出版社, 2011.
[5]盧道設(shè), 王磊. 在線課程在高職計(jì)算機(jī)課程實(shí)踐教學(xué)中的應(yīng)用[J]. 軟件導(dǎo)刊(教育技術(shù)), 2017, 16(5):57-58.
[6]馮君. 基于三階段教學(xué)模式的JavaEE框架技術(shù)教學(xué)改革[J]. 大學(xué)教育, 2013(17):111-112.