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

Java web應用開發(fā)課程中MVC編程模式教學過程剖析

2018-05-14 13:52:18林萍
關鍵詞:數(shù)據(jù)庫課程教學

林萍

[摘 要] 針對Java web應用開發(fā)課程中MVC編程模式的教學難度大、學生掌握不好的教學實際,分析了教學過程中存在的困難和學生容易失去信心和興趣的環(huán)節(jié),提出一步一步深入講解,每個環(huán)節(jié)提出問題并解決,從而達到學生輕松掌握本知識點的目的,為后續(xù)課程做好充分準備。

[關 鍵 詞] Java web;jsp;MVC;servlet

[中圖分類號] G712 [文獻標志碼] A [文章編號] 2096-0603(2018)17-0039-03

Java web應用開發(fā)課程是一門綜合性非常強的專業(yè)核心課程,它的前導課程包括Java面向對象程序設計、網(wǎng)頁設計、數(shù)據(jù)庫基礎、客戶端編程等一系列的專業(yè)基礎課,所以學生在學習本門課程的時候,都會覺得非常吃力并且掌握不好,尤其是對MVC三層模式的理解非常困難。在Java web應用開發(fā)課程教學中將這些基本概念講清楚、講透徹是提高課堂教學質量的關鍵。通過多年教學實踐,筆者對這些難點、要點進行了研究探討[1]。

本門課程以mysql作為后端數(shù)據(jù)庫、前端采用jsp+servlet+javabean的MVC模式來講解開發(fā)一個學生信息管理系統(tǒng)。首先通過Java連接mysql數(shù)據(jù)庫、然后jsp顯示數(shù)據(jù),進而引出廣泛使用的MVC編程模式,一步步由淺入深地講解整個大型網(wǎng)站的開發(fā)過程,并且采用教學做一體化的教學模式,是學生在學中做,做中學,輕松掌握核心的專業(yè)知識,為后續(xù)的利用框架進行大型網(wǎng)站開發(fā)課程打下堅實的基礎。

一、數(shù)據(jù)庫準備

Mysql數(shù)據(jù)庫是一種開放源代碼的關系型數(shù)據(jù)庫管理系統(tǒng)(RDBMS),它是Oracle公司提供的一種開源數(shù)據(jù)庫,由于其小巧、快速而備受關注,如今很多大型網(wǎng)站,如淘寶網(wǎng)已經全面采用mysql數(shù)據(jù)庫進行數(shù)據(jù)的存儲,所以其應用前景非常好,Java也是oracle公司的產品,可以做到和mysql無縫連接,所以在學習本門課程的時候,優(yōu)選mysql作為后端開發(fā)數(shù)據(jù)庫。

首先采用學生熟悉的學生信息管理作為開發(fā)背景,設計出兩張簡易的學生信息表:

設計出表之后,再增加幾行數(shù)據(jù),這時增加授課班級的信息,會讓同學們熟悉并更好理解需求,以某次上課班級信息數(shù)據(jù)如圖1和圖2所示:

二、引入Java連接數(shù)據(jù)庫并顯示數(shù)據(jù)

Java連接mysql數(shù)據(jù)庫,首先需要下載mysql的jdbc包,此包由數(shù)據(jù)庫廠商免費提供。Java連接數(shù)據(jù)庫包括以下四個步驟[2]:

(一)在Java程序中加載驅動程序

Class.forName("驅動名稱");

(二)創(chuàng)建數(shù)據(jù)連接對象

Connection conn= DriverManager.getConnection("連接數(shù)據(jù)庫的URL","用戶名","密碼");

(三)創(chuàng)建Statement對象

Statement stat =conn.createStatement();

(四)調用Statement對象的相關方法執(zhí)行相對應的SQL語句

ResultSet rs = stat.executeQuery("select * from student");

然后才可以對rs中被訪問出的數(shù)據(jù)對象進行操作。

其中驅動名稱和連接數(shù)據(jù)庫的url很難記憶,對學生來說記憶也非常痛苦,可以利用myeclipse開發(fā)環(huán)境的“myeclipse database explorer”來自動產生驅動名稱和url,如圖3所示,從而減少學生的記憶痛苦,提高學習興趣。

