JAVAEE--學(xué)生信息管理系統(tǒng)課程設(shè)計(jì)報(bào)告內(nèi)含工程源碼_第1頁
JAVAEE--學(xué)生信息管理系統(tǒng)課程設(shè)計(jì)報(bào)告內(nèi)含工程源碼_第2頁
JAVAEE--學(xué)生信息管理系統(tǒng)課程設(shè)計(jì)報(bào)告內(nèi)含工程源碼_第3頁
JAVAEE--學(xué)生信息管理系統(tǒng)課程設(shè)計(jì)報(bào)告內(nèi)含工程源碼_第4頁
JAVAEE--學(xué)生信息管理系統(tǒng)課程設(shè)計(jì)報(bào)告內(nèi)含工程源碼_第5頁
已閱讀5頁,還剩17頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、-. z.JAVA EE課程設(shè)計(jì)報(bào)告題目:學(xué)生信息管理系統(tǒng)學(xué)院:計(jì)算機(jī)科學(xué)與工程專業(yè):計(jì)算機(jī)科學(xué)與技術(shù)學(xué)生*:*:指導(dǎo)教師:2015年 7月 1日目錄 TOC o 1-3 h z u HYPERLINK l _Toc424458922引言 PAGEREF _Toc424458922 h 2HYPERLINK l _Toc424458923一、系統(tǒng)需求分析 PAGEREF _Toc424458923 h 2HYPERLINK l _Toc4244589241.1功能分析 PAGEREF _Toc424458924 h 2HYPERLINK l _Toc4244589251.2系統(tǒng)構(gòu)造分析 PAG

2、EREF _Toc424458925 h 2HYPERLINK l _Toc4244589261.3系統(tǒng)流程分析 PAGEREF _Toc424458926 h 2HYPERLINK l _Toc424458927二、系統(tǒng)概要設(shè)計(jì) PAGEREF _Toc424458927 h 2HYPERLINK l _Toc424458928三、系統(tǒng)詳細(xì)設(shè)計(jì) PAGEREF _Toc424458928 h 2HYPERLINK l _Toc4244589293.1數(shù)據(jù)庫(kù)設(shè)計(jì) PAGEREF _Toc424458929 h 2HYPERLINK l _Toc4244589303.1.1 設(shè)計(jì)原則 PAGER

3、EF _Toc424458930 h 2HYPERLINK l _Toc4244589313.1.2 數(shù)據(jù)庫(kù)組成 PAGEREF _Toc424458931 h 2HYPERLINK l _Toc424458932數(shù)據(jù)庫(kù)表的構(gòu)造 PAGEREF _Toc424458932 h 2HYPERLINK l _Toc4244589333.2系統(tǒng)模塊設(shè)計(jì) PAGEREF _Toc424458933 h 2HYPERLINK l _Toc4244589343.2.1 登錄模塊 PAGEREF _Toc424458934 h 2HYPERLINK l _Toc4244589353.2.2 系統(tǒng)管理模塊 P

4、AGEREF _Toc424458935 h 2HYPERLINK l _Toc4244589363.2.3 學(xué)籍管理模塊 PAGEREF _Toc424458936 h 2HYPERLINK l _Toc4244589373.2.4 成績(jī)管理模塊 PAGEREF _Toc424458937 h 2HYPERLINK l _Toc424458938四、系統(tǒng)實(shí)現(xiàn)和演示 PAGEREF _Toc424458938 h 2HYPERLINK l _Toc4244589394.1系統(tǒng)Model層實(shí)現(xiàn) PAGEREF _Toc424458939 h 2HYPERLINK l _Toc4244589404

5、.2系統(tǒng)配置和界面 PAGEREF _Toc424458940 h 2HYPERLINK l _Toc4244589414.2.1 界面實(shí)現(xiàn) PAGEREF _Toc424458941 h 2HYPERLINK l _Toc4244589424.2.2 顯示學(xué)生所選課程信息 PAGEREF _Toc424458942 h 2HYPERLINK l _Toc4244589434.2.3 顯示課程成績(jī) PAGEREF _Toc424458943 h 2HYPERLINK l _Toc4244589454.2.4 修改學(xué)生信息 PAGEREF _Toc424458945 h 2HYPERLINK l

6、 _Toc4244589464.2.5 管理員管理界面 PAGEREF _Toc424458946 h 2HYPERLINK l _Toc4244589504.2.6 hibernate配置文件設(shè)置 PAGEREF _Toc424458950 h 2HYPERLINK l _Toc4244589514.2.7 Struts-config配置文件設(shè)置 PAGEREF _Toc424458951 h 2HYPERLINK l _Toc424458953五、開發(fā)過程中所用到的技術(shù) PAGEREF _Toc424458953 h 2HYPERLINK l _Toc4244589545.1軟件工程的思想

