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
主站蜘蛛池模板: 国产欧美日韩资源在线观看| 欧美激情,国产精品| 国产在线自乱拍播放| 怡红院美国分院一区二区| 亚洲三级色| 特级欧美视频aaaaaa| 久久婷婷色综合老司机| 欧美精品亚洲精品日韩专区va| 亚洲欧洲日产国码无码av喷潮| 日韩欧美网址| 国产成人8x视频一区二区| 国产人碰人摸人爱免费视频| 精品夜恋影院亚洲欧洲| 日韩欧美网址| 亚洲无线观看| 国产精品自在自线免费观看| 久青草网站| 久久99国产精品成人欧美| 狠狠做深爱婷婷综合一区| 黄色成年视频| 一本一道波多野结衣一区二区| 亚洲婷婷在线视频| 91精品国产丝袜| 在线亚洲小视频| 国产精品香蕉在线观看不卡| 无码一区18禁| 午夜欧美在线| 黄色网站在线观看无码| 久草中文网| 亚洲国产成人自拍| 无码av免费不卡在线观看| 97se亚洲综合在线韩国专区福利| 996免费视频国产在线播放| 国产精品页| 无码内射在线| 亚洲AV永久无码精品古装片| 狠狠亚洲婷婷综合色香| 亚洲乱伦视频| 伊伊人成亚洲综合人网7777| 欧美一级黄色影院| 99精品福利视频| 成人免费网站久久久| 91娇喘视频| 在线免费不卡视频| 无码'专区第一页| 亚洲国产天堂在线观看| 九色在线观看视频| 亚洲人成影院午夜网站| 亚洲综合欧美在线一区在线播放| 亚洲人成影院午夜网站| 国产特一级毛片| 婷婷99视频精品全部在线观看| 亚洲第一视频免费在线| 在线播放精品一区二区啪视频| 久久久久久久久亚洲精品| 欧美综合成人| 91成人在线免费观看| 国产AV毛片| 香蕉网久久| av无码久久精品| 久久久久人妻一区精品色奶水| 欧美日韩国产系列在线观看| 毛片视频网址| 91探花国产综合在线精品| 一本视频精品中文字幕| 天堂成人在线| 日韩在线中文| 女人毛片a级大学毛片免费| 亚洲天堂久久久| 日韩欧美综合在线制服| 爱做久久久久久| 日韩无码黄色| 99久久精品视香蕉蕉| 欧美日韩一区二区在线免费观看 | 视频一区视频二区中文精品| 亚洲日本韩在线观看| 熟女成人国产精品视频| 国产浮力第一页永久地址 | 久久综合五月婷婷| 欧美在线综合视频| 日韩福利视频导航| 国产免费久久精品99re丫丫一|