• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于Web的在線學(xué)習(xí)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

    2013-04-29 00:39:13陳偉宏張龍王璐
    計(jì)算機(jī)時(shí)代 2013年9期

    陳偉宏 張龍 王璐

    摘 要: 針對(duì)傳統(tǒng)教學(xué)中學(xué)生學(xué)習(xí)、交流受時(shí)間地點(diǎn)限制的問題,設(shè)計(jì)和實(shí)現(xiàn)了一個(gè)基于Web的在線學(xué)習(xí)系統(tǒng)。該系統(tǒng)基于B/S模式、采用Struts2框架、使用Java語言和SQL SERVER 2005數(shù)據(jù)庫(kù)實(shí)現(xiàn)。該系統(tǒng)的特色在于后臺(tái)管理可遠(yuǎn)程添加課程和課程資源,前臺(tái)除顯示課程資源外,還有在線視頻播放、在線交流和學(xué)習(xí)論壇等。該系統(tǒng)可彌補(bǔ)傳統(tǒng)教學(xué)中的不足,在學(xué)生自主學(xué)習(xí)中發(fā)揮重要作用。

    關(guān)鍵詞: 在線學(xué)習(xí)系統(tǒng); Struts2; Java; SQL Server

    中圖分類號(hào):TP311 文獻(xiàn)標(biāo)志碼:A 文章編號(hào):1006-8228(2013)09-22-03

    0 引言

    隨著網(wǎng)絡(luò)信息技術(shù)的快速發(fā)展及其在教育中應(yīng)用的不斷深入,傳統(tǒng)的教學(xué)模式、教學(xué)方法、教學(xué)內(nèi)容、教學(xué)手段都產(chǎn)生了深刻的變革,教學(xué)過程從“以教為中心”走向“以學(xué)為中心”,逐步形成了以學(xué)習(xí)者為中心的在線學(xué)習(xí)模式,這種學(xué)習(xí)模式已經(jīng)成為現(xiàn)代教育的重要方式和發(fā)展方向[1]。傳統(tǒng)的教學(xué)方式需要師生在物理空間上面對(duì)面,教與學(xué)受空間和時(shí)間的限制,而基于Web的在線學(xué)習(xí)以擁有豐富的網(wǎng)絡(luò)資源、不受時(shí)空限制等優(yōu)勢(shì),拓展了傳統(tǒng)校園的界限,創(chuàng)造出更廣闊的多元化學(xué)習(xí)環(huán)境,讓學(xué)習(xí)無處不在、無時(shí)不可,因而在線學(xué)習(xí)系統(tǒng)應(yīng)運(yùn)而生。

    目前,國(guó)內(nèi)外建設(shè)了許多精品課程網(wǎng)站,特別是西方發(fā)達(dá)國(guó)家政府大力鼓勵(lì)發(fā)展精品課程網(wǎng)站,這些網(wǎng)站提供了豐富的教育資源[2]。課程網(wǎng)站的開發(fā)技術(shù)由以前的Basic、Visual Basic等語言,發(fā)展到現(xiàn)在的JSP、ASP技術(shù)訪問SQL Server、Sybase或Oracle數(shù)據(jù)庫(kù)[3-4]。從開發(fā)語言上,JSP比之前的開發(fā)語言有更高的效率和安全性,組件方式更方便,適應(yīng)平臺(tái)更廣;與Structs2框架相結(jié)合后,易于擴(kuò)展業(yè)務(wù)和后期維護(hù),能得到更高的效率[5-6]。本文基于B/S模式、采用Struts框架設(shè)計(jì)和實(shí)現(xiàn)了一個(gè)在線學(xué)習(xí)系統(tǒng),系統(tǒng)前臺(tái)顯示使用JSP在瀏覽器上實(shí)現(xiàn),業(yè)務(wù)邏輯使用JavaBean組件實(shí)現(xiàn),后臺(tái)數(shù)據(jù)庫(kù)使用SQL Server 2005。該系統(tǒng)以培養(yǎng)學(xué)生自主學(xué)習(xí)能力為特色,通過在線交流能及時(shí)反饋學(xué)生的學(xué)習(xí)效果,通過論壇能充分展現(xiàn)學(xué)生的個(gè)性化學(xué)習(xí),積極促進(jìn)現(xiàn)代教育教學(xué)質(zhì)量的提高。

    1 系統(tǒng)分析與設(shè)計(jì)

    1.1 系統(tǒng)總體功能

    在線學(xué)習(xí)系統(tǒng)功能包括前臺(tái)顯示和后臺(tái)管理兩大模塊。前臺(tái)模塊有用戶注冊(cè)與登錄、課程資源顯示、資源下載、在線交流和論壇等功能,課程資源顯示頁面包括課程簡(jiǎn)介、教師團(tuán)隊(duì)、教學(xué)方法、教學(xué)內(nèi)容、教學(xué)效果等課程介紹,還提供pdf文檔預(yù)覽、視頻在線播放、文件下載等功能。論壇模塊根據(jù)計(jì)算機(jī)涉及到的各類技術(shù)設(shè)計(jì)了分版塊發(fā)帖和回帖,以及資源的上傳和下載。后臺(tái)模塊包括用戶管理、課程資源管理和論壇資源管理。未注冊(cè)用戶只能瀏覽頁面信息;已登錄的普通用戶可以下載和評(píng)論課程資源,在論壇中可以發(fā)帖、回貼,下載和上傳資源;管理員除擁有普通用戶全部功能外,還能對(duì)整個(gè)網(wǎng)站進(jìn)行管理。管理員可以對(duì)已上傳課件進(jìn)行修改、刪除,發(fā)布新課程,添加或刪除課程資源;對(duì)論壇模塊的資源,可以刪除非法帖和評(píng)論以及修改貼子類型,刪除非法資源,可以刪除用戶或重置用戶密碼等。

    1.2 數(shù)據(jù)庫(kù)設(shè)計(jì)

    數(shù)據(jù)庫(kù)在信息管理系統(tǒng)中占有非常重要的地位,合理的數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)不僅可以較好地實(shí)現(xiàn)業(yè)務(wù)流程,同時(shí)也可以提高數(shù)據(jù)存儲(chǔ)的效率,保證數(shù)據(jù)的完整性和一致性。數(shù)據(jù)庫(kù)設(shè)計(jì)根據(jù)邏輯分析系統(tǒng)的所需功能劃分模塊,包括所需表的建立、分析各表之間的聯(lián)系、整個(gè)數(shù)據(jù)庫(kù)的確定和建立。該系統(tǒng)數(shù)據(jù)庫(kù)使用SQL Server 2005,采用JDBC技術(shù)連接,設(shè)計(jì)了10個(gè)數(shù)據(jù)表,包括用戶信息表(dbo.T_User)、資源類型表(dbo.t_source_collect)、課程資源表(dbo.t_sourse)等。由于一個(gè)帖子可包含多個(gè)附件和多個(gè)回復(fù)信息,帖子類型惟一,一個(gè)用戶可發(fā)表多個(gè)帖子,因此,帖子信息表與帖子類型表是一對(duì)一的關(guān)系,與用戶信息表是一對(duì)多的關(guān)系,與帖子回復(fù)表、帖子附件表是一對(duì)多的關(guān)系。一門課程可包含多個(gè)課程資源和多條評(píng)論,其中資源類型惟一,一個(gè)管理員可發(fā)表多個(gè)課程,課程信息表與課程資源表和課程評(píng)論表是一對(duì)多的關(guān)系,與管理員信息表是一對(duì)多的關(guān)系,課程資源表與資源類型表是一對(duì)一關(guān)系。系統(tǒng)的數(shù)據(jù)庫(kù)模型如圖1所示。

    2 系統(tǒng)關(guān)鍵技術(shù)及實(shí)現(xiàn)

    系統(tǒng)采用MyEclipse可視化設(shè)計(jì)工具和Struts2框架實(shí)現(xiàn)。設(shè)計(jì)過程中,使用JSP頁面充當(dāng)View層,Action充當(dāng)Controller層,JavaBean充當(dāng)Model層,DAO層用JDBC編程實(shí)現(xiàn),數(shù)據(jù)庫(kù)采用純Java連接方式連接SQL Server 2005。開發(fā)系統(tǒng)時(shí),由JS、Html或Ajax技術(shù)將客戶端的請(qǐng)求發(fā)送至Web服務(wù)器,由Action接收請(qǐng)求并將處理結(jié)果返回至客戶端;采用Java編寫程序,實(shí)現(xiàn)對(duì)在線學(xué)習(xí)系統(tǒng)中各個(gè)功能模塊內(nèi)容的增、刪、改、查等功能。

    2.1 數(shù)據(jù)庫(kù)的連接

    系統(tǒng)創(chuàng)建了一個(gè)數(shù)據(jù)庫(kù)連接SQL工具類,在類中實(shí)現(xiàn)建立數(shù)據(jù)庫(kù)連接、執(zhí)行數(shù)據(jù)庫(kù)操作、得到執(zhí)行數(shù)據(jù)庫(kù)操作返回的結(jié)果集、關(guān)閉數(shù)據(jù)庫(kù)等常用方法,方便其他類調(diào)用。

    ⑴ 建立數(shù)據(jù)庫(kù)連接的關(guān)鍵代碼

    public SQL() throws Exception {

    try{ Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");

    con=DriverManager.getConnection(

    "jdbc:sqlserver://localhost:1433;databaseName=db_BBS",

    "javaUser","123456");

    } catch (Exception e) {throw e;}}

    ⑵ 得到執(zhí)行數(shù)據(jù)庫(kù)操作返回的結(jié)果集

    public ResultSet getRs() {

    try { return ps.getResultSet();

    } catch(SQLException e) { System.out.println("獲取結(jié)果集失敗");

    e.printStackTrace(); }

    return null; }

    2.2 Ajax技術(shù)的使用

    Ajax的核心是JavaScript對(duì)象XmlHttpRequest,支持異步請(qǐng)求,使用JavaScript向服務(wù)器提出請(qǐng)求并處理響應(yīng),不阻塞用戶。系統(tǒng)中客戶端向服務(wù)器通過Ajax發(fā)送請(qǐng)求,其關(guān)鍵代碼如下:

    $(function() {

    $(".type").each(function() {

    var type=$(this).text();

    if(type=="pdf"||type=="PDF"||type=="flv"||type=="swf") {

    var temp=$(this).parent().parent().children().eq(4)

    .children(".view").attr("disabled",false);

    } else {

    $(this).parent().parent().children().eq(4).children(".view").attr("disabled","disabled");

    }

    });

    $(".download").click(function() {

    var name=$(this).attr("name");

    var path=$(this).attr("path");

    var url="study/download";

    window.open(url+"?name="+name+"&path="+path, "_blank");

    });

    $(".view").click(function() {

    var path=$(this).attr("path");

    var url1="study/view.jsp";

    var url2="study/view2.jsp";

    var type=$(this).parent().parent().children().eq(2)

    .children("font").text();

    if(type=="pdf"||type=="PDF") {

    window.open(url1+"?path="+path, "_blank");

    } else {

    window.open(url2+"?path="+path, "_blank"); }

    });

    });

    2.3 Struts2框架的實(shí)施

    Struts2是一個(gè)功能強(qiáng)大的Java Web開源框架,是一個(gè)基于Action的MVC框架。在系統(tǒng)中,Struts2的實(shí)施包括Action類的實(shí)施、映射關(guān)系的配置、前臺(tái)頁面動(dòng)態(tài)數(shù)據(jù)顯示實(shí)施三個(gè)方面。

    ⑴ Action類的實(shí)施。Strust2的Action類只需要實(shí)現(xiàn)Action或ActionSupport接口,甚至可以使用有execute()方法的POJO。在execute()方法中可以直接處理前端提交的信息,并對(duì)數(shù)據(jù)庫(kù)做相應(yīng)的增、刪、改、查操作。

    ⑵ 映射關(guān)系的配置。在struts.xml文件中對(duì)Action進(jìn)行配置,控制Action請(qǐng)求到Action類的映射,以及Action類到j(luò)sp頁面的映射關(guān)系。

    ⑶ 前臺(tái)頁面動(dòng)態(tài)數(shù)據(jù)顯示的實(shí)施。通過EL表達(dá)式或struts2提供的OGNL表達(dá)式,可以將后臺(tái)從數(shù)據(jù)庫(kù)獲取到的數(shù)據(jù)在前顯示出來,尤其是大批量的數(shù)據(jù)顯示,strust2的標(biāo)簽庫(kù)中提供了迭代標(biāo)簽,可以對(duì)集合數(shù)據(jù)進(jìn)行迭代。

    系統(tǒng)中的配置如下:

    value="20000000">

    extends="struts-default">

    <!-- 用戶注冊(cè) -->

    login.jsp

    regist.jsp

    <!-- 用戶登錄 -->

    study/index.action

    login.jsp

    2.4 論壇管理

    論壇管理包括發(fā)帖類型管理和版塊管理,可對(duì)版塊中的發(fā)帖進(jìn)行刪除等處理,具體效果如圖2所示。

    3 結(jié)束語

    本文設(shè)計(jì)和實(shí)現(xiàn)了一個(gè)基于Web的在線學(xué)習(xí)系統(tǒng),該系統(tǒng)采用三層B/S模式,可在后臺(tái)遠(yuǎn)程添加課程名稱和課程資源,操作簡(jiǎn)捷方便;前臺(tái)提供課程顯示、在線視頻播放、在線交流和論壇功能,能在學(xué)生自主學(xué)習(xí)的同時(shí)與教師進(jìn)行互動(dòng),及時(shí)反饋學(xué)習(xí)效果。通過在線學(xué)習(xí)系統(tǒng)的使用,不僅可彌補(bǔ)學(xué)生公共計(jì)算機(jī)水平參差不齊的狀況,還能強(qiáng)化學(xué)生的個(gè)性化學(xué)習(xí),從而促進(jìn)教學(xué)質(zhì)量的提高,為培養(yǎng)自主學(xué)習(xí)型、創(chuàng)新型人才起到重要作用。

    參考文獻(xiàn):

    [1] 郭小雪.基于JSP/Servlet的三層式網(wǎng)上書店的研究與實(shí)現(xiàn)[D].吉林大學(xué),2006.

    [2] 王國(guó)棟,楊樹勛,劉殿文等.JSP在網(wǎng)上書店中的應(yīng)用[J].青島科技大學(xué)學(xué)報(bào)(自然科學(xué)版),2003.3(24):264-266

    [3] 劉志海.C語言在線學(xué)習(xí)系統(tǒng)設(shè)計(jì)和實(shí)現(xiàn)[J].計(jì)算機(jī)與數(shù)字工程,2011.6:177-180

    [4] 王俊偉,史創(chuàng)明編著.SQL Server 2000 數(shù)據(jù)庫(kù)管理與應(yīng)用[M].清華大學(xué)出版社,2006.

    [5] 劉欣怡.軟件工程[M].清華大學(xué)出版社,2007.

    [6] 陳軼,姚曉昆編著.Java程序設(shè)計(jì)實(shí)驗(yàn)指導(dǎo)[M].清華大學(xué)出版社,2006.

    谢通门县| 乐陵市| 平湖市| 临沂市| 弥渡县| 沙坪坝区| 通化县| 博乐市| 合江县| 合肥市| 四川省| 博白县| 中宁县| 吴桥县| 临江市| 岳普湖县| 威远县| 寿光市| 治县。| 东港市| 布尔津县| 子洲县| 郎溪县| 舟曲县| 蒲城县| 子洲县| 睢宁县| 冕宁县| 滨州市| 雷波县| 福清市| 扎囊县| 永泰县| 偃师市| 张家港市| 安西县| 仙游县| 罗甸县| 陈巴尔虎旗| 棋牌| 阳谷县|