7、方法 PAGEREF _Toc424458954 h 2HYPERLINK l _Toc4244589555.2 MVC思想 PAGEREF _Toc424458955 h 2HYPERLINK l _Toc4244589565.3 Struts2.0 PAGEREF _Toc424458956 h 2HYPERLINK l _Toc424458957六、總結(jié) PAGEREF _Toc424458957 h 2HYPERLINK l _Toc424458958參考文獻(xiàn) PAGEREF _Toc424458958 h 2-. z.引言隨著計(jì)算機(jī)技術(shù)的迅速開展和網(wǎng)絡(luò)技術(shù)的突飛猛進(jìn),人們迫切要求利用

8、這些新技術(shù)以減輕個(gè)人的工作負(fù)擔(dān)及提高工作效率。目前,學(xué)校工作繁雜、資料重多,管理信息系統(tǒng)已進(jìn)入高校,但還未普及,而對(duì)于學(xué)生信息管理來說,還沒有一套完整的、統(tǒng)一的系統(tǒng)。因此,開發(fā)一套適和群眾的、兼容性好的系統(tǒng)是很有必要的。根據(jù)開發(fā)要求,它主要應(yīng)用于教育系統(tǒng),完成對(duì)日常學(xué)生根本信息以及成績(jī)的錄入查詢更新刪除等管理操作,實(shí)現(xiàn)學(xué)生信息管理的計(jì)算機(jī)化。開發(fā)學(xué)生信息管理系統(tǒng)可使學(xué)院教職員工減輕工作壓力,比擬系統(tǒng)地對(duì)教務(wù)、教學(xué)上的各項(xiàng)效勞和信息進(jìn)展管理,同時(shí),可以減少勞動(dòng)力的使用,加快查詢速度、加強(qiáng)管理。因此,本文描述如何基于MVC框架,使用Hibernate和Struts,開發(fā)一個(gè)學(xué)生信息管理系統(tǒng)。其中,

9、Model由Hibernate來負(fù)責(zé), Control則使用Struts來實(shí)現(xiàn),利用mysql建立數(shù)據(jù)庫(kù)。本系統(tǒng)是采用B/S模式進(jìn)展開發(fā)的,系統(tǒng)的用戶權(quán)限有三種:學(xué)生、教師和系統(tǒng)管理員,不同權(quán)限用戶登入到不同的操作界面。該系統(tǒng)主要由學(xué)籍維護(hù)、選課管理、成績(jī)查詢等功能模塊組成,本文具體介紹了各功能模塊所包含的小模塊的功能,學(xué)籍維護(hù)模塊主要是對(duì)學(xué)生的根本信息進(jìn)展添加、查詢、修改、刪除;選課管理模塊主要是對(duì)選修的課程進(jìn)展添加、刪除、統(tǒng)計(jì)選修人數(shù),以及學(xué)生進(jìn)展選課和更改選課;成績(jī)查詢模塊主要是對(duì)必修課進(jìn)展添加、刪除、錄入成績(jī),以及學(xué)生進(jìn)展查詢成績(jī)等功能。工程開發(fā)的工具本系統(tǒng)采用開發(fā)1.1 MyEcli

10、pe簡(jiǎn)介MyEclipse企業(yè)級(jí)工作平臺(tái)MyEclipse Enterprise Workbench ,簡(jiǎn)稱MyEclipse是對(duì)Eclipse IDE的擴(kuò)展,利用它我們可以在數(shù)據(jù)庫(kù)和JavaEE的開發(fā)、發(fā)布,以及應(yīng)用程序效勞器的整合方面極大的提高工作效率。它是功能豐富的JavaEE集成開發(fā)環(huán)境,包括了完備的編碼、調(diào)試、測(cè)試和發(fā)布功能,完整支持HTML, Struts, JSF, CSS, Javascript, SQL, Hibernate。在構(gòu)造上,MyEclipse的特征可以被分為7類:1. JavaEE模型2. WEB開發(fā)工具3. E開發(fā)工具4. 應(yīng)用程序效勞器的連接器5. JavaE

11、E工程部署效勞6. 數(shù)據(jù)庫(kù)效勞7. MyEclipse整合幫助對(duì)于以上每一種功能上的類別,在Eclipse中都有相應(yīng)的功能部件,并通過一系列的插件來實(shí)現(xiàn)它們。MyEclipse構(gòu)造上的這種模塊化,可以讓我們?cè)诓挥绊懫渌K的情況下,對(duì)任一模塊進(jìn)展單獨(dú)的擴(kuò)展和升級(jí)。1.2 MySql簡(jiǎn)介MySQL名字的來歷MySQL是一個(gè)小型關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),開發(fā)者為瑞典MySQLAB公司,在2008年1月16號(hào)被Sun公司收購(gòu)。MySQL被廣泛地應(yīng)用在Internet上的中小型中。由于其體積小、速度快、總體擁有本錢低,尤其是開放源碼這一特點(diǎn),許多中小型為了降低總體擁有本錢而選擇了MySQL作為數(shù)據(jù)庫(kù)。與其

