• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于Android的畢業(yè)設(shè)計(jì)選題系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

      2018-05-15 08:31:14郁書(shū)好田志會(huì)朱成棋范祥林
      軟件導(dǎo)刊 2018年4期

      郁書(shū)好 田志會(huì) 朱成棋 范祥林

      摘 要:畢業(yè)設(shè)計(jì)是大學(xué)教學(xué)任務(wù)中最重要的實(shí)踐環(huán)節(jié),也是培養(yǎng)大學(xué)生綜合運(yùn)用大學(xué)知識(shí)解決實(shí)際問(wèn)題極為重要的過(guò)程?,F(xiàn)有畢業(yè)設(shè)計(jì)選題系統(tǒng)普遍通過(guò)B/S架構(gòu)設(shè)計(jì),存在機(jī)房人數(shù)受限、加載緩慢、效率低下等問(wèn)題。提出以Android App為客戶(hù)端,以Spring+SpringMVC+Hibernate作為后臺(tái)的框架方案,以Sql Server 2008數(shù)據(jù)庫(kù)實(shí)現(xiàn)持久化存儲(chǔ),設(shè)計(jì)了基于C/S的畢業(yè)設(shè)計(jì)選題系統(tǒng)。實(shí)際應(yīng)用表明,該系統(tǒng)具有較好的推廣應(yīng)用價(jià)值。

      關(guān)鍵詞:Android;RxJava;Retrofit;Spring;Hibernate;選題系統(tǒng)

      DOI:10.11907/rjdk.172390

      中圖分類(lèi)號(hào):TP319

      文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1672-7800(2018)004-0138-03

      Abstract:Graduation project is the most important link in college teaching practice. It is a very important process to train university students ability to solve the practical problems by using the knowledge they have learned.However,the existing systems are generally designed through the B/S architecture,which inevitably leads to slow loading and low efficiency.This article mainly introduced the Android App for the client, used Spring+SpringMVC+Hibernate as the framework of the program background and employed Squl Server 2008 database to realize persistent storage. And then it set up the graduation design selection system based on C/S for graduates.

      Key Words:Android; Rxjava; Retrofit; Spring; Hibernate; title selection system

      0 引言

      畢業(yè)設(shè)計(jì)是高等學(xué)校教學(xué)工作中最主要的實(shí)踐環(huán)節(jié)[1],是培養(yǎng)大學(xué)生綜合運(yùn)用所學(xué)知識(shí)解決實(shí)際問(wèn)題能力的重要過(guò)程,是開(kāi)展大學(xué)生創(chuàng)新能力訓(xùn)練的主要途徑[2]。

      高校畢業(yè)選題系統(tǒng)存在諸多弊端[3],如B/S加載緩慢、性能一般等,不能滿足學(xué)生需要。鑒于以上情況,本文以Spring+SpringMVC+Hibernate[4]作為數(shù)據(jù)后臺(tái),開(kāi)發(fā)了基于Android智能終端的畢業(yè)設(shè)計(jì)選題系統(tǒng)[5],實(shí)現(xiàn)在Android手機(jī)客戶(hù)端登錄完成選題的業(yè)務(wù)流程[6]。

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

      1.1 功能模塊設(shè)計(jì)

      系統(tǒng)設(shè)計(jì)教務(wù)員、教師、學(xué)生3個(gè)模塊。用戶(hù)使用時(shí)必須選擇用戶(hù)類(lèi)型登錄,然后進(jìn)行身份認(rèn)證,認(rèn)證通過(guò)即可使用相應(yīng)功能模塊。

      學(xué)院教務(wù)管理員:設(shè)置各專(zhuān)業(yè)選題時(shí)間,匯總學(xué)院各專(zhuān)業(yè)課題選擇情況。

      教師模塊:在規(guī)定時(shí)間內(nèi)創(chuàng)建課題,查看課題選擇情況,查看個(gè)人信息及密碼修改等。

      學(xué)生模塊:在規(guī)定的選題時(shí)間內(nèi)選題,查看選題、個(gè)人信息、修改密碼等。

      系統(tǒng)可實(shí)現(xiàn)創(chuàng)建課題、審核課題、選題等基本功能。使用方法簡(jiǎn)單、操作方便、功能齊全,為用戶(hù)提供了高效集成的管理和服務(wù)平臺(tái),如圖1所示。

      1.2 系統(tǒng)設(shè)計(jì)

      系統(tǒng)設(shè)計(jì)了t_depart表、t_teacher表、t_student表、t_project表。

      1.2.1 系統(tǒng)流程

      圖2為用戶(hù)登錄流程。當(dāng)用戶(hù)進(jìn)入系統(tǒng)時(shí),首先進(jìn)行身份驗(yàn)證,驗(yàn)證成功后,對(duì)應(yīng)顯示相應(yīng)角色功能列表。

      1.2.2 數(shù)據(jù)表

      t_teacher數(shù)據(jù)表存儲(chǔ)所有教師信息,其中is_admin==1擁有管理員權(quán)限,見(jiàn)表1。

      t_depart數(shù)據(jù)表存儲(chǔ)所有學(xué)院與專(zhuān)業(yè)信息,見(jiàn)表2。

      t_student表存儲(chǔ)所有學(xué)生信息,depart_id代表所屬專(zhuān)業(yè)的id。

      t_project表存儲(chǔ)所有課題信息。teacher對(duì)應(yīng)出題人,StudentId對(duì)應(yīng)選題人。

      2 系統(tǒng)開(kāi)發(fā)

      2.1 開(kāi)發(fā)工具

      本系統(tǒng)使用Intellij IDEA 2017.1.2、Android Studio進(jìn)行系統(tǒng)開(kāi)發(fā),數(shù)據(jù)庫(kù)使用Sql Server 2008,服務(wù)器為T(mén)omcat9,操作系統(tǒng)是Microsoft Windows7,瀏覽器為IE或360安全瀏覽器,測(cè)試環(huán)境為Postman。

      2.2 開(kāi)發(fā)技術(shù)

      2.2.1 后端開(kāi)發(fā)技術(shù)

      采用Sql Server 2008數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)持久化存儲(chǔ)[7],采用Spring+SpringMVC+Hibernate實(shí)現(xiàn)restful接口設(shè)計(jì)并返回json數(shù)據(jù)[8]。

      (1)Spring是一個(gè)輕量級(jí)的容器(light-weight Container),核心是Bean工廠(Bean Factory),可用來(lái)構(gòu)造所需的M(Model)。在此基礎(chǔ)上,Spring還提供AOP(Aspect-Oriented Programming,面向?qū)用骈_(kāi)發(fā))實(shí)現(xiàn)方法,提供非管理環(huán)境下的一些事務(wù)和安全申明方式;對(duì)實(shí)體工廠方法擴(kuò)展后得到的ApplicationContext更加方便實(shí)現(xiàn)J2EE的應(yīng)用;DAO/ORM(數(shù)據(jù)庫(kù)操作對(duì)象/數(shù)據(jù)庫(kù)映射對(duì)象)方便開(kāi)發(fā)者進(jìn)行各種數(shù)據(jù)庫(kù)開(kāi)發(fā)與實(shí)現(xiàn);Web MVC框架和Spring Web框架提供了Java Web應(yīng)用框架,可與其它熱門(mén)Web框架進(jìn)行集成開(kāi)發(fā)。

      (2)Hibernate是開(kāi)放源代碼的對(duì)象關(guān)系映射框架,把數(shù)據(jù)庫(kù)操作轉(zhuǎn)換為對(duì)實(shí)體的操作,對(duì)JDBC操作進(jìn)行輕量封裝,將POJO實(shí)體與數(shù)據(jù)庫(kù)表建立一種映射關(guān)系,是一個(gè)全自動(dòng)ORM框架。Hibernate可以自動(dòng)生成對(duì)應(yīng)的SQL語(yǔ)句,使程序員可以放心使用面向?qū)ο缶幊趟枷氩僮鞲鞣N數(shù)據(jù)庫(kù)。另外,Hibernate可以應(yīng)用在所有使用JDBC的場(chǎng)合。

      (3)Spring MVC框架是一個(gè)MVC模式框架,通過(guò)實(shí)現(xiàn)Model-View-Controller模式很好地將數(shù)據(jù)層、業(yè)務(wù)層與展現(xiàn)層分離開(kāi)來(lái)。Spring MVC設(shè)計(jì)原理是圍繞DispatcherServlet類(lèi)展開(kāi)的,DispatcherServlet負(fù)責(zé)將所有請(qǐng)求派發(fā)到它指定的handler進(jìn)行處理。通過(guò)其中可配置的handler mappings、view resolution處理接收到的請(qǐng)求,并轉(zhuǎn)到對(duì)應(yīng)的視圖展示。

      SSH(Spring, SpringMVC與Hibernate)開(kāi)發(fā)優(yōu)點(diǎn)[9]:

      (1)SpringMVC是一種很好的MVC模式框架。SpringMVC的MVC設(shè)計(jì)模式可使開(kāi)發(fā)邏輯變得非常清晰,程序更加層次分明。

      (2)Spring提供了對(duì)業(yè)務(wù)進(jìn)行管理的方法,鼓勵(lì)使用注入接口的方法進(jìn)行編程,不提倡直接對(duì)類(lèi)進(jìn)行編程或操作,使開(kāi)發(fā)的產(chǎn)品最大程度上進(jìn)行解耦。

      (3)Hibernate提供數(shù)據(jù)庫(kù)操作,對(duì)數(shù)據(jù)進(jìn)行持久化[10]。Hibernate訪問(wèn)數(shù)據(jù)對(duì)應(yīng)的注解類(lèi)名屬性等,對(duì)JDBC進(jìn)行輕量封裝[11],與關(guān)系型數(shù)據(jù)庫(kù)配合編程過(guò)程大大簡(jiǎn)化[12]。

      2.2.2 安卓端開(kāi)發(fā)技術(shù)

      (1)Rxjava,一個(gè)在Java VM上使用可觀測(cè)序列組成異步、基于事件的程序的庫(kù),是一個(gè)用來(lái)異步操作的框架。Rxjava通過(guò)Observable與Subscriber實(shí)現(xiàn)觀察者設(shè)計(jì)模式,能在業(yè)務(wù)邏輯復(fù)雜的情況下仍然保持清晰的代碼。

      (2)Retrofit,一個(gè)針對(duì)Android和Java的http請(qǐng)求客戶(hù)端,可將restful API封裝為java interface,根據(jù)業(yè)務(wù)需求進(jìn)行實(shí)際接口的封裝,可封裝多個(gè)java interface以滿足業(yè)務(wù)需求。

      Rxjava+Retrofit優(yōu)點(diǎn):

      Retrofit使用注解方式定義請(qǐng)求,基于Okhttp(基于okio優(yōu)化的高效流操作,能自動(dòng)使用同一個(gè)Socket合并請(qǐng)求等)實(shí)現(xiàn)高效的網(wǎng)絡(luò)請(qǐng)求。配合Rxjava觀察者設(shè)計(jì)模式,可更加高效清晰地實(shí)現(xiàn)異步網(wǎng)絡(luò)請(qǐng)求。

      3 系統(tǒng)運(yùn)行效果

      畢業(yè)設(shè)計(jì)選題系統(tǒng)設(shè)計(jì)完成后臺(tái)管理系統(tǒng)與移動(dòng)端APP應(yīng)用,在此以教師端登錄效果進(jìn)行展示。

      教師用戶(hù)登陸。使用賬號(hào)t001,密碼123456,如圖3所示。

      用戶(hù)登錄后,顯示對(duì)應(yīng)權(quán)限功能列表,進(jìn)行操作,如圖4所示。

      進(jìn)入個(gè)人中心,顯示當(dāng)前用戶(hù)詳細(xì)信息,如圖5所示。

      4 結(jié)語(yǔ)

      本文提出的畢業(yè)設(shè)計(jì)選題系統(tǒng)構(gòu)建方案,目的是有效提高高校畢業(yè)設(shè)計(jì)選題工作的效率,解決人工信息管理及Web端操作的諸多弊端,提升高校校園數(shù)字化水平。該系統(tǒng)使高校畢業(yè)設(shè)計(jì)選題工作更加科學(xué)化、規(guī)范化,具有良好的應(yīng)用前景。

      參考文獻(xiàn):

      [1] 單丹丹,韓冬.Android源碼中觀察者模式的運(yùn)用[J].電腦知識(shí)與技術(shù),2017(2):16-17.

      [2] 劉金梅,王俊紅,胡輝,等.電子信息工程專(zhuān)業(yè)本科畢業(yè)設(shè)計(jì)研究與實(shí)踐[J].北華航天工業(yè)學(xué)院學(xué)報(bào),2016(5):142-146.

      [3] 鄭潔,錢(qián)育蓉,范迎迎.基于SpringMVC和Hibernate的企業(yè)人事管理系統(tǒng)[J].電腦知識(shí)與技術(shù),2016(2):64-66.

      [4] 周巧俊.RESTful Web服務(wù)開(kāi)放平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)[D].杭州:浙江大學(xué),2016.

      [5] 朱亞林,高飛,卞步喜.淺談本科畢業(yè)設(shè)計(jì)過(guò)程中學(xué)生創(chuàng)新能力的培養(yǎng)[J].科技創(chuàng)新導(dǎo)報(bào),2014(28):29-31.

      [6] 張玉清,王凱,楊歡,等.Android安全綜述[J].計(jì)算機(jī)研究與發(fā)展,2014(7):78-79.

      [7] 陳霓.SQL Server 2008數(shù)據(jù)庫(kù)的安全性分析[J].電腦開(kāi)發(fā)與應(yīng)用,2012(1):94-96.

      [8] 馮學(xué)軍.基于SSH框架的Web網(wǎng)站設(shè)計(jì)與實(shí)現(xiàn)[D].長(zhǎng)春:長(zhǎng)春理工大學(xué),2010.

      [9] 吳曉鷗.Restful Web Services在企業(yè)應(yīng)用集成中的應(yīng)用研究[D].北京:首都經(jīng)濟(jì)貿(mào)易大學(xué),2010.

      [10] 陳蘇蓉,朱曉輝.SQL Server 2008性能優(yōu)化研究[J].電腦知識(shí)與技術(shù),2009(34):65-68.

      [11] 高張,康小軍.提高Tomcat服務(wù)器運(yùn)行性能的研究[J].計(jì)算機(jī)與數(shù)字工程,2008(10):1245-1250.

      [12] 許文稼,趙英凱.應(yīng)用SpringMVC與Hibernate進(jìn)行Web開(kāi)發(fā)[J].計(jì)算機(jī)應(yīng)用與軟件,2008(2):146-149.

      (責(zé)任編輯:杜能鋼)

      黄石市| 毕节市| 仲巴县| 成武县| 山东省| 华亭县| 云浮市| 琼中| 濉溪县| 广东省| 平昌县| 明溪县| 保靖县| 佛山市| 利辛县| 西华县| 哈密市| 钟山县| 若羌县| 三亚市| 闽侯县| 镇安县| 潼南县| 郯城县| 张家港市| 侯马市| 瑞昌市| 弋阳县| 武汉市| 呼伦贝尔市| 观塘区| 玉溪市| 井冈山市| 江城| 长宁县| 丰台区| 松滋市| 临湘市| 奉新县| 东源县| 类乌齐县|