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

    基于SSM框架的實(shí)驗(yàn)室管理系統(tǒng)的設(shè)計(jì)

    2020-07-18 11:39:52黃志瑜張良杰
    關(guān)鍵詞:開發(fā)者框架管理系統(tǒng)

    ◆黃志瑜 張良杰

    (福州工商學(xué)院信息工程系 福建 350700)

    百年大計(jì)教育為本,隨著國家大力發(fā)展教育,學(xué)校的規(guī)模也在不斷擴(kuò)大,基礎(chǔ)設(shè)施也越來越好。理論總要應(yīng)用于實(shí)踐當(dāng)中,實(shí)驗(yàn)室在高校無論是育人還是科研都占據(jù)著重要地位。高校實(shí)驗(yàn)室為培養(yǎng)符合時(shí)代的創(chuàng)新性、應(yīng)用型人才發(fā)揮了關(guān)鍵作用[1]。那么如何最大效率化地管理實(shí)驗(yàn)室,減輕人力物力的浪費(fèi)就顯得尤為重要??萍嫉倪M(jìn)步帶來了管理上的革新,實(shí)驗(yàn)室從傳統(tǒng)的管理,到利用信息技術(shù)來改良管理,從以前的紙筆人工化轉(zhuǎn)換為現(xiàn)在的數(shù)據(jù)庫存儲(chǔ)半自動(dòng)化,甚至是自動(dòng)化,從而催生出了實(shí)驗(yàn)室管理系統(tǒng)。

    國內(nèi)的一些高校根據(jù)自身的需求情況也已經(jīng)進(jìn)行了實(shí)驗(yàn)室管理系統(tǒng)的研究并且投入使用,如:北京大學(xué)的實(shí)驗(yàn)室儀器分類管理系統(tǒng)、實(shí)驗(yàn)室項(xiàng)目隊(duì)伍管理系統(tǒng);北京化工大學(xué)在原有實(shí)驗(yàn)室管理系統(tǒng)上開發(fā)出教學(xué)廣播、學(xué)生預(yù)約等功能,以較低的成本來安排大量的學(xué)生實(shí)驗(yàn)和儀器設(shè)備的使用,取得了較好的效果。

    然而,高校在實(shí)驗(yàn)室管理上依然存在一些問題。一部分高校的實(shí)驗(yàn)室管理依然采取人工管理方式,雖然專門成立了一個(gè)設(shè)備管理科,但是使用的仍然是紙質(zhì)化結(jié)合Word文檔、Excel表格進(jìn)行管理,在老師和學(xué)生需要使用設(shè)備的時(shí)候,要事先填寫各種表格導(dǎo)致效率低下。另一部分高校的實(shí)驗(yàn)室管理系統(tǒng)不重視設(shè)備的利用率和維護(hù),無報(bào)廢和維修功能,大量的設(shè)備處于無人用、無人管狀態(tài),設(shè)備的即時(shí)狀態(tài)無法及時(shí)掌握[2],設(shè)備損壞后沒有專門的維修人員來維修,造成了教學(xué)資源嚴(yán)重的浪費(fèi)。

    本文設(shè)計(jì)一種以SSM框架為基礎(chǔ)的基于Web應(yīng)用的實(shí)驗(yàn)室管理系統(tǒng),以期實(shí)現(xiàn)實(shí)驗(yàn)室管理的信息化智能化,最大限度地減少教學(xué)資源浪費(fèi),提高工作效率的同時(shí)也提升了實(shí)驗(yàn)室的利用率。

    1 SSM框架概況

    SSM框架,即Spring + Spring MVC + MyBatis,是當(dāng)今最受歡迎的應(yīng)用框架組合,它的設(shè)計(jì)理念完全符合開源思想和JavaEE的標(biāo)準(zhǔn)。SSM框架具有強(qiáng)大的可擴(kuò)展性,支持整合其他常用框架,如Dubbo等,可以開發(fā)出更強(qiáng)大,耦合度更低的應(yīng)用系統(tǒng)。

    SSM 框架實(shí)現(xiàn)了分層思想的技術(shù)規(guī)范和要求,如在Controller這一層上的設(shè)計(jì)思想就是一個(gè)控制器一個(gè)功能,每一層各司其職,層與層間通過接口來進(jìn)行交互,最大限度降低耦合,提高內(nèi)聚,增強(qiáng)系統(tǒng)的健壯性、可擴(kuò)展性和可維護(hù)性。

    1.1 Spring

    Spring可以說是當(dāng)今最流行的框架,在國內(nèi)外各大網(wǎng)站上使用率和支持率都是常年穩(wěn)居第一,甚至有人說:“在當(dāng)今社會(huì)如果你不懂Spring,就放棄Java”,可見Spring框架在Java開發(fā)中的重要地位。Spring是2003年發(fā)布的一個(gè)輕量級(jí)開源框架,它的核心是IoC(控制反轉(zhuǎn))和AOP(依賴注入)。在實(shí)際開發(fā)中,通常都采用分層架構(gòu),比如常用的三層架構(gòu):Dao層、Service層和Controller層,Spring為每一層都提供了良好的技術(shù)支撐和可擴(kuò)展特性,MyBatis、Hibernate、Log4j、SLF4J等常用框架都可以很好地與Spring進(jìn)行整合。

    1.2 Spring MVC

    Spring MVC是當(dāng)前最優(yōu)秀的MVC框架之一,實(shí)際開發(fā)中用于替代Servlet。自Spring 2.5版本后,支持注解配置功能,易用性有了大幅度的提高。Spring 3.0更加完善,實(shí)現(xiàn)了對(duì)Struts 2的超越。Spring MVC具有諸多優(yōu)點(diǎn),如:與Spring框架無縫集成、提供強(qiáng)大的約定大于配置的契約式編程支持、支持RESTful風(fēng)格等。Spring MVC的核心是DispatcherServlet,所有的請(qǐng)求都將被它攔截,并且在初始化該 Servlet時(shí)就將映射初始化,因此DispatcherServlet可以返回映射之后的視圖。

    1.3 MyBatis

    MyBatis是一個(gè)優(yōu)秀的輕量級(jí)數(shù)據(jù)持久層框架,實(shí)現(xiàn)對(duì)JDBC的封裝,主要負(fù)責(zé)數(shù)據(jù)訪問層的數(shù)據(jù)庫相關(guān)操作[3]。MyBatis使得開發(fā)者不需要直接操縱數(shù)據(jù)庫,開發(fā)者可以通過對(duì)配置和原生Map使用簡單的XML或注解來實(shí)現(xiàn)和數(shù)據(jù)庫的交互。在實(shí)際開發(fā)中,MyBatis專注于SQL本身,是一個(gè)足夠靈活的Dao層解決方案,適用于對(duì)性能要求高,或者需求變化較多的項(xiàng)目。

    2 系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

    2.1 總體設(shè)計(jì)

    本系統(tǒng)基于B/S架構(gòu),總體上分為用戶管理、實(shí)驗(yàn)室設(shè)備管理、實(shí)驗(yàn)室管理、通知管理四大模塊,如圖1所示。為了系統(tǒng)的穩(wěn)定運(yùn)行以及項(xiàng)目未來的可擴(kuò)展性,采用了SSM框架、MySQL以及 Tomcat等主流技術(shù)作為本項(xiàng)目的技術(shù)棧,旨在打造一個(gè)高效的信息化實(shí)驗(yàn)室管理系統(tǒng)。

    (1)用戶管理

    系統(tǒng)管理員可以創(chuàng)建用戶并進(jìn)行權(quán)限分配,還可以對(duì)用戶的相關(guān)信息進(jìn)行增刪改查操作。

    (2)實(shí)驗(yàn)室設(shè)備管理

    主要有購置設(shè)備、報(bào)廢設(shè)備、維修設(shè)備、設(shè)備出入庫和以圖表展現(xiàn)的設(shè)備統(tǒng)計(jì)信息等功能。

    (3)實(shí)驗(yàn)室管理

    實(shí)驗(yàn)室分配管理:當(dāng)用戶申請(qǐng)使用實(shí)驗(yàn)室時(shí),管理員按照各實(shí)驗(yàn)室的使用情況分配給申請(qǐng)的用戶。

    實(shí)驗(yàn)室信息管理:管理員可以新建實(shí)驗(yàn)室并填寫該實(shí)驗(yàn)室的相關(guān)信息、修改一個(gè)實(shí)驗(yàn)室的相關(guān)信息、刪除一個(gè)實(shí)驗(yàn)室信息或刪除整個(gè)實(shí)驗(yàn)室等操作。

    (4)通知管理

    通知信息管理:管理員可以對(duì)通知進(jìn)行增刪改查操作。

    圖片輪播管理:管理員可以管理首頁的圖片與標(biāo)題,并將符合條件的通知放到圖片輪播當(dāng)中。

    圖1 系統(tǒng)功能層次圖

    2.2 部分核心功能設(shè)計(jì)

    (1)實(shí)驗(yàn)室分配管理

    用戶通過系統(tǒng)向?qū)嶒?yàn)室提出申請(qǐng)使用后(包括學(xué)生預(yù)約[4]),系統(tǒng)管理員會(huì)根據(jù)實(shí)驗(yàn)室的使用情況來分配使用時(shí)間段。管理員審批申請(qǐng)后,實(shí)驗(yàn)室使用者會(huì)被批注在該時(shí)間段中使用實(shí)驗(yàn)室。流程如圖2所示。

    (2)實(shí)驗(yàn)排行榜

    學(xué)生完成實(shí)驗(yàn)后,填寫實(shí)驗(yàn)報(bào)告并通過系統(tǒng)進(jìn)行提交。教師在教師平臺(tái)界面查看學(xué)生提交的實(shí)驗(yàn)報(bào)告并對(duì)其批改,批改完后將實(shí)驗(yàn)報(bào)告的分?jǐn)?shù)錄入系統(tǒng)中??偡职凑赵搶W(xué)生日常在實(shí)驗(yàn)室做實(shí)驗(yàn)的表現(xiàn)分和實(shí)驗(yàn)報(bào)告的報(bào)告分按比例加起來進(jìn)行計(jì)算??偡直壤梢苑譃?0%表現(xiàn)分和60%報(bào)告分、30%表現(xiàn)分和70%報(bào)告分兩種。教師錄入成績后,系統(tǒng)會(huì)對(duì)學(xué)生此次的分?jǐn)?shù)進(jìn)行降序排列,學(xué)生可以登錄自己的賬號(hào)進(jìn)行查看此次實(shí)驗(yàn)成績。流程如圖3所示。

    (3)購置設(shè)備功能

    用戶登錄后來到申請(qǐng)界面,系統(tǒng)會(huì)自動(dòng)獲取用戶的工號(hào)和姓名作為此次申請(qǐng)購置的負(fù)責(zé)人,用戶填寫申請(qǐng)表的詳細(xì)信息并提交,隨后系統(tǒng)驗(yàn)證提交的信息是否正確。當(dāng)信息在后臺(tái)檢測(cè)通過后,信息會(huì)存儲(chǔ)到數(shù)據(jù)庫中,并通知負(fù)責(zé)人創(chuàng)建成功。

    頁面默認(rèn)顯示一張表單信息,可以通過頁面中的加號(hào)鍵來增加表單項(xiàng)。該功能是通過jQuery去操作 DOM 元素動(dòng)態(tài)的生成HTML,并使用jQuery選擇器來獲取用戶提交的數(shù)據(jù)。

    前臺(tái)數(shù)據(jù)發(fā)往后臺(tái):

    圖2 實(shí)驗(yàn)室分配流程圖

    圖3 排行榜流程圖

    (4)統(tǒng)計(jì)數(shù)據(jù)

    每一個(gè)實(shí)驗(yàn)室都可以通過本功能查看該實(shí)驗(yàn)室中的設(shè)備信息,也可以點(diǎn)擊查看全部,那么就會(huì)顯示所有實(shí)驗(yàn)室中的設(shè)備信息。本功能是通過引入ECharts插件實(shí)現(xiàn)的,ECharts上手簡單,只要用戶將數(shù)據(jù)引入就可自動(dòng)生成統(tǒng)計(jì)圖,能夠提供直觀、生動(dòng)、可交互、可高度個(gè)性化定制的數(shù)據(jù)可視化圖表[5]。如圖4所示。

    核心代碼如下:

    圖4 數(shù)據(jù)統(tǒng)計(jì)界面

    2.3 Spring在本系統(tǒng)業(yè)務(wù)層中的應(yīng)用

    在實(shí)際開發(fā)中業(yè)務(wù)層是很靈活的,不同的業(yè)務(wù)層實(shí)現(xiàn)不同的功能。業(yè)務(wù)層的存在使得Controller層和Dao層之間沒有直接的聯(lián)系,降低了整個(gè)系統(tǒng)的耦合度。在業(yè)務(wù)層可以使用Spring框架的各種功能:IoC、AOP、面向接口編程等。例如可以使用Spring的兩大核心之一的AOP,從橫切面的角度來開發(fā)整個(gè)系統(tǒng),對(duì)系統(tǒng)進(jìn)行業(yè)務(wù)橫向擴(kuò)展。

    在本系統(tǒng)中Spring通過業(yè)務(wù)層將Dao層對(duì)象和設(shè)備管理功能聯(lián)系起來。例如在設(shè)備刪除、設(shè)備購買申請(qǐng)等功能中,使用了AOP的技術(shù)。代碼如下:

    Spring在SSM框架中作為主導(dǎo)框架。本次開發(fā)在配置文件中定義了MyBatis資源、配置數(shù)據(jù)源、配置數(shù)據(jù)庫的事務(wù)管理器、配置生產(chǎn)SqlSessionFactory的工廠等。部分代碼如下:

    通過以上代碼就將對(duì)象注入到了Spring容器中。當(dāng)開發(fā)者需要用到該對(duì)象時(shí),引用該對(duì)象的id即可直接使用。Spring改變了以往開發(fā)者通過構(gòu)造方法創(chuàng)建對(duì)象的煩瑣,進(jìn)一步降低了系統(tǒng)內(nèi)部的耦合,提高內(nèi)聚,增強(qiáng)了系統(tǒng)的健壯性。

    2.4 MyBatis在本系統(tǒng)持久層中的應(yīng)用

    Dao層在實(shí)際開發(fā)中負(fù)責(zé)與數(shù)據(jù)庫進(jìn)行數(shù)據(jù)交互,而傳統(tǒng)的JDBC數(shù)據(jù)庫操作不僅會(huì)花費(fèi)大量的時(shí)間在數(shù)據(jù)交互上,還會(huì)降低系統(tǒng)的性能。MyBatis對(duì)JDBC進(jìn)行了封裝,使用了MyBatis后可以減輕開發(fā)者編寫SQL語句的工作量。開發(fā)者可以在XML配置文件中或者M(jìn)apper接口中自定義SQL語句,需要使用事務(wù)管理、數(shù)據(jù)緩存、數(shù)據(jù)庫訪問等功能時(shí)可以直接調(diào)用這些功能。在MyBatis中,實(shí)體類的屬性名和數(shù)據(jù)表的字段名默認(rèn)是需要一一對(duì)應(yīng),這一約定提高了系統(tǒng)開發(fā)的便捷性。

    開發(fā)中建立MyBatis的持久層是通過配置XML文件來映射對(duì)象的。先通過namespace將配置文件和Dao層進(jìn)行關(guān)聯(lián),在對(duì)數(shù)據(jù)庫進(jìn)行操作時(shí),字段名應(yīng)該與實(shí)體類中的屬性名一一對(duì)應(yīng)。代碼如下:

    當(dāng)實(shí)體類的屬性名和數(shù)據(jù)表的字段名無一一對(duì)應(yīng)時(shí),開發(fā)者可以使用MyBatis提供的<resultMap>進(jìn)行屬性映射。

    3 結(jié)語

    本文設(shè)計(jì)了一種以SSM框架為基礎(chǔ)的基于Web應(yīng)用的實(shí)驗(yàn)室管理系統(tǒng),詳細(xì)地介紹了系統(tǒng)的功能設(shè)計(jì)及實(shí)現(xiàn)過程。系統(tǒng)開發(fā)中運(yùn)用了SSM框架的分層思想的技術(shù)規(guī)范和要求,縮短了系統(tǒng)的開發(fā)周期,最大限度降低耦合,提高系統(tǒng)內(nèi)聚,增強(qiáng)系統(tǒng)的健壯性、可擴(kuò)展性和可維護(hù)性,讓系統(tǒng)能更好的適應(yīng)后期業(yè)務(wù)需求的變化。

    系統(tǒng)的每個(gè)功能在經(jīng)過測(cè)試后部署運(yùn)行良好,此次開發(fā)采用的是SSM框架和dbcp數(shù)據(jù)庫連接池,在后續(xù)的版本迭代中我們將考慮移植SpringBoot和druid數(shù)據(jù)庫連接池進(jìn)行開發(fā),減少配置文件的書寫,而且SpringBoot擁有更人性化的功能設(shè)計(jì),更能在SSM框架的基礎(chǔ)上進(jìn)一步降低系統(tǒng)內(nèi)部的耦合,提升系統(tǒng)的性能。

    猜你喜歡
    開發(fā)者框架管理系統(tǒng)
    基于James的院內(nèi)郵件管理系統(tǒng)的實(shí)現(xiàn)
    框架
    廣義框架的不相交性
    基于LED聯(lián)動(dòng)顯示的違停管理系統(tǒng)
    海盾壓載水管理系統(tǒng)
    中國船檢(2017年3期)2017-05-18 11:33:08
    WTO框架下
    法大研究生(2017年1期)2017-04-10 08:55:06
    16%游戲開發(fā)者看好VR
    CHIP新電腦(2016年3期)2016-03-10 13:06:42
    一種基于OpenStack的云應(yīng)用開發(fā)框架
    iOS開發(fā)者調(diào)查
    電腦迷(2015年8期)2015-05-30 12:27:10
    iOS開發(fā)者調(diào)查
    電腦迷(2015年4期)2015-05-30 05:24:09
    呼和浩特市| 鄂托克旗| 漠河县| 永州市| 蒲城县| 徐汇区| 涟水县| 乐昌市| 土默特左旗| 永康市| 文山县| 富顺县| 利川市| 新郑市| 台湾省| 朝阳区| 时尚| 宁都县| 泸溪县| 黄浦区| 双江| 沈阳市| 淳化县| 隆回县| 荆门市| 宁化县| 昭平县| 安康市| 阿克陶县| 新巴尔虎右旗| 琼海市| 卢湾区| 静乐县| 仁布县| 介休市| 江达县| 闵行区| 循化| 嘉荫县| 衡山县| 碌曲县|