12、他的大型數(shù)據(jù)庫(kù)例如Oracle、DB2、SQL Server等相比,MySQL自有它的缺乏之處,如規(guī)模小、功能有限MySQL Cluster的功能和效率都相比照擬差等,但是這絲毫也沒有減少它受歡送的程度。對(duì)于一般的個(gè)人使用者和中小型企業(yè)來說,MySQL提供的功能已經(jīng)綽綽有余,而且由于MySQL是開放源碼軟件,因此可以大大降低總體擁有本錢。1.3 Tomcat簡(jiǎn)介Tomcat是Apache 軟件基金會(huì)Apache Software Foundation的Jakarta 工程中的一個(gè)核心工程,由Apache、Sun 和其他一些公司及個(gè)人共同開發(fā)而成。由于有了Sun 的參與和支持,最新的Servle

13、t 和JSP 規(guī)*總是能在Tomcat 中得到表達(dá),Tomcat 5 支持最新的Servlet 2.4 和JSP 2.0 規(guī)*。因?yàn)門omcat 技術(shù)先進(jìn)、性能穩(wěn)定,而且免費(fèi),因而深受Java 愛好者的喜愛并得到了局部軟件開發(fā)商的認(rèn)可,成為目前比擬流行的Web 應(yīng)用效勞器。Tomcat 很受廣闊程序員的喜歡,因?yàn)樗\(yùn)行時(shí)占用的系統(tǒng)資源小,擴(kuò)展性好,支持負(fù)載平衡與效勞等開發(fā)應(yīng)用系統(tǒng)常用的功能;而且它還在不斷的改良和完善中,任何一個(gè)感興趣的程序員都可以更改它或在其中參加新的功能。Tomcat 是一個(gè)小型的輕量級(jí)應(yīng)用效勞器,在中小型系統(tǒng)和并發(fā)訪問用戶不是很多的場(chǎng)合下被普遍使用,是開發(fā)和調(diào)試JSP 程

14、序的首選。對(duì)于一個(gè)初學(xué)者來說,可以這樣認(rèn)為,當(dāng)在一臺(tái)機(jī)器上配置好Apache 效勞器,可利用它響應(yīng)對(duì)HTML 頁面的訪問請(qǐng)求。實(shí)際上Tomcat 局部是Apache 效勞器的擴(kuò)展,但它是獨(dú)立運(yùn)行的,所以當(dāng)你運(yùn)行tomcat 時(shí),它實(shí)際上作為一個(gè)與Apache 獨(dú)立的進(jìn)程單獨(dú)運(yùn)行的。這里的訣竅是,當(dāng)配置正確時(shí),Apache 為HTML頁面效勞,而Tomcat 實(shí)際上運(yùn)行JSP 頁面和Servlet。另外,Tomcat和IIS、Apache等Web效勞器一樣,具有處理HTML頁面的功能,另外它還是一個(gè)Servlet和JSP容器,獨(dú)立的Servlet容器是Tomcat的默認(rèn)模式。不過,Tomcat處

15、理靜態(tài)HTML的能力不如Apache效勞器。3 數(shù)據(jù)庫(kù)的連接本系統(tǒng)采用JDBC連接方式。JDBCJava Data Base Connectivity,java數(shù)據(jù)庫(kù)連接是一種用于執(zhí)行SQL語句的Java API,可以為多種關(guān)系數(shù)據(jù)庫(kù)提供統(tǒng)一訪問,它由一組用Java語言編寫的類和接口組成。JDBC為工具/數(shù)據(jù)庫(kù)開發(fā)人員提供了一個(gè)標(biāo)準(zhǔn)的API,據(jù)此可以構(gòu)建更高級(jí)的工具和接口,使數(shù)據(jù)庫(kù)開發(fā)人員能夠用純 Java API 編寫數(shù)據(jù)庫(kù)應(yīng)用程序。有了JDBC,向各種關(guān)系數(shù)據(jù)發(fā)送SQL語句就是一件很容易的事。換言之,有了JDBC API,就不必為訪問Sybase數(shù)據(jù)庫(kù)專門寫一個(gè)程序,為訪問Oracle數(shù)據(jù)

