• 
    

    
    

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

      大學(xué)生創(chuàng)新學(xué)分管理設(shè)計(jì)與實(shí)現(xiàn)研究

      2017-06-14 15:06:38汪玲阮智張立濤田越
      現(xiàn)代商貿(mào)工業(yè) 2017年15期

      汪玲++阮智++張立濤++田越

      摘要:針對(duì)高校大學(xué)生創(chuàng)新學(xué)分管理信息系統(tǒng)的建設(shè)需求,提出了基于Struts+Spring+Hibernate(SSH)技術(shù)架構(gòu)的解決方法,并給出其在Web系統(tǒng)快速設(shè)計(jì)與開發(fā)中的具體實(shí)現(xiàn)過程。結(jié)果證明:采用SSH框架設(shè)計(jì)模式,不僅使系統(tǒng)層次結(jié)構(gòu)更為清晰,而且顯著降低了系統(tǒng)開發(fā)成本及模塊之間耦合度。

      關(guān)鍵詞:創(chuàng)新學(xué)分管理系統(tǒng);SSH框架;WEB框架

      中圖分類號(hào):G4

      文獻(xiàn)標(biāo)識(shí)碼:A

      doi:10.19311/j.cnki.16723198.2017.15.078

      1引言

      現(xiàn)階段我國高校創(chuàng)新學(xué)分的管理尚處于紙質(zhì)檔案管理階段,學(xué)分審核過程繁瑣,為了減輕相關(guān)高校管理人員的工作,更加高效地管理畢業(yè)生創(chuàng)新學(xué)分資料,利用現(xiàn)代計(jì)算機(jī)和數(shù)據(jù)庫開發(fā)技術(shù),建立起完善的創(chuàng)新學(xué)分管理平臺(tái)對(duì)于提高管理人員工作質(zhì)量和效率、加強(qiáng)學(xué)生對(duì)自身資料管理的參與度、提高信息資源的利用率和管理水平都具有重要意義。

      為了提高大學(xué)生創(chuàng)新學(xué)分管理的水平,我校基于SSH架構(gòu)設(shè)計(jì)并開發(fā)了大學(xué)生創(chuàng)新學(xué)分管理平臺(tái)。該平臺(tái)的建立,不僅使教師管理員能及時(shí)獲取相應(yīng)的創(chuàng)新學(xué)分信息,而且也能滿足多種對(duì)學(xué)分進(jìn)行操作的需求;同時(shí),各學(xué)科的學(xué)生可以提交創(chuàng)新學(xué)分變更請(qǐng)求,上傳相關(guān)學(xué)分證明材料等,這樣大大降低了管理成本,也提高了學(xué)分管理的效率。平臺(tái)采用B/S結(jié)構(gòu)以減輕對(duì)客戶端的壓力,同時(shí)為了簡(jiǎn)化系統(tǒng)的開發(fā)過程,增強(qiáng)系統(tǒng)的健壯性和可拓展性,系統(tǒng)采用了基于MVC模式的SSH技術(shù)框架。

      2SSH技術(shù)框架

      SSH是由Struts+Spring+Hibernate組成的一個(gè)集成框架,也是目前比較流行的一種Web應(yīng)用程序開源框架,它分為表示層、業(yè)務(wù)邏輯層、數(shù)據(jù)持久層和域模塊層。在該框架中,業(yè)務(wù)規(guī)則、數(shù)據(jù)訪問及合法性校驗(yàn)等工作交由中間層處理,客戶端可以通過組件與中間層建立連接,再由中間層與數(shù)據(jù)庫交互,而不用直接與數(shù)據(jù)庫進(jìn)行交互,這不僅使得開發(fā)人員能在短期內(nèi)搭建結(jié)構(gòu)清晰、可復(fù)用性好、維護(hù)方便的Web應(yīng)用程序,而且也極大程度地提高了系統(tǒng)的可擴(kuò)展性和可維護(hù)性。

      2.1Struts

      Struts是一個(gè)基于模型、視圖、控制器的MVC應(yīng)用框架,主要是采用Servlet和JSP技術(shù)來實(shí)現(xiàn)的。Struts把Servlet、JSP、自定義標(biāo)簽和信息資源(message resources)整合到一個(gè)統(tǒng)一的框架中,有效地減弱數(shù)據(jù)接口和業(yè)務(wù)處理邏輯之間的耦合。通過Struts框架,開發(fā)者可以創(chuàng)建基于各種標(biāo)準(zhǔn)技術(shù)(如JSP頁、JavaBeans、資源包和XML)的可維護(hù)、可擴(kuò)展并且靈活的Web應(yīng)用程序,極大地節(jié)省了時(shí)間。

      2.2Spring

      Spring是一個(gè)輕量級(jí)的控制反轉(zhuǎn)(IOC)和面向切面(AOP)的容器框架,用于對(duì)Struts和Hibernate進(jìn)行管理。Spring通過IOC技術(shù)式將應(yīng)用程序的配置和依賴性規(guī)范與實(shí)際應(yīng)用程序代碼分開,以實(shí)現(xiàn)業(yè)務(wù)模塊的松耦合。同時(shí)Spring還提供了面向切面編程的豐富支持,直接將面向?qū)ο蟮木幊坦δ芗傻搅薙pring框架中,允許通過分離應(yīng)用的業(yè)務(wù)邏輯與系統(tǒng)級(jí)服務(wù)進(jìn)行內(nèi)聚性的開發(fā)。極大地簡(jiǎn)化了錯(cuò)誤處理,降低了編寫異常代碼數(shù)量。

      2.3Hibernate

      Hibernate是一個(gè)面向Java環(huán)境的對(duì)象/關(guān)系映射工具,將對(duì)象/關(guān)系模型中的對(duì)象映射到基于SQL的關(guān)系模型結(jié)構(gòu)中。Hibernate不僅可以實(shí)現(xiàn)Java類到數(shù)據(jù)庫表的映射,完成數(shù)據(jù)查詢、獲取數(shù)據(jù)及延遲加載等重要功能,而且它還提供了功能強(qiáng)大的查詢語言(Hibernate Query Language,HQL),縮短了開發(fā)時(shí)使用SQL和JDBC處理數(shù)據(jù)的時(shí)間,降低了開發(fā)難度。

      3系統(tǒng)功能結(jié)構(gòu)及架構(gòu)設(shè)計(jì)

      3.1系統(tǒng)功能結(jié)構(gòu)

      創(chuàng)新學(xué)分管理系統(tǒng)按用戶角色分為3個(gè)模塊,即:學(xué)生模塊、教師模塊、系統(tǒng)管理模塊。其中,學(xué)生可以完成創(chuàng)新學(xué)分申請(qǐng)的提交、學(xué)分證明材料的上傳以及個(gè)人創(chuàng)新項(xiàng)目的查看;教師可以審核和下載創(chuàng)新學(xué)分證明材料、查看或?qū)С鲎约核芾戆嗉?jí)的項(xiàng)目資料;系統(tǒng)管理員擁有最大權(quán)限,可以管理學(xué)生信息和教師權(quán)限,并對(duì)項(xiàng)目規(guī)則進(jìn)行增、刪、改操作。

      3.2系統(tǒng)架構(gòu)設(shè)計(jì)

      3.2.1WEB層設(shè)計(jì)

      本系統(tǒng)采用Struts來實(shí)現(xiàn)后臺(tái)與界面之間的交互。Struts的核心是多種功能的攔截器和過濾器,當(dāng)學(xué)生提交自己參與的創(chuàng)新學(xué)分項(xiàng)目資料的時(shí)候,攔截器會(huì)自動(dòng)把提交的信息封裝到開發(fā)者指定的JavaBean里面,相比于傳統(tǒng)的方式需要開發(fā)者手動(dòng)封裝,極大提升了開發(fā)效率。對(duì)于學(xué)生提交的信息進(jìn)行保存之后,Struts只需要根據(jù)返回的結(jié)果在Struts.xml核心配置文件,匹配結(jié)果跳轉(zhuǎn)到對(duì)應(yīng)的事先配置好的頁面,而傳統(tǒng)的Servlet需要通過硬編碼的方式指定跳轉(zhuǎn)頁面,這樣不僅使得頁面地址路徑和代碼緊耦合,同時(shí)不利于后期維護(hù)或者擴(kuò)展,而在使用Struts框架,開發(fā)者只須對(duì)Struts.xml進(jìn)行相應(yīng)的調(diào)整和修改。這種管理頁面邏輯的方式在系統(tǒng)前期的開發(fā)過程和后期的維護(hù)與升級(jí)階段都顯示出了極大的便捷性和有效性。

      在創(chuàng)新學(xué)分系統(tǒng)中,學(xué)生可以查看自己所上傳的項(xiàng)目,提交新的項(xiàng)目,刪除不合格的項(xiàng)目,而這些業(yè)務(wù)對(duì)應(yīng)的頁面跳轉(zhuǎn),數(shù)據(jù)庫操作,通過簡(jiǎn)單的配置文件緊密的聯(lián)系在一起,但是又可以靈活的進(jìn)行變更和管理,Struts.xml配置文件部分內(nèi)容如下:

      class="com.adou.createScore.action.StudentAction"method="{1}">

      result

      /WEB-INF/page/student/showPro.jsp

      /WEB-INF/page/student/showMyPro.jsp

      studentAction_toshowMyProPage?p_id=${p_id}

      3.2.2業(yè)務(wù)層設(shè)計(jì)

      業(yè)務(wù)層借助Spring,通過依賴注入、AOP應(yīng)用及IOC等技術(shù),有效地弱化了業(yè)務(wù)組件的耦合關(guān)系,提高了系統(tǒng)的可擴(kuò)展性。Spring主要負(fù)責(zé)應(yīng)用程序業(yè)務(wù)邏輯處理、業(yè)務(wù)校驗(yàn)、事務(wù)管理及業(yè)務(wù)層的對(duì)象依賴關(guān)系管理,它使得業(yè)務(wù)邏輯層和數(shù)據(jù)持久層之間增加了一個(gè)靈活的機(jī)制,減少了系統(tǒng)變更時(shí)的工作量。

      當(dāng)管理員導(dǎo)入學(xué)生的信息的時(shí)候,業(yè)務(wù)層AdminServiceImpl類直接使用通過Spring注解方式注入的持久層的MajorInfoDao,不需要顯示實(shí)例化,這樣既使層與層之間聯(lián)系在一起,但是之間卻沒有耦合在一起,當(dāng)需要更換持久層,不需要更改業(yè)務(wù)層代碼;執(zhí)行數(shù)據(jù)庫操作需要開啟事務(wù),而Spring框架AOP模塊對(duì)事務(wù)進(jìn)行了良好封裝,開發(fā)人員只需要在配置文件里面配置,不再需要開發(fā)人員手動(dòng)在業(yè)務(wù)層每一個(gè)方法里面寫類似的代碼,很好增加了代碼的重用性。

      AdminServiceImpl中部分注解代碼如下:

      public class AdminServiceImpl extends BaseServiceImpl implements AdminService {

      @Resource

      private MajorInfoDao majorInfoDao;

      }

      3.2.3持久層設(shè)計(jì)

      傳統(tǒng)的持久層設(shè)計(jì)需要開發(fā)人員通過硬編碼的方式連接數(shù)據(jù)庫,編寫SQL語句,轉(zhuǎn)換Java對(duì)象和數(shù)據(jù)庫表的結(jié)構(gòu)映射,產(chǎn)生大量重復(fù)的代碼,而且硬編碼的方式操作數(shù)據(jù)庫,不利于后期對(duì)于系統(tǒng)的持久層更換數(shù)據(jù)庫,更改數(shù)據(jù)表。因此本系統(tǒng)采用市面上流行的ORM框架——Hibernate,Hibernate框架通過配置文件方式處理Java對(duì)象和數(shù)據(jù)表之間的映射,不再是硬編碼的方式,不僅減少之間手動(dòng)的轉(zhuǎn)換的代碼,同時(shí)提高了靈活性;Hibernate框架提供HQL語法,開發(fā)人員可以站在面向?qū)ο蟮慕嵌葘慔QL語句,Hibernate框架底層會(huì)幫助開發(fā)人員把HQL語句轉(zhuǎn)化為系統(tǒng)正在使用的數(shù)據(jù)庫的SQL語句。相比于傳統(tǒng)方式,當(dāng)改變數(shù)據(jù)庫種類的時(shí)候,不需要更改持久層任何代碼。

      在創(chuàng)新學(xué)分系統(tǒng)中,一個(gè)項(xiàng)目類Project對(duì)應(yīng)數(shù)據(jù)庫中的項(xiàng)目表project,這兩者之間通過Project.hbm.xml配置文件產(chǎn)生映射關(guān)系,配置文件中,包含了項(xiàng)目名稱、項(xiàng)目?jī)?nèi)容、項(xiàng)目完成時(shí)間、項(xiàng)目審核狀態(tài)等屬性字段信息。以下是Project.hbm.xml配置文件中部分代碼以做說明:

      4結(jié)束語

      本文結(jié)合創(chuàng)新學(xué)分管理系統(tǒng)的開發(fā),詳細(xì)介紹了在系統(tǒng)實(shí)現(xiàn)過程中SSH技術(shù)實(shí)現(xiàn)框架以及MVC設(shè)計(jì)模式的核心和優(yōu)勢(shì)。實(shí)踐表明,采用SSH框架設(shè)計(jì)模式可以很好地實(shí)現(xiàn)了WEB層、數(shù)據(jù)層和業(yè)務(wù)層的分離,使系統(tǒng)層次結(jié)構(gòu)更為清晰,顯著降低了開發(fā)成本及模塊之間耦合度,提高了開發(fā)效率和系統(tǒng)的可擴(kuò)展性,整個(gè)系統(tǒng)使得創(chuàng)新學(xué)分管理工作水平和效率得到了極大的提高。

      參考文獻(xiàn)

      [1]李潤(rùn)求,孫亞鵬,施式亮等.創(chuàng)新與技能學(xué)分管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].中國教育信息化,2014,(13):4951.

      [2]張文梅.基于SSH的實(shí)驗(yàn)室管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].電腦知識(shí)與技術(shù),2016,(13):105106+109.

      [3]馮潤(rùn)民.基于SSH的高校學(xué)生管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)工程,2009,(06):280282.

      [4]李雷孝,劉曉軍,劉利民等.基于SSH整合框架的科研項(xiàng)目管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].內(nèi)蒙古農(nóng)業(yè)大學(xué)學(xué)報(bào)(自然科學(xué)版),2012,(01):210214.

      唐河县| 靖远县| 望谟县| 大同市| 芦山县| 安宁市| 衢州市| 从化市| 连山| 沙雅县| 青龙| 庐江县| 大悟县| 潞城市| 丰顺县| 海原县| 昆山市| 若羌县| 金秀| 天全县| 临沂市| 邮箱| 通城县| 玉田县| 黄冈市| 拉孜县| 永城市| 平泉县| 台山市| 瑞金市| 宝清县| 乌拉特中旗| 拜城县| 娄底市| 四川省| 四子王旗| 江源县| 会理县| 博罗县| 达拉特旗| 鄂托克旗|