測試成功,帶領學生編寫以下代碼,并且在控制臺輸出學生信息:

//1.導入驅動

Class.forName("com.mysql.jdbc.Driver");

//2.獲取連接

Connection con = DriverManager.getConnection("jdbc: mysql://localhost:3306/jsp","root","root");

//3.產生語句對象

Statement st = con.createStatement();

//4.處理結果集

String sql = "select xuehao,name,score from student";

ResultSet rs = st.executeQuery(sql);

while(rs.next()){ System.out.println(rs.getString("xuehao")+"\t"+rs.getString("name")+"\t"+rs.getInt("score"));}

此段代碼一定要帶著學生運行成功并顯示數(shù)據(jù),為后續(xù)學習提供有力保證:

三、在jsp頁面中連接數(shù)據(jù)庫并顯示數(shù)據(jù)

將上面的Java代碼復制到jsp文件中,修改jsp的page指令,導入Java.sql包,把mysql的jdbc驅動包放入項目的lib文件夾下,修改必要的代碼,將學生信息顯示在ie中:

此部分操作相對簡單,只要理解了第二步的代碼書寫,學生都能在此步驟輕松地掌握。

四、將代碼分層jsp+javabean模式

將所有代碼都寫在jsp文件中,顯然不利于代碼重復利用,也不利于程序擴展,需要將代碼分層處理,jsp頁面只起到顯示作用,分層如下:

1.將連接數(shù)據(jù)庫單獨寫到一個DBUtil.java文件中,以備所有連接數(shù)據(jù)庫重復利用。

2.應用面向對象的思路,將數(shù)據(jù)庫表和Java類一一對應,從而實現(xiàn)面向對象編程。所以相應增加兩個pojo(Plain Ordinary Java Object)類,Student類和Banji類。

3.對每個表的增刪改查操作分別用對應的DAO(Data Access Object)類來實現(xiàn),如對student表的操作,編寫StudentDAO類來實現(xiàn)對student表的增刪改查結構化操作。如圖6所示:

在DAO類中的增刪改查操作,一定要測試成功后再進行下一步操作,否則學生很容易失去耐心和信心。而且要留下足夠的時間讓學生自己充分理解代碼并書寫實現(xiàn)功能,此處是重點也是難點,很多學生在此環(huán)節(jié)沒跟上就會失去學習的信心和動力。

五、引入servlet,MVC模式展現(xiàn)

上面的模式中,還會有一些不是顯示性質的代碼寫入jsp文件中,在實際開發(fā)過程中,jsp文件僅僅是用來顯示內容,而其他功能性的代碼都會放置在java文件中,因此,實際開發(fā)過程中,引入控制層(control)來控制代碼的流程走向,因此,引入servlet來達到控制代碼走向的目的,通常,我們采用每個種操作對應一個servlet,在servlet中調用DAO文件,并將結果以request或者session等傳遞出去。如圖7所示:

至此,帶領學生完成了整個jsp+serlvet+javabean的教學工作,每一個環(huán)節(jié)都讓學生充分理解為什么要這樣做,這樣做的目的和優(yōu)點,從而講清楚MVC模式的優(yōu)點,V(view)顯示層,主要指的jsp文件或者html文件,專門用于顯示,C(control)控制層,主要指的servlet文件,專門用于控制流程走向,負責V層和M層之間的調度安排。其他的java文件,包括pojo和DAO等都屬于M層,用于使用面向對象思路來對數(shù)據(jù)庫進行操作并且展示到頁面上。MVC不允許M和V直接交互,必須通過C層進行操作,從而使顯示層和模型層低耦合。

六、總結

Java web應用開發(fā)是一門綜合性很強的課程,其中的MVC模式編程是教學中的重點和難點,掌握這個模式為后續(xù)的課程和工作都會打下堅實的基礎,在講解完成后,還可以進一步提出將用戶的邏輯需求再分一層,叫邏輯層(business),簡寫為BIZ,對應的就會有StudentBIZ.java和BanjiBIZ.java分別用于處理用戶邏輯的類,這個在后續(xù)課程spring或者structs中會講到,如果能提前學習會有利于后續(xù)課程知識的掌握。