16、庫(kù)又專門寫一個(gè)程序,或?yàn)樵L問Informi*數(shù)據(jù)庫(kù)又編寫另一個(gè)程序等等,程序員只需用JDBC API寫一個(gè)程序就夠了,它可向相應(yīng)數(shù)據(jù)庫(kù)發(fā)送SQL調(diào)用。同時(shí),將Java語言和JDBC結(jié)合起來使程序員不必為不同的平臺(tái)編寫不同的應(yīng)用程序,只須寫一遍程序就可以讓它在任何平臺(tái)上運(yùn)行,這也是Java語言編寫一次,處處運(yùn)行的優(yōu)勢(shì)。Java數(shù)據(jù)庫(kù)連接體系構(gòu)造是用于Java應(yīng)用程序連接數(shù)據(jù)庫(kù)的標(biāo)準(zhǔn)方法。JDBC對(duì)Java程序員而言是API,對(duì)實(shí)現(xiàn)與數(shù)據(jù)庫(kù)連接的效勞提供商而言是接口模型。作為API,JDBC為程序開發(fā)提供標(biāo)準(zhǔn)的接口,并為數(shù)據(jù)庫(kù)廠商及第三方中間件廠商實(shí)現(xiàn)與數(shù)據(jù)庫(kù)的連接提供了標(biāo)準(zhǔn)方法。JDBC使用已有

17、的SQL標(biāo)準(zhǔn)并支持與其它數(shù)據(jù)庫(kù)連接標(biāo)準(zhǔn),如ODBC之間的橋接。JDBC實(shí)現(xiàn)了所有這些面向標(biāo)準(zhǔn)的目標(biāo)并且具有簡(jiǎn)單、嚴(yán)格類型定義且高性能實(shí)現(xiàn)的接口。Java 具有鞏固、平安、易于使用、易于理解和可從網(wǎng)絡(luò)上自動(dòng)下載等特性,是編寫數(shù)據(jù)庫(kù)應(yīng)用程序的出色語言。所需要的只是 Java應(yīng)用程序與各種不同數(shù)據(jù)庫(kù)之間進(jìn)展對(duì)話的方法。而 JDBC 正是作為此種用途的機(jī)制。JDBC 擴(kuò)展了 Java 的功能。例如,用 Java 和 JDBC API 可以發(fā)布含有 applet 的網(wǎng)頁,而該 applet 使用的信息可能來自遠(yuǎn)程數(shù)據(jù)庫(kù)。企業(yè)也可以用 JDBC 通過 Intranet 將所有職員連到一個(gè)或多個(gè)內(nèi)部數(shù)據(jù)庫(kù)中

18、即使這些職員所用的計(jì)算機(jī)有 Windows、 Macintosh 和UNI* 等各種不同的操作系統(tǒng)。隨著越來越多的程序員開場(chǎng)使用Java 編程語言,對(duì)從 Java 中便捷地訪問數(shù)據(jù)庫(kù)的要求也在日益增加。MIS 管理員們都喜歡 Java 和 JDBC 的結(jié)合,因?yàn)樗剐畔鞑プ兊萌菀缀徒?jīng)濟(jì)。企業(yè)可繼續(xù)使用它們安裝好的數(shù)據(jù)庫(kù),并能便捷地存取信息,即使這些信息是儲(chǔ)存在不同數(shù)據(jù)庫(kù)管理系統(tǒng)上。新程序的開發(fā)期很短。安裝和版本控制將大為簡(jiǎn)化。程序員可只編寫一遍應(yīng)用程序或只更新一次,然后將它放到效勞器上,隨后任何人就都可得到最新版本的應(yīng)用程序。對(duì)于商務(wù)上的銷售信息效勞, Java 和JDBC 可為外部客戶提供

19、獲取信息更新的更好方法。系統(tǒng)需求分析1.1功能分析1用戶登錄:用戶登錄一個(gè)界面通過驗(yàn)證分為管理員,學(xué)生,教師登陸三個(gè)主頁面。學(xué)生信息管理系統(tǒng)采用用戶名及密碼驗(yàn)證模式,進(jìn)入學(xué)生信息管理系統(tǒng)前,用戶必須在登陸頁面輸入用戶名及密碼,只有驗(yàn)證通過的用戶方可進(jìn)入學(xué)生信息管理系統(tǒng)操作主頁面。2學(xué)生信息管理:管理員對(duì)學(xué)生信息進(jìn)展刪除,查詢和修改。3課程信息管理:管理員也可以進(jìn)展刪除,修改和查詢功能,同時(shí)學(xué)生可以選課和查詢?cè)撜n程成績(jī),和查詢課程成績(jī)。教師根據(jù)所授課程對(duì)學(xué)生錄入成績(jī)4用戶管理:三種用戶可進(jìn)展注銷進(jìn)展切換,可以修改密碼1.2系統(tǒng)構(gòu)造分析登陸教師登陸學(xué)生登陸后管理員登陸錄入成績(jī)修改成績(jī)查詢成績(jī)選課查

