亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        SpringMVC框架技術(shù)在無線答題系統(tǒng)中的應(yīng)用

        2017-09-27 15:33:16陳騫黃辰
        物聯(lián)網(wǎng)技術(shù) 2017年9期
        關(guān)鍵詞:串口通信

        陳騫 黃辰

        摘 要:文中設(shè)計(jì)了一款軟硬件結(jié)合的無線答題系統(tǒng),軟件部分為基于SpringMVC實(shí)現(xiàn)的Web系統(tǒng),硬件包含接收器,電子答題器等。硬件通過串口與PC上的Web系統(tǒng)通信,實(shí)現(xiàn)所需要的系統(tǒng)功能。

        關(guān)鍵詞:SpringMVC;答題系統(tǒng);串口通信;Web

        中圖分類號:TP311 文獻(xiàn)標(biāo)識碼:A 文章編號:2095-1302(2017)09-0-03

        0 引 言

        隨著網(wǎng)絡(luò)和多媒體技術(shù)發(fā)展逐漸完善,多媒體授課,網(wǎng)絡(luò)授課在學(xué)生的課堂中扮演著越來越重要的角色。分析了目前學(xué)校課堂的信息化程度后發(fā)現(xiàn),如果有一種無線答題系統(tǒng)能夠方便老師課堂上通過題庫選擇題目,學(xué)生當(dāng)場通過設(shè)備作答,可以大大提高教師和學(xué)生之間的溝通互動,使得該系統(tǒng)擁有廣闊的市場前景[1]。

        本文根據(jù)此背景,設(shè)計(jì)了一種可進(jìn)行課堂教學(xué)評價(jià)和師生無線答題的系統(tǒng),該系統(tǒng)將學(xué)生的答題器連接到接收機(jī)和計(jì)算機(jī)軟件,由老師控制軟件實(shí)現(xiàn)互動。

        1 系統(tǒng)功能設(shè)計(jì)

        本系統(tǒng)具有題目、人員信息導(dǎo)入,硬件配置,選擇題作答,答題結(jié)果統(tǒng)計(jì)等功能。題目類型分為單選、多選,支持同一題目多次作答,系統(tǒng)會記錄每次作答的結(jié)果,同時(shí)還可實(shí)現(xiàn)統(tǒng)計(jì)所有題目的作答情況。

        教師通過系統(tǒng)出多道選擇題(包括單選和多選),軟件后臺通過接收器下發(fā)作答指令,學(xué)生作答后提交答案,接收器將學(xué)生的作答答案及提交時(shí)間上傳到后臺,由后臺軟件進(jìn)行數(shù)據(jù)處理,可統(tǒng)計(jì)出提交答案人數(shù)、正確人數(shù)、錯誤人數(shù)和正確率等。

        2 系統(tǒng)總體架構(gòu)

        本系統(tǒng)涉及的硬件包含接收器,答題器,服務(wù)器。服務(wù)器充當(dāng)答題器上位機(jī)和軟件系統(tǒng)的角色,軟件部分為基于Java Web技術(shù)實(shí)現(xiàn)的Web系統(tǒng),電子答題器通過2.4 G網(wǎng)絡(luò)與接收器通信,數(shù)據(jù)通過接收器透傳給服務(wù)器,其擁有17個(gè)物理按鍵和1個(gè)人機(jī)交互顯示屏,采用2.4 G免費(fèi)頻段通信,支持遠(yuǎn)距離考勤最大距離為50 m,支持多終端同時(shí)并發(fā)120個(gè)數(shù)。接收器通過USB與多媒體計(jì)算機(jī)連接,主要收集答題器的數(shù)據(jù),匯總后發(fā)送給中間件,同時(shí)將上層的配置指令等發(fā)送給下層答題器。系統(tǒng)邏輯圖如圖1所示。

        圖1 系統(tǒng)邏輯圖

        本系統(tǒng)軟件部分在SpringMVC框架的基礎(chǔ)上進(jìn)行開發(fā),SpringMVC是目前Java Web體系中非常流行的MVC框架,軟件系統(tǒng)包含View層、Pipe層、Logic層、Data層,其中View層包含了Web端,是“前端”的一部分,實(shí)現(xiàn)了用戶可觀看的軟件或網(wǎng)站界面;其他三層均為“服務(wù)端”部分,具有向前端傳遞數(shù)據(jù),提供HTTP接口,處理業(yè)務(wù)邏輯等功能[2]。本系統(tǒng)軟件體系結(jié)構(gòu)如圖2所示。

        圖2 軟件體系結(jié)構(gòu)圖

        (1)View層負(fù)責(zé)實(shí)現(xiàn)網(wǎng)站或軟件頁面展示與前端簡單邏輯展示。

        (2)Pipe層負(fù)責(zé)處理數(shù)據(jù)請求的發(fā)送,規(guī)定了所有端口基于何種協(xié)議與服務(wù)器進(jìn)行交互,以及數(shù)據(jù)類型的規(guī)范,對請求進(jìn)行安全驗(yàn)證。

        (3)Logic層進(jìn)行整個(gè)程序業(yè)務(wù)邏輯請求的處理,將處理結(jié)果通過HTTP接口的形式使用戶可通過URL地址調(diào)用。Logic層在SpringMVC框架中在具體實(shí)現(xiàn)時(shí)包括Controller層和Service層。

        (4)Data層包括訪問數(shù)據(jù)庫或其他數(shù)據(jù)源等,具體有對數(shù)據(jù)庫中表的查詢、修改、刪除等功能,供Service層調(diào)用。Data層在MyBatis框架中的實(shí)現(xiàn)包括Mapper層和POJO層[3]。

        本系統(tǒng)選擇JSON數(shù)據(jù)格式+HTTP協(xié)議作為系統(tǒng)前端后臺的接口方案。在具體實(shí)現(xiàn)過程中,利用Jackson框架將后臺Java對象轉(zhuǎn)換成JSON對象。在Controller層接口返回Response,經(jīng)springMVC的@ResponseBody注解封裝,通過Jackson轉(zhuǎn)換成JSON字符串,服務(wù)器再利用HTTP協(xié)議返回給前端AJAX接口調(diào)用者。

        3 題目作答模塊設(shè)計(jì)

        題目作答模塊實(shí)現(xiàn)了學(xué)生通過答題器向系統(tǒng)發(fā)送數(shù)據(jù),頁面實(shí)時(shí)展示,后臺存儲相關(guān)數(shù)據(jù)等功能。

        為實(shí)現(xiàn)上述功能,該模塊的Controller層需向View層提供的HTTP接口如圖3所示。View層需要向Controller層發(fā)送所有請求序列,完成該題目的一次答題活動。

        3.1 視圖層實(shí)現(xiàn)

        作答需點(diǎn)擊“開始”,通過調(diào)用開始答題、開始發(fā)送題目、開始接受數(shù)據(jù)HTTP接口與電子答題器進(jìn)行交互,循環(huán)調(diào)用刷新HTTP接口以展示當(dāng)前投票情況,結(jié)束時(shí),調(diào)用停止接收數(shù)據(jù)、結(jié)束答題HTTP接口結(jié)束與答題器的交互。

        3.2 邏輯層實(shí)現(xiàn)

        HTTP接口實(shí)現(xiàn)方法可封裝在ChoiceQuestionController類中,開始答題接口首先獲得最新的答題次數(shù),并添加新的答題記錄,開啟答題的硬件指令,接收答題器數(shù)據(jù)。

        實(shí)時(shí)答題數(shù)據(jù)接口方法負(fù)責(zé)開始答題后,動態(tài)刷新答題率、答題人數(shù)等數(shù)據(jù)。此接口由前端自動循環(huán)調(diào)用100 ms刷新間隔,因此邏輯必須精煉,且運(yùn)行時(shí)長越短越好,數(shù)據(jù)庫操作應(yīng)去除查詢?nèi)哂嘧侄?,獲取總?cè)藬?shù)及當(dāng)前已作答人數(shù),并計(jì)算百分比,以圖形形式返回展示。

        答題結(jié)束的接口方法計(jì)算結(jié)束作答后的統(tǒng)計(jì)數(shù)據(jù)并作持久化處理。作答結(jié)束后,更新本次作答記錄,將結(jié)束時(shí)間添加進(jìn)去,作為一條完整作答記錄存儲。所有答案在串口線程運(yùn)行時(shí)已寫入Answer表,通過Service層方法得到相關(guān)數(shù)據(jù),進(jìn)行統(tǒng)計(jì)計(jì)算并進(jìn)行持久化處理。

        4 串口通信模塊設(shè)計(jì)

        為了實(shí)現(xiàn)Java與串口硬件通信,本文采用RXTX項(xiàng)目提供的Java串口通信包API。在此系統(tǒng)中,通信內(nèi)容包括服務(wù)端下發(fā)給接收機(jī)的指令和答題器通過接收機(jī)透傳給服務(wù)端的數(shù)據(jù),可以設(shè)計(jì)一個(gè)SerialPortDataController類來處理相關(guān)通信內(nèi)容。endprint

        下發(fā)指令部分,設(shè)計(jì)一個(gè)SendCommand方法來處理諸如答題器匹配,白名單開啟,清屏,發(fā)送開始答題指令等。將指令數(shù)據(jù)通過COM參數(shù)設(shè)置的端口號,以指定的波特率發(fā)送。具體程序流程如圖4所示。

        接收答題器數(shù)據(jù)的部分,由于該過程是持續(xù)性的工作,不同于一次性的指令,所以需設(shè)計(jì)一個(gè)線程類SerialThread,采用多線程運(yùn)行。

        (1)開啟串口,打開輸入流,循環(huán)檢查輸入流中的數(shù)據(jù),并進(jìn)行讀取、緩存。

        (2)根據(jù)線程調(diào)用相關(guān)信息,確定報(bào)文類型(選擇,判斷),利用checksum函數(shù)對數(shù)據(jù)進(jìn)行異或差錯校驗(yàn),再分別選擇協(xié)議解析,將解析出來的數(shù)據(jù)轉(zhuǎn)換成對象,然后進(jìn)行數(shù)據(jù)持久化處理。

        作答數(shù)據(jù)解析流程如圖5所示。

        5 系統(tǒng)測試

        圖6展示了當(dāng)前正在作答的人數(shù)以及所占總?cè)藬?shù)的百分比,且隨時(shí)可結(jié)束作答。

        點(diǎn)擊“停止”后,顯示答題結(jié)果,預(yù)期只有一個(gè)人正確,兩人錯誤,一人未作答,統(tǒng)計(jì)結(jié)果如圖7所示,與預(yù)期相符。

        6 結(jié) 語

        本文主要介紹了SpringMVC框架技術(shù)在無線答題系統(tǒng)中的應(yīng)用,圍繞核心題目作答功能模塊闡述了HTTP接口設(shè)計(jì)、視圖層、邏輯層設(shè)計(jì)與關(guān)鍵通信技術(shù)。設(shè)計(jì)的系統(tǒng)滿足了預(yù)期的功能需求,系統(tǒng)能促進(jìn)教學(xué)過程中教師學(xué)生的互動,使得老師對學(xué)生的成績管理數(shù)據(jù)歸檔有據(jù)可依,充分體現(xiàn)了當(dāng)代課程改革的理念。

        參考文獻(xiàn)

        [1]李強(qiáng).基于nRF24le1及uC/OS-II操作系統(tǒng)的智能無線答題系統(tǒng)的設(shè)計(jì)[D].長春:吉林大學(xué),2016.

        [2]韓森,鄧停東,張占強(qiáng).SpringMVC+Hibernate框架的應(yīng)用研究[J].軟件導(dǎo)刊,2009(6):44-45.

        [3]吳婉楠.基于SpringMVC和MyBatis框架的炒股比賽系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].南京:南京大學(xué),2016.

        [4]溫小清,潘永才,劉海龍,等.基于SSH2的電子監(jiān)管平臺的設(shè)計(jì)與實(shí)現(xiàn)[J].物聯(lián)網(wǎng)技術(shù),2015,5(1):64-66.

        [5]Linux下ARM和CC2530的串口通信[J].物聯(lián)網(wǎng)技術(shù),2016,6(1):34-36.

        [6]翟高粵,魏娜.一種基于MVC框架的校園管理系統(tǒng)的設(shè)計(jì)[J].計(jì)算機(jī)時(shí)代,2010(8):40-42.

        [7]于慧勇,樊丹丹.WebService技術(shù)在數(shù)據(jù)共享中的應(yīng)用研究[J].電腦編程技巧與維護(hù),2016(24):53-54.

        [8]張籍.使用答題器組織有效課堂教學(xué)[J].學(xué)園:學(xué)者的精神家園,2014(18):99-100.endprint

        猜你喜歡
        串口通信
        基于Android的電解質(zhì)分析儀設(shè)計(jì)與實(shí)現(xiàn)
        基于Qt和Flash的嵌入式Linux軟件架構(gòu)設(shè)計(jì)
        串口通信在智能家居監(jiān)控系統(tǒng)中的應(yīng)用
        基于Python實(shí)現(xiàn)設(shè)備控制臺的集中控制和管理
        基于OpenCV的室內(nèi)照明智能控制系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
        科技視界(2016年13期)2016-06-13 22:01:19
        基于Qt5的MODBUS協(xié)議編程與實(shí)現(xiàn)
        基于MSP430單片機(jī)的窄帶無線數(shù)據(jù)傳輸模塊的設(shè)計(jì)
        便攜式數(shù)傳電臺測試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
        基于MFC的AUV多傳感器數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)及測試
        基于LabVIEW的溫度測量系統(tǒng)設(shè)計(jì)
        精品少妇大屁股白浆无码| 不卡日韩av在线播放| 欧美xxxxx在线观看| 国产精品一区二区在线观看| 永久免费无码av在线网站 | 娇妻粗大高潮白浆| 视频一区中文字幕在线观看| 日韩亚洲一区二区三区四区| 国产老熟女网站| 久久免费的精品国产v∧| 一区二区三区福利在线视频| 少妇又紧又色又爽又刺| 亚洲综合精品伊人久久| 寂寞少妇做spa按摩无码| 国产在线观看www污污污| 久久精品国产亚洲综合色| 97自拍视频国产在线观看| 99久久国内精品成人免费| 久久亚洲色一区二区三区| 成年无码av片完整版| 亚洲综合伦理| 色噜噜色哟哟一区二区三区| 欲女在线一区二区三区| 日本一本一道久久香蕉男人的天堂 | 亚洲av无码不卡| 2021亚洲色中文字幕| 风间由美中文字幕在线| 丰满人妻久久中文字幕| 久久亚洲私人国产精品va| 亚洲日韩中文字幕一区| 国产女奸网站在线观看| 久久久亚洲欧洲日产国码是AV| 中文字幕人妻一区二区二区| 亚洲youwu永久无码精品| 国产七十六+老熟妇| 天堂√中文在线bt| Jizz国产一区二区| 免费在线视频亚洲色图| 人妻仑乱a级毛片免费看| 色婷婷五月综合亚洲小说| 国产一区二区三区av免费观看|