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

        ?

        基于Java EE體系的高校教務管理系統(tǒng)的設計與實現(xiàn)

        2014-03-27 03:45:53
        中國新技術(shù)新產(chǎn)品 2014年18期
        關(guān)鍵詞:定義對象數(shù)據(jù)庫

        (蘇州工藝美術(shù)職業(yè)技術(shù)學院,江蘇 蘇州 215000)

        基于Java EE體系的高校教務管理系統(tǒng)的設計與實現(xiàn)

        龐鈺平

        (蘇州工藝美術(shù)職業(yè)技術(shù)學院,江蘇 蘇州 215000)

        針對高校教務管理系統(tǒng)的建設,本文提出了基于Java EE體系結(jié)構(gòu)和分布式應用模型所設計的系統(tǒng),主要對系統(tǒng)的關(guān)鍵部分進行了詳細的設計,并對持久化層的實現(xiàn)進行了詳細的說明。

        教務管理系統(tǒng);Java EE;Hibernate框架

        高校教務管理系統(tǒng)是一個復雜的信息管理系統(tǒng),它的用戶不僅涉及教師、學生還包含了整個高校中的所有部門、院系、管理員等,這些都是構(gòu)成高校教務系統(tǒng)的關(guān)鍵要素。而本文所設計的系統(tǒng)是基于Java EE體系結(jié)構(gòu)和分布式應用模型,在這種體系架構(gòu)下,可以讓系統(tǒng)用戶不必考慮使用的時間和地點,用戶可以通過任何一臺與高校校園網(wǎng)相連的計算機完成相應的應用功能,極大的方便了用戶使用的過程,同時也節(jié)約了高校的人力和物力。

        在本系統(tǒng)的設計中,程序、數(shù)據(jù)庫和其他的一些中間件都集中在系統(tǒng)的服務器上,而用戶所使用的客戶端只需要安裝有瀏覽器和必要的上網(wǎng)裝置之外,不需要使用其他任何的組件和插件,這就極大的方便了用戶的使用。另外,本系統(tǒng)整合了校園內(nèi)分散的數(shù)據(jù)資源,統(tǒng)一搭建了數(shù)據(jù)平臺,所有用戶使用和查詢的數(shù)據(jù)都來源于同一個數(shù)據(jù)源,這就保證了數(shù)據(jù)的及時性和完整性。同時,由于系統(tǒng)是在Java EE體系架構(gòu)下設計的,當有新的業(yè)務邏輯或者原有的業(yè)務邏輯發(fā)生變化時,只需要修改服務器端的對應的個別程序組件即可,對于控制器或其他的組件,特別對于用戶的使用沒有任何的影響,這就極大的提高了系統(tǒng)維護和擴展功能。

        本文主要對系統(tǒng)的關(guān)鍵部分進行了詳細的設計,并對持久化層的實現(xiàn)進行了詳細的說明。

        一、系統(tǒng)持久化層的設計與實現(xiàn)1 持久化對象模型的設計

        圖1 持久化對象類圖

        本系統(tǒng)運用了Hibernate實現(xiàn)對象的持久化。Hibernate是為了避免使用傳統(tǒng)而繁雜的JDBC操作數(shù)據(jù)庫的方式,采用了對象/關(guān)系映射機制來支持數(shù)據(jù)庫的開發(fā),從而實現(xiàn)了以面向?qū)ο蟮姆绞絹聿倏v數(shù)據(jù)庫,保證了系統(tǒng)面向?qū)ο蟮奶匦院烷_發(fā)方式,體現(xiàn)了面向?qū)ο蟮姆治?、設計和開發(fā)流程。在系統(tǒng)利用面向?qū)ο蟮姆椒ú倏v數(shù)據(jù)庫時需要從數(shù)據(jù)庫的二維表中抽象出其特性,并進行封裝,定義出相應的對象,把這些對象抽象成對應的類,之后在服務器運行時,這些對象被持久化的保存形成了持久化對象PO。本節(jié)以學生選課系統(tǒng)為例來說明持久化對象的建立過程和方法。

        選課系統(tǒng)的主要功能是為學生、選修課程和教師之間建立一個交互平臺,教師通過該系統(tǒng)可以開設各種選修課程,學生可以通過該系統(tǒng)選擇自己感興趣的課程。當選課過程結(jié)束后,系統(tǒng)會將選擇同一門課的學生編入同一個臨時班級從而方便排課系統(tǒng)對開設的選修課程進行課表編排操作。

        根據(jù)以上的分析,可以將整個選課系統(tǒng)的持久化類設計為以下幾種:Admin系統(tǒng)管理員對象、Course 選修課程對象、Student 學生對象、Teacher 教師對象、LsBj臨時班級對象、Bj班級對象、Xk選課對象。

        在輕量級的Java EE框架下SSH的設計中,系統(tǒng)所定義的PO對象都是以獨立對象的形式進行定義的,也就是任何模塊都可以使用這些定義好的PO對象,但其實這些PO對象隱含這復雜的相互關(guān)系,分析這些對象的關(guān)系也是建立Hibernate中持久化對象操作的前提,下面就對選課系統(tǒng)的持久化對象進行分析。

        課程對象Course、學生對象Student、教師對象Teacher、選課對象Xk、班級對象Bj和臨時班級對象LsBj,這些PO對象看似獨立,卻存在著復雜的聯(lián)系,他們之間的類關(guān)系如圖1所示,當選修課程開設時,一位教師可以開設多門選修課程,而一門課程也可以由多位教師來授課,因此Teacher與Course對象存在著多對多的關(guān)系。

        表1 課程表

        另外,課程開設后,學生可以參與選課操作,一個學生可以選修一門或多門課程,而一門課程也可以由多個學生選修,因此Student與Course之間也是多對多的關(guān)系。高校的學生入學后會被編入班級中,一個班級可以包含多個學生對象,而一個學生只能從屬于唯一的一個班級對象,因此學生與班級對象之間是多對一的關(guān)系。

        通過上述的業(yè)務分析,對選課系統(tǒng)的PO對象和他們之間的關(guān)聯(lián)進行分析,建立選課系統(tǒng)的持久化對象的關(guān)系類圖,如圖1所示。

        2 持久化對象的創(chuàng)建

        從以上的類關(guān)系圖中可以看出,選課系統(tǒng)的持久化對象的關(guān)聯(lián)關(guān)系是通過PO對象的內(nèi)部屬性的方式表現(xiàn)出來的,這些屬性與其他屬性類似,賦值和取值操作都是通過set和get方法進行定義。同時,這些PO對象將來會于數(shù)據(jù)庫中表的字段相對應,Hibernate框架會將數(shù)據(jù)庫的表結(jié)構(gòu)進行反轉(zhuǎn)映射,與PO對象映射起來,這樣上層應用系統(tǒng)就可以用面向?qū)ο蟮某绦蚍椒▉碓L問數(shù)據(jù)庫的關(guān)系表。

        Hibernate對于持久化對象沒有特殊的要求,只需要持久化對象提供下無參數(shù)的構(gòu)造函數(shù)即可,當持久化對象之間的關(guān)系有多方出現(xiàn)是,需要在PO對象中重新定義一個集合屬性來表示多方的狀態(tài),下面就以“Teacher教師持久化對象”部分實現(xiàn)代碼為例:

        public class Teacher implements java. io.Serializable {

        private String teacherBh;//教師編號

        private String teacherName;//教師姓名

        private String szYx; //教師所在院系

        private Date teacherBirthday; //教師出生年月

        private Date teacherWorkTime; //教師參加工作時間

        private Set courses=new HashSet();//教師開設的選修課程集合

        public String getTeacherBh() {

        return teacherBh;

        }

        public void setTeacherBh(String teacherBh) {

        this.teacherBh = teacherBh;

        }

        二、 持久化對象模型與關(guān)系模型的轉(zhuǎn)換

        通過上面的分析與設計,可以得到選課系統(tǒng)的關(guān)鍵持久化對象類,按照Hibernate框架的對象到關(guān)系的映射規(guī)定,可以將這些定義的持久化對象反轉(zhuǎn)映射成對應的關(guān)系表,其對應關(guān)系為:持久化對象類—數(shù)據(jù)庫關(guān)系表,類屬性—關(guān)系表字段,持久化對象—關(guān)系表記錄。下面以“課程表”的轉(zhuǎn)換表為例(見表1)。

        三、對象-關(guān)系映射文件的建立

        在Hibernate的框架中,以對象/關(guān)系映射技術(shù)來實現(xiàn)從持久化對象到關(guān)系對象的轉(zhuǎn)換,該技術(shù)的核心思想就是將獨立的對象模型和關(guān)系模型之間用對象-關(guān)系映射文件來一一對應起來。在本文前面的敘述中,我們已經(jīng)完成了數(shù)據(jù)庫中關(guān)系模型和應用系統(tǒng)中持久化對象的建立,這樣使應用系統(tǒng)只需要訪問java對象來完成對數(shù)據(jù)庫表的訪問,而不需要直接訪問數(shù)據(jù)庫,但他們直接的映射需要借助于配置文件*.hbm.xml來實現(xiàn)。

        在Hibernate框架中,*.hbm.xml配置文件中定義了Java對象和數(shù)據(jù)庫關(guān)系表的對應關(guān)系,主要包括:Java類—數(shù)據(jù)庫表,Java對象—表中的記錄,Java類的屬性—關(guān)系表字。之后框架將持久化對象傳送給數(shù)據(jù)訪問對象,由數(shù)據(jù)訪問對象來實現(xiàn)系統(tǒng)業(yè)務邏輯操作,從而良好的的實現(xiàn)了業(yè)務邏輯對象和數(shù)據(jù)對象的分離。

        在Hibernate中定義PO時,每一個PO對象都會定義一個相應同名的*.hbm. xml文件,用來描述PO對象和數(shù)據(jù)庫表或者其他的對象之間的關(guān)聯(lián)關(guān)系,這樣對于PO對象來說都是獨立定義的,但在*.hbm.xml文件的定義中,這些獨立的組件就會產(chǎn)生復雜的關(guān)聯(lián)。下面我們就根據(jù)前面章節(jié)對選課系統(tǒng)的分析和PO對象的建立,為每個對象創(chuàng)建其相應的*.hbm.xml文件,分別是:Teacher.hbm. xml、Student.hbm.xml、Course.hbm.xml、Xk.hbm.xml、Bj.hbm.xml、LsBj.hbm.xml、Admin.hbm.xml。

        由于各個映射文件的結(jié)構(gòu)相似,因此我們下面只對課程Course.hbm.xml映射文件的部分實現(xiàn)代碼舉例:

        Mapping file autogenerated by MyEclipse Persistence Tools

        -->

        結(jié)語

        本文主要根據(jù)教務管理系統(tǒng)的特點,利用輕量級Java EE對系統(tǒng)進行詳細的設計和實現(xiàn),并且詳細介紹了系統(tǒng)關(guān)鍵部分持久化層的實現(xiàn),描述了系統(tǒng)持久化對象的建模過程和PO的建立的過程,并給出了相應的代碼。最后,利用對象-關(guān)系映射原則將PO對象轉(zhuǎn)換成了數(shù)據(jù)庫的關(guān)系表,給出了數(shù)據(jù)庫表的邏輯結(jié)構(gòu)。

        [1]李磊.基于J2EE構(gòu)建的遠程教學平臺的設計與實現(xiàn)[D].大連海事大學,2004.

        [2]方明霞.基于J2EE的管理信息系統(tǒng)的關(guān)鍵技術(shù)研究[D].南京理工大學,2004.

        [3]閆振福.基于J2EE平臺的教學管理系統(tǒng)設計實現(xiàn)[J].中國教育信息化,2008(09):51-52.

        TP311

        :A

        猜你喜歡
        定義對象數(shù)據(jù)庫
        神秘來電
        睿士(2023年2期)2023-03-02 02:01:09
        攻略對象的心思好難猜
        意林(2018年3期)2018-03-02 15:17:24
        數(shù)據(jù)庫
        財經(jīng)(2017年2期)2017-03-10 14:35:35
        基于熵的快速掃描法的FNEA初始對象的生成方法
        數(shù)據(jù)庫
        財經(jīng)(2016年15期)2016-06-03 07:38:02
        數(shù)據(jù)庫
        財經(jīng)(2016年3期)2016-03-07 07:44:46
        成功的定義
        山東青年(2016年1期)2016-02-28 14:25:25
        區(qū)間對象族的可鎮(zhèn)定性分析
        數(shù)據(jù)庫
        財經(jīng)(2016年6期)2016-02-24 07:41:51
        修辭學的重大定義
        當代修辭學(2014年3期)2014-01-21 02:30:44
        日本色偷偷| 一本色道久久88精品综合| 成人黄色网址| 国产无码十八禁| 精品午夜中文字幕熟女| 中文字幕一区二区三区视频| 免费少妇a级毛片人成网| 久久国产精彩视频| 国产精品久久夜伦鲁鲁| 亚洲字幕中文综合久久| 一本一道波多野结衣av中文| 精品午夜久久网成年网| 日韩精品免费一区二区中文字幕 | 日韩二三区| 亚洲全国最大的人成网站| 中文字幕av久久亚洲精品| 日躁夜躁狠狠躁2001| 一本大道久久东京热无码av| 久久开心婷婷综合中文| 国产成人av一区二区三区在线观看 | 精品国产AⅤ一区二区三区V免费| 日本免费精品免费视频| 欧美成人午夜免费影院手机在线看| 精品国产乱码久久久软件下载| 日韩欧美精品有码在线观看| 久久中文字幕亚洲综合| 野外亲子乱子伦视频丶| 无码国产精品一区二区免| 亚洲国产av中文字幕| 亚洲av综合av一区二区三区| 日日猛噜噜狠狠扒开双腿小说| 欧美日韩激情在线一区二区| 一本色道久久88加勒比综合| 亚洲性无码一区二区三区| 99热这里只有精品3| 亚洲国产av中文字幕| 久久精品丝袜高跟鞋| 国产精品成人99一区无码| 午夜一区二区三区在线视频 | 午夜三级a三级三点在线观看| 五月天精品视频在线观看|