20、詢成績(jī)修改密碼錄入根本信息修改學(xué)生信息刪除學(xué)生信息修改密碼1.3系統(tǒng)流程分析通過分析描述,可以很輕松的將系統(tǒng)的運(yùn)行流程設(shè)計(jì)出來。系統(tǒng)運(yùn)行流程如下圖:開場(chǎng)登錄界面輸入用戶名稱和用戶密碼是否成功成功頁面錯(cuò)誤頁面對(duì)數(shù)據(jù)庫(kù)進(jìn)展操作顯示課程信息NY完畢學(xué)生信息管理系統(tǒng)流程圖如上圖所示:通過對(duì)流程的分析,即可進(jìn)展下一步工作系統(tǒng)的概要設(shè)計(jì)。二、系統(tǒng)概要設(shè)計(jì)運(yùn)用面向?qū)ο蟮脑O(shè)計(jì)方法,這個(gè)階段設(shè)計(jì)一下系統(tǒng)的大體框架。最直接的方法就是直接將流程圖直接映射成為工程文件。參照上一節(jié)的系統(tǒng)流程分析,直接將流程圖中的流程變?yōu)镴SP頁面,流程之間測(cè)轉(zhuǎn)換則映射成為Action和Struts的導(dǎo)航規(guī)則。系統(tǒng)中所有的數(shù)據(jù)庫(kù)相關(guān)操作

21、都由Hibernate中的DAO(數(shù)據(jù)訪問對(duì)象)類來實(shí)現(xiàn)。由于使用了JSP頁面,所以不僅可以使用HTML標(biāo)簽,同時(shí)還可以使用JSP中的EL語言和Struts中的標(biāo)簽。為了更好的配合JAVAEE開發(fā),數(shù)據(jù)庫(kù)采用MYSQL。三、系統(tǒng)詳細(xì)設(shè)計(jì)3.1數(shù)據(jù)庫(kù)設(shè)計(jì)3.1.1 設(shè)計(jì)原則(1)密碼管理:學(xué)生修改學(xué)生查詢密碼;教師可以修改查詢密碼。(2)每個(gè)教師可以查看所有學(xué)生的成績(jī),包括每門課程的成績(jī)、每門課程的平均成績(jī)、每個(gè)分?jǐn)?shù)段的成績(jī)。(3)學(xué)生根據(jù)自己的*查詢本人的成績(jī)。(4)管理員可以對(duì)學(xué)生、教師等信息進(jìn)展增加、刪除、修改等操作。3.1.2 數(shù)據(jù)庫(kù)組成本系統(tǒng)中共用到了7個(gè)數(shù)據(jù)表,如下:admin表:記

22、錄管理員信息;teacher表:記錄教師信息;student表:記錄學(xué)生學(xué)籍信息;kechengbiao表:記錄選修課信息;chegnji表:記錄學(xué)生根底課信息;成績(jī)關(guān)聯(lián)表:記錄學(xué)生根底課成績(jī)信息;選課關(guān)聯(lián)表:記錄學(xué)生選課信息。數(shù)據(jù)庫(kù)表的構(gòu)造字段名字段描述是否主鍵數(shù)據(jù)類型長(zhǎng)度約束說明admin_id管理員ID是varchar20Not null主鍵password密碼否varchar20Not null表3-1 admin表字段名字段描述是否主鍵數(shù)據(jù)類型長(zhǎng)度約束說明tno教師號(hào)是varchar20Not null主鍵tpss密碼否varchar20Not nulltname教師*否varcha

23、r20Not nullse*性別否varchar20Not nulljibie職稱否varchar20Not nulltel否varchar20Not null表3-2 teacher表字段名字段描述是否主鍵數(shù)據(jù)類型長(zhǎng)度約束說明name學(xué)生*否varchar20Not nullstu_id*是varchar20Not null主鍵password密碼否varchar20Not nullse*性別否varchar20Not nullzy專業(yè)否varchar20Not nullmz民族否char10Not nullzzmm政治面貌否varchan20Not nullcym曾用名否varchar20

24、sfz否varchar20csrq出生日期否varchar20jg籍貫否varchar20jkzk安康狀況否varchar20r*nf入學(xué)年份否varchar20jtdz家庭地址否varchar50jtdh家庭否varchar20yzbm郵政編碼否varchar10l*fs聯(lián)系方式否varchar20email否varchar20qtl*fs其他聯(lián)系否varchar20bz備注否varchar203-3 student表字段名字段描述是否主鍵數(shù)據(jù)類型長(zhǎng)度約束說明學(xué)期號(hào)學(xué)期號(hào)否varchar20o課程號(hào)是varchar20Not null主鍵ame課程名否varchar20Not null學(xué)分學(xué)