參考文獻:

[1]楊占勝,許作萍,張雪飛.JSP應用開發(fā)課程教學難點要點剖析[J].計算機教育,2015(20):96.

[2]牛德雄,陳華政,李彬,等.基于MVC的jsp軟件開發(fā)案例[M].北京:清華大學出版社,2014.

猜你喜歡
數(shù)據(jù)庫課程教學
數(shù)字圖像處理課程混合式教學改革與探索
微課讓高中數(shù)學教學更高效
甘肅教育(2020年14期)2020-09-11 07:57:50
軟件設計與開發(fā)實踐課程探索與實踐
計算機教育(2020年5期)2020-07-24 08:53:38
為什么要學習HAA課程?
“自我診斷表”在高中數(shù)學教學中的應用
東方教育(2017年19期)2017-12-05 15:14:48
數(shù)據(jù)庫
財經(2017年2期)2017-03-10 14:35:35
對外漢語教學中“想”和“要”的比較
唐山文學(2016年2期)2017-01-15 14:03:59
數(shù)據(jù)庫
財經(2016年15期)2016-06-03 07:38:02
數(shù)據(jù)庫
財經(2016年3期)2016-03-07 07:44:46
數(shù)據(jù)庫
財經(2016年6期)2016-02-24 07:41:51
主站蜘蛛池模板: 午夜欧美在线| 青青网在线国产| 毛片网站观看| 99成人在线观看| 色婷婷国产精品视频| 一区二区三区成人| 色九九视频| 欧美性猛交xxxx乱大交极品| 98精品全国免费观看视频| 欧美国产在线精品17p| 久热re国产手机在线观看| 欧美午夜在线播放| 伊人网址在线| 亚洲中文无码av永久伊人| 亚洲欧洲日韩综合| 亚洲国产欧美自拍| 成人精品午夜福利在线播放| 中文一级毛片| 国产免费人成视频网| 欧美日韩在线成人| 国产丝袜无码精品| 日本在线国产| 天堂在线亚洲| 亚洲第一视频区| 国产精品久久国产精麻豆99网站| AV无码一区二区三区四区| 99成人在线观看| 久久综合久久鬼| 美女被躁出白浆视频播放| 秘书高跟黑色丝袜国产91在线| 国产第八页| 人妻中文久热无码丝袜| 午夜少妇精品视频小电影| 日韩小视频在线观看| 最新日本中文字幕| 啪啪国产视频| 国产女人爽到高潮的免费视频| 国产成人高清在线精品| 91精选国产大片| 国产清纯在线一区二区WWW| 欧美色伊人| 中国特黄美女一级视频| 五月天丁香婷婷综合久久| 久久一色本道亚洲| 亚洲美女一级毛片| www.亚洲国产| 2048国产精品原创综合在线| 午夜日b视频| 999在线免费视频| 亚洲精品爱草草视频在线| 欧美在线精品怡红院| 精品99在线观看| 久久毛片网| 性69交片免费看| 亚洲国产精品VA在线看黑人| 亚洲福利网址| 永久成人无码激情视频免费| 成人在线视频一区| 亚洲天堂视频在线观看免费| 九九香蕉视频| 72种姿势欧美久久久大黄蕉| 欧美午夜在线播放| 91在线无码精品秘九色APP | 国产在线精品香蕉麻豆| 亚洲国产系列| 自慰高潮喷白浆在线观看| 日本影院一区| 国产黄在线观看| 国产无码精品在线| 国产探花在线视频| 欧美高清三区| 中文字幕欧美日韩高清| 99性视频| 尤物亚洲最大AV无码网站| 无码人中文字幕| 喷潮白浆直流在线播放| 久久精品国产电影| 黄色一及毛片| 最新精品久久精品| 99精品伊人久久久大香线蕉| 58av国产精品| 自拍欧美亚洲|