999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

《Spring+Struts+iBatis程序設計》課程的游戲案例教學法

2016-01-21 22:10:28林淑飛
教育教學論壇 2015年40期
關鍵詞:案例游戲

林淑飛

摘要:通常,《Spring+Struts+iBatis程序設計》課程使用企業級項目做教學案例,業務復雜的企業級項目案例會影響學生對教學內容的學習。游戲業務簡單且有趣,不但能激發學生的學習興趣而且不會打擊學生的自信心。本文使用掃雷游戲做教學案例,使用Spring+Struts+iBatis開發掃雷游戲的同時來講授Spring+Struts+iBatis理論知識。文中具體介紹了游戲案例教學法的實施過程,講授Spring部分時做游戲的業務層,講授iBatis部分時做游戲的持久層,講授Struts部分時做游戲的展示層。此方法已進行過兩輪的教學實踐,效果較好。

關鍵詞:游戲;掃雷游戲;Spring Struts iBatis教學方法;案例

中圖分類號:G642.0 文獻標志碼:A 文章編號:1674-9324(2015)40-0182-03

一、引言

Spring、Struts和iBatis都是企業級開源框架,對學生就業很有幫助,但不好掌握,因此案例教學法很有必要。游戲案例業務簡單,而且易于激發學生的學習興趣。將一個簡單的游戲開發貫穿于Spring+Struts+iBatis(以下簡稱“SSI”)程序設計的教學中,即邊帶著學生開發游戲邊講授SSI重要知識點的原理和應用,這就是本文的游戲案例教學法。

下面說明掃雷游戲案例教學法的實施過程,即給出以掃雷游戲的開發為輔、講解SSI為主的教學過程。

二、教學方法實施過程簡介

(一)講解Spring部分

Spring的核心技術是IOC和AOP[1,2]。因為IOC和AOP的底層技術是反射機制,所以需用2課時來講解java的反射機制,再用2課時講解IoC和AOP的概念,最后將IoC和AOP應用到掃雷游戲中。在掃雷游戲中,類Pair表示按鈕的位置,類ThunderButton表示按鈕,類DengJi表示游戲的級別,ThunderButtonLayout表示和類DengJi有關的按鈕布局。領域類User、Log分別表示玩家和成績統計。

DengJi類應只有4個對象,分別是初級、中級、高級和自定義,都交給SpringIoc容器管理。前3個對象成員變量的值是固定的,第4個自定義等級是玩家在游戲進行時才能確定的,所以通過IoC容器引用屬性文件中的值來實現。

GameStyle表示游戲的外觀,主要指按鈕和雷的外觀。如果按鈕有3種樣式,雷有2種樣式,那么共有6種外觀,就在SpringIoC容器中放6個GameStyle對象。為了講解SpringIoC對集合的管理,可以將GameStyle的6個對象放到集合里。

ThunderButton的結構如下:

public class ThunderButton extends JLabel{

//定義成員變量,如按鈕的位置、按鈕外觀、所屬窗口等

public ThunderButton(){ }

public int begin(){ //在這里設置按鈕的一些屬性值,方法返回值表示已找到的雷數}

}

使用AOP的環繞增強技術將按鈕的鼠標左擊、右擊和雙擊事件處理植入到ThunderButton的begin方法中,順勢講SpringAOP的原理及使用。鼠標雙擊某數字按鈕可獲得此按鈕周圍雷的位置提示。

當單擊窗口的關閉鍵、結束按鈕或結束菜單項想要退出游戲時,都有確認提醒,即“游戲正進行,您希望做什么?保存、不保存或是取消”,這可以使用Spring AOP的后置增強來實現。若游戲已開始就植入增強,若游戲沒有開始就不植入增強,這是有條件的植入增強。

當游戲結束時,不管是由于成功,還是由于踩雷,或是由于時間到了,必須要記錄游戲的結果,這可以使用SpringAOP的前置增強來完成。

當單擊“新游戲”菜單項或當游戲失敗了,都會出現“開始一個新的游戲”和“重新開始這個游戲”兩個選項,這時就可使用AOP的引介增強了。這兩個選項的不同之處是后者需要保存當前游戲中雷的位置,并在新游戲中應用。可以將這兩個選項的實現放在同一個方法中,在此方法中植入“保存當前游戲的雷的位置”的功能,并設置是否開啟此功能的開關,這正是引介增強所能實現的。

Spring支持基于XML配置的AOP、基于Schema配置的AOP以及基于@AspectJ注解的AOP,我們課堂上用基于XML配置AOP,其余兩個使用很簡單,讓學生課下自學。

(二)講解iBatis部分

[3]iBatis是對JDBC操作一定程度上的封裝。它的核心是映射文件和接口SqlMapClient。映射文件的作用是指出有映射關系的類和數據表,并定義一些SQL語句。接口SqlMapClient具有SQL執行、批處理和事物處理的能力。為了講解iBatis,我們給掃雷游戲提供了以下功能:登錄,注冊,統計當前玩家每個游戲等級最好的5次成績,對每個游戲等級從所有玩家中找出前5名,游戲結束時除了顯示游戲成敗外還顯示當前玩家等級游戲的總次數、成功次數、成功率、連續成功次數、連續失敗次數、最好成績及其取得的時間。我們可邊實現這些功能邊講授iBatis。

首先搭建數據庫,準備實體類和實體類對應的映射文件。實體類有User和Log,分別表示玩家和日志,它們對應的數據表分別為user和log。接著根據游戲的業務需求,分別為兩個實體類定義對應的映射文件User.xml和Log.xml。最后來準備UserDao(接口)、UserDaoImpl(實現類)、LogDao(接口)、LogDaoImpl(實現類),對數據表有什么操作它們就有什么方法。比如,LogDao有如下方法:

void save(Log log);

List

猜你喜歡
案例游戲
案例4 奔跑吧,少年!
少先隊活動(2021年2期)2021-03-29 05:40:48
隨機變量分布及統計案例拔高卷
發生在你我身邊的那些治超案例
中國公路(2017年7期)2017-07-24 13:56:38
游戲
數獨游戲
瘋狂的游戲
飛碟探索(2016年11期)2016-11-14 19:34:47
爆笑游戲
隨機變量分布及統計案例拔高卷
一個模擬案例引發的多重思考
中國衛生(2015年4期)2015-11-08 11:16:06
第八章直接逃出游戲
小學科學(2015年7期)2015-07-29 22:29:00
主站蜘蛛池模板: 国产亚洲精品97AA片在线播放| 欧美精品不卡| 国产全黄a一级毛片| 蜜芽国产尤物av尤物在线看| 91久久国产成人免费观看| av大片在线无码免费| 亚洲天堂在线免费| 99热国产这里只有精品无卡顿"| www.亚洲天堂| 波多野结衣无码AV在线| 制服丝袜一区二区三区在线| 亚洲精品欧美日韩在线| WWW丫丫国产成人精品| 国产亚洲欧美在线人成aaaa | 久久综合婷婷| 欧美午夜网| 精品伊人久久久香线蕉| 丁香五月婷婷激情基地| 一区二区自拍| 国产成人亚洲精品色欲AV| 国产成人高精品免费视频| 亚洲天堂日本| 中文字幕精品一区二区三区视频| 国产青榴视频| 尤物在线观看乱码| 毛片三级在线观看| 韩日午夜在线资源一区二区| 国产精品第页| 亚洲区欧美区| 日韩欧美国产中文| 久久久噜噜噜| 亚洲激情99| 欧美激情视频一区| 亚洲熟女偷拍| 欧美精品亚洲精品日韩专区va| 中国毛片网| 久久久久久国产精品mv| 波多野结衣无码AV在线| 久久中文无码精品| 国产经典在线观看一区| 久久伊人操| 亚洲天堂网2014| 99热最新网址| 婷婷成人综合| 国产无人区一区二区三区| h视频在线播放| 国产毛片基地| 在线网站18禁| 久久婷婷五月综合97色| 久久综合结合久久狠狠狠97色 | 亚洲精品爱草草视频在线| 国产免费久久精品99re丫丫一| 久久99精品久久久大学生| 99久久精品国产综合婷婷| 污网站免费在线观看| 色久综合在线| 97视频在线观看免费视频| 人妻无码AⅤ中文字| 日韩精品无码免费一区二区三区| 一级福利视频| 亚洲综合亚洲国产尤物| 亚洲另类国产欧美一区二区| 日韩欧美一区在线观看| 一本一本大道香蕉久在线播放| 国产日本欧美亚洲精品视| 青草午夜精品视频在线观看| 国产嫩草在线观看| 国产成人1024精品| AV熟女乱| 色一情一乱一伦一区二区三区小说| AV不卡国产在线观看| 久久伊人操| 九九免费观看全部免费视频| 99免费视频观看| 国产AV无码专区亚洲精品网站| 亚洲精品国产乱码不卡| 亚洲v日韩v欧美在线观看| 亚洲天堂网2014| 国产91九色在线播放| 人妻无码中文字幕第一区| 亚洲日本韩在线观看| 国产正在播放|