25、分否varchar20主講教師主講教師否varchar203-4 chengji表字段名字段描述是否主鍵數(shù)據(jù)類型長(zhǎng)度約束說明o課程號(hào)是varchar20Not null主鍵ame課程名否varchar20Not nulltno任課教師否varchar20星期幾星期幾否varchar20時(shí)間時(shí)間否varchar20classno上課教室否varchar20表3-5 kecheng表字段名字段描述是否主鍵數(shù)據(jù)類型長(zhǎng)度約束說明id自動(dòng)標(biāo)識(shí)是int4Not null主鍵stu_id*否varchar20Not nullo課程號(hào)否varchar20Not null成績(jī)成績(jī)否varchar20Not nu

26、ll重修成績(jī)重修成績(jī)否varchar20Not null表3-6 成績(jī)關(guān)聯(lián)表字段名字段描述是否主鍵數(shù)據(jù)類型長(zhǎng)度約束說明id自動(dòng)標(biāo)識(shí)是int4Not null主鍵stu_id*否varchar20Not nullo課程號(hào)否varchar20Not null表3-7 選課關(guān)聯(lián)表3.2系統(tǒng)模塊設(shè)計(jì)3.2.1 登錄模塊為了系統(tǒng)的平安,在進(jìn)入系統(tǒng)之前首先會(huì)出現(xiàn)一個(gè)登錄模塊,用戶只有在輸入正確的用戶名和正確的密碼之后,才能進(jìn)入系統(tǒng)。用戶登錄窗體中放置了兩個(gè)文本框,用來輸入用戶名和密碼;兩個(gè)按鈕用來確定或者重寫登錄。設(shè)置三個(gè)單項(xiàng)選擇控件,供不同用戶登錄時(shí)選擇用戶權(quán)限,管理員擁有一切權(quán)限包括添加刪除和修改以及

27、對(duì)用戶的管理,教師和學(xué)生擁有受限制的權(quán)限如查詢及修改密碼,提高了數(shù)據(jù)庫(kù)的平安性。登錄模塊圖如下列圖所示:3.2.2 系統(tǒng)管理模塊 添加用戶窗體的創(chuàng)立進(jìn)入系統(tǒng)后,將會(huì)出現(xiàn)一個(gè)主窗體,選擇系統(tǒng)管理模塊下的添加用戶,就可以進(jìn)入添加用戶窗體,可以通過該窗體增加新的用戶。在這個(gè)窗體中放置了五個(gè)文本框,用來輸入用戶名、密碼出生時(shí)間、總學(xué)分和備注;一個(gè)下拉列表框和兩個(gè)單項(xiàng)選擇框用來確定專業(yè)和性別;兩個(gè)按鈕用來確定是否添加用戶; 修改密碼窗體的創(chuàng)立在系統(tǒng)管理模塊下,進(jìn)入修改密碼窗體,用戶可根據(jù)需要修改自己的密碼。在這個(gè)窗體中放置了三個(gè)文本框,用來輸入原始密碼、新密碼和確認(rèn)新密碼;兩

28、個(gè)按鈕用來確定是否修改密碼。3.2.3 學(xué)籍管理模塊 添加學(xué)籍信息功能選擇主窗體中學(xué)籍管理模塊下的添加學(xué)籍信息,就可進(jìn)入添加學(xué)籍信息的窗體,在該窗體中我們可以對(duì)學(xué)生的*、性別、出生日期、班號(hào)等學(xué)生的信息進(jìn)展添加。添加的信息將全部存儲(chǔ)到數(shù)據(jù)庫(kù)中。在窗體上放置多個(gè)文本框和下拉式文本框,用來輸入學(xué)籍信息;兩個(gè)按鈕用來確定是否輸入學(xué)籍信息;一個(gè)按鈕用來退出窗體;多個(gè)標(biāo)簽用來提示文本框中需要輸入的內(nèi)容。 修改學(xué)籍信息功能點(diǎn)擊學(xué)籍管理模塊下的修改學(xué)籍信息,就進(jìn)入修改學(xué)籍信息的窗體,在該窗體中我們可以對(duì)前面添加的學(xué)籍信息進(jìn)展修改。由于用戶的需求不同,有的是要對(duì)學(xué)生的信息做個(gè)別的改

29、動(dòng),有的是需要?jiǎng)h除該條記錄,所以該窗體同時(shí)包括了修改記錄的功能和刪除記錄的功能。 查詢學(xué)籍信息功能進(jìn)入學(xué)籍管理模塊下的查詢學(xué)籍信息窗體,在該窗體中可以對(duì)學(xué)生的信息進(jìn)展查詢,有三種查詢方式。一方面考慮到簡(jiǎn)潔的因素,用戶可以只設(shè)置一種查詢方式進(jìn)展查詢;另一方面又為了防止數(shù)據(jù)的重復(fù),用戶可以輸入詳細(xì)的信息,也就是同時(shí)設(shè)置多種查詢方式進(jìn)展查詢。進(jìn)入查詢窗體時(shí),會(huì)顯示出所有學(xué)生的學(xué)籍信息,如果不設(shè)置查詢方式就進(jìn)展查詢,是無效查詢,系統(tǒng)會(huì)給出提示。在設(shè)置好查詢方式后,便開場(chǎng)查詢,將顯示出用戶所需的學(xué)生的學(xué)籍信息。3.2.4 成績(jī)管理模塊 成績(jī)信息管理功能點(diǎn)擊成績(jī)管理模塊下的成績(jī)

30、信息瀏覽,進(jìn)入成績(jī)信息瀏覽窗體。點(diǎn)擊工具條中的修改、添加和查詢按鈕就可分別進(jìn)入修改成績(jī)信息窗體、添加成績(jī)信息窗體和查詢成績(jī)信息窗體。這三個(gè)窗體的界面設(shè)置分別類似于學(xué)籍管理下修改學(xué)籍信息窗體、添加學(xué)籍信息窗體和查詢學(xué)籍信息窗體。四、系統(tǒng)實(shí)現(xiàn)和演示要明確的是,該工程是一個(gè)基于MVC構(gòu)造的,其中使用Struts2.0作為整個(gè)MVC的實(shí)現(xiàn),其中的Action又充當(dāng)控制器的角色(當(dāng)然包括了struts.*ml配置文件的導(dǎo)航作用),Hibernate3.1作為Model的實(shí)現(xiàn)?,F(xiàn)在在MyEclipse10下新建空的web工程,然后在工程根目錄src文件夾下建立兩個(gè)包:action包用來存放Action類,

31、entity用于存放從hibernate逆向過來的實(shí)體類的java文件。4.1系統(tǒng)Model層實(shí)現(xiàn)由于工程屬于數(shù)據(jù)庫(kù)先行的方法,因此需要將數(shù)據(jù)庫(kù)逆向成為hibernate實(shí)體類,hibernate3.1中提供了這樣的工具。在逆向之前,我們需要對(duì)我們建立好的數(shù)據(jù)庫(kù)在MyEclipse的Hibernate視圖下建立一個(gè)連接。方法是,在Hibernate視圖,左邊DB Browser鼠標(biāo)右擊-【new】,然后再?gòu)棾龅膶?duì)話框中填寫好相關(guān)信息,點(diǎn)擊【Finish】即新建一個(gè)數(shù)據(jù)庫(kù)連接。建立好需要的數(shù)據(jù)庫(kù)連接之后,就要為工程添加Hibernate組件了,方法是:方法是:在工程上點(diǎn)擊鼠標(biāo)右鍵-【MyEcli

32、pse】-【Add Hibernate capabilities】,然后選擇Hibernate版本,這里用的是3.1,然后單擊【Finish】完成Hibernate功能的添加。接下來,就可以著手將數(shù)據(jù)表逆向到Hibernate實(shí)體類了,還是要到數(shù)據(jù)庫(kù)視圖,雙擊翻開之前建立好的數(shù)據(jù)庫(kù)連接,選擇要逆向成為實(shí)體類的數(shù)據(jù)表,鼠標(biāo)右擊-【Hibernate Reserver Engineering】,在彈出來的對(duì)話框中,選擇實(shí)體類生成的位置也就是之前建立的.entity包。勾選生成DAO類,其余設(shè)置保持默認(rèn)即可,點(diǎn)擊【Finish】完成數(shù)據(jù)表的逆向,此時(shí)再回到工程視圖,可以看見生成好的實(shí)體類和實(shí)體的DA

33、O類。這里,每一個(gè)實(shí)體類實(shí)際上由三個(gè)文件組成:抽象實(shí)體類、具體實(shí)體類和實(shí)體數(shù)據(jù)庫(kù)訪問對(duì)象(DAO)。抽象類中包含了數(shù)據(jù)表的屬性和一些抽象的方法,具體實(shí)體類中則是方法的具體實(shí)現(xiàn),DAO類則是實(shí)現(xiàn)了對(duì)數(shù)據(jù)庫(kù)記錄的操作。Hibernate已經(jīng)為DAO類提供了一些常用的方法,而Hibernate自身實(shí)際上是用hql語句對(duì)數(shù)據(jù)庫(kù)進(jìn)展操作的,如果在使用過程中需要自定義新的數(shù)據(jù)庫(kù)操作方法,則可以在對(duì)應(yīng)的DAO文件中編寫相應(yīng)的方法。到此,Model層就實(shí)現(xiàn)了,由于使用了Hibernate,Model的實(shí)現(xiàn)變得非常容易。4.2系統(tǒng)配置和界面4.2.1 界面實(shí)現(xiàn)圍繞系統(tǒng)用例,從用例出發(fā)來設(shè)計(jì)所需的Action。則

34、按照用例,第一個(gè)Action的作用應(yīng)當(dāng)是實(shí)現(xiàn)用戶的登陸,假設(shè)登陸成功,該Action應(yīng)當(dāng)導(dǎo)航到用戶登陸成功界面,失敗則給出提示信息并停留在登陸頁面。登錄頁面圖如下:登錄頁面代碼如下:學(xué)生角色登錄系統(tǒng)成功后,會(huì)出現(xiàn)下面的頁面:頁面代碼如下:您已經(jīng)成功通過驗(yàn)證! 您可以使用如下效勞ahref=/studentAction.domethod=getDisplayCourse選修課程ahref=/studentAction.domethod=geCheckmark查看成績(jī)ahref=/studentAction.domethod=getEditStudent&self=1更改信息ahref=/logi

35、n.jsp注銷4.2.2 顯示學(xué)生所選課程信息4.2.3 顯示課程成績(jī)代碼如下:查看成績(jī)您所有的成績(jī)課程名稱學(xué)分成績(jī)Back 4.2.4 修改學(xué)生信息4.2.5 管理員管理界面修改學(xué)生信息修改教師信息修改課程信息修改綜合4.2.6 hibernate配置文件設(shè)置4.2.7 Struts-config配置文件設(shè)置配置局部代碼如下:五、開發(fā)過程中所用到的技術(shù)5.1 軟件工程的思想方法使用了軟件工程的來分析和設(shè)計(jì)一個(gè)系統(tǒng)。這樣做確實(shí)加快了開發(fā)的效率,使得整個(gè)開發(fā)過程變得有條理。按照軟件工程的方法思想,一開場(chǎng)就要先分析清楚需求。而需求又是由用戶、使用者來決定的也就是說,要尋找系統(tǒng)的參與者。參與者找到后

36、,開場(chǎng)分析參與者的需求,在需求的帶動(dòng)下來尋找系統(tǒng)需要完成的功能這就是用例模型。表現(xiàn)用例模型的東西就是用例圖。然后進(jìn)一步的細(xì)化用例,用簡(jiǎn)短的文字對(duì)用例進(jìn)展描述,以后再實(shí)現(xiàn)用例的時(shí)候,就可以參照用例描述來編寫流程。找完了用例,接下來要把用例組合、實(shí)現(xiàn)出來。這里結(jié)合了MVC的思想:首先通過用例分析,弄清楚用例的先后關(guān)系,繪制出整個(gè)系統(tǒng)的流程設(shè)計(jì)框架,其表現(xiàn)形式就是流程圖。流程圖的每一個(gè)過程實(shí)際上是由用例變化而來的,而每個(gè)參與者有其不同的流程。流程圖確定了,就是真正結(jié)合MVC思想的時(shí)候了。我嘗試這把流程中的每一個(gè)流程視為一個(gè)動(dòng)作和該動(dòng)作的一個(gè)返回(這個(gè)返回可能是頁面也可能是另外一個(gè)動(dòng)作),而觸發(fā)該動(dòng)作

37、的條件大多數(shù)都是用戶對(duì)界面的操作,比方用戶點(diǎn)擊了登陸。5.2 MVC思想由于系統(tǒng)的特點(diǎn),如果軟件構(gòu)造不夠清晰,則隨著系統(tǒng)越來越龐大,業(yè)務(wù)邏輯越來越復(fù)雜,開發(fā)勢(shì)必越來越困難。本系統(tǒng)的開發(fā)中用到MVC的思想,將模型層負(fù)責(zé)與數(shù)據(jù)庫(kù)交互、視圖和控制器解耦,使他們既能夠強(qiáng)有力的傳遞信息又松散耦合。這里的model使用了Hibernate實(shí)體框架,這里面最重要的思想就是將數(shù)據(jù)表映射成為Java代碼中的類,以后對(duì)Java類的對(duì)象的操作就是對(duì)對(duì)數(shù)據(jù)表中的記錄的操作。不管是JPA甚至是ASP.net MVC中的EntityFrameWork(實(shí)體框架),這樣的思想在眾多的實(shí)體框架上都是一樣的。如果需要對(duì)數(shù)據(jù)進(jìn)展更加精細(xì)的操作,可以使用HQL語言。5.3 Struts2.0Struts實(shí)際上和根本的Serverlet有些相似,不如說St

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論