999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于JAVA平臺的網上成績管理系統的設計與實現

2010-10-18 07:53:20劉永立白地動
中國教育信息化 2010年1期
關鍵詞:頁面數據庫系統

劉永立,白地動

(1.北京財貿職業學院 信息物流系,北京101101;2.北京財貿職業學院 教務處,北京 101101)

基于JAVA平臺的網上成績管理系統的設計與實現

劉永立1,白地動2

(1.北京財貿職業學院 信息物流系,北京101101;2.北京財貿職業學院 教務處,北京 101101)

將成績管理由單機操作轉變為網絡操作在目前跨校區辦公情形下尤為必要。本文以一個實際項目為藍本,論述了構建基于JAVA平臺的網上成績管理系統的設計方法與實現手段;為保證系統的穩定運行,給出了基于NETBEANS6.1開發環境下數據庫連接池的配置方法。

NETBEANS JSF RichFaces框架 成績管理 數據庫連接池

一、開發背景

目前,很多學校已實現跨校區辦公。借助網絡雖然可以迅速傳遞數據,但是如何很好地保證數據的一致、及時更新和數據的充分共享,仍然是令教學管理人員很頭疼的一件事。在眾多教學數據中,學生的成績對于學生和教師都很重要。傳統的辦公環境下,任課教師提交成績單,成績管理員核對成績并進行數據的整理和發布。這一方式帶來的主要問題是:(1)成績管理員的壓力大、時間緊,容易出錯,成績發布也不及時。(2)各個校區間數據的格式不一致,在數據共享時還需要再次進行數據的重新整理,無形中增加了工作量和出錯的機率。因此,若能構建基于B/S結構的網上成績管理系統,將傳統單機管理轉變為網絡管理,必將大大提高辦公效率,也能有效提升數據的準確性、一致性。

本文以JAVA平臺為基礎,以NETBEAN6.1為開發工具,討論了網上成績管理系統的設計與實現方法。

二、系統需求分析

系統的用戶分類如下:數據庫管理員,課表管理員,考務管理員,成績管理員,任課教師,學生。用戶的權限和職責如下:

1.數據庫管理員:(1)數據庫的初始化,主要包括:系部數據、學期數據、教師數據、班級數據、學生數據的初始化;(2)管理用戶的權限。

2.課表管理員:將指定學期的排課結果導入數據庫。排課的原始數據一般是Excel表,為了能夠進行微調,該類人員還要具備查詢和修改排課數據的權限,以便及時反映排課的變動情況。

3.考務及成績管理員:設定指定班級、指定課程的考試時間;設定成績錄入的最晚日期;設定考生的考試狀態(正式考試、補考、緩考、曠考);將任課教師提交的成績單鎖定和解鎖;將成績數據導出為指定的Excel格式。

將成績單鎖定的目的是為了避免任課教師無休止地修改成績;解鎖的目的是一旦發現錄入錯誤(盡管此類錯誤發生的可能性很小)便于任課教師修改個別學生的成績。

4.任課教師:查看自己每個學期的任課班級和課程情況;設定自己所授課程的成績分值權值(平時成績、期末成績所占比重);錄入和修改學生成績;查看學生成績,生成成績分析報告;將指定班級、指定課程的成績單數據導出為Excel格式。

5.學生:查看自己所有課程的成績。

三、功能模塊設計

通過分析系統的需求,可知網上成績管理系統涉及的功能主要是:數據的導入/導出;數據的查詢;數據的管理。具體來說,數據導入包括:教師數據導入,班級數據導入,學生數據導入,課表數據導入,成績數據導入;數據導出包括:成績數據導出;數據管理包括:課表數據管理、考務綜合管理、個人數據管理、成績權值分配、成績數據錄入;數據查詢包括:課表數據查詢、教師數據查詢、學生數據查詢、成績數據查詢。系統的主要功能模塊如圖1所示。

學期數據、系部數據相對固定且數據量很小,可以由數據庫管理員手動輸入;班級數據、學生數據、教師數據、課表數據、成績數據等數據量大,因此系統提供了導入功能;為了便于用戶修改密碼,在數據管理模塊中提供“個人數據管理”功能;為便于學生和教師查詢數據,系統提供主要數據的查詢功能;為便于教務人員和教師保存和分析數據,系統提供成績數據的導出功能。

圖1中涉及的功能模塊是系統能夠提供給所有用戶的全部功能,所有功能以菜單的方式呈現給用戶,不同類別的用戶登錄系統后,見到的功能菜單不同,能夠實現的操作也不同。比如:任課教師登錄系統后,具備“數據查詢”、“成績數據導出”操作權限,也具備“成績權值分配”、“成績數據錄入”、“個人數據管理”、“成績數據導入”操作權限,但不具備其他操作權限。不同教師用戶只能針對自己所任的課程進行成績數據錄入和成績權值分配操作。

四、數據庫設計

本系統采用MySQL Server5.0數據庫軟件。數據庫名字為“score”,所有數據表及其字段在數據庫中定義時均采用英文。系統涉及的數據庫表及其字段如下:系部(ID,名稱),教師(ID,姓名,性別,所在系部,角色),班級(ID,名稱,所在系部,班主任),學生(學號,姓名,性別,班級,角色),角色(ID,名稱),學期(ID,學期名稱),課程(ID,課程名稱),課表(ID,學期,班級,課程,教師,平時成績比重,實踐成績比重,期末成績比重),成績(ID,學期,學號,課程,平時成績,實踐成績,期末成績,總評成績,狀態開關,開考時間,最晚提交時間),成績分析(ID,學期,班級,課程,不及格人數,60-69人數,70-84人數,85-100人數,參加考試人數,及格率,良好率,平均成績)。

數據表在數據庫“score”中的定義如表1所示。

表1 數據庫s c o r e中的數據表及其字段

score表中的switch字段是控制開關,用來設定是否可以錄入成績。表1中加下劃線的字段為主鍵。

各個數據表間有一定的關聯關系,比如:課表數據表timetable與其他數據表之間的關系如圖2所示。成績數據表定義如下(包括外鍵約束和索引定義):

限于篇幅,其他數據表的定義以及外鍵約束和索引的定義不再論述。

五、系統實現

1.開發工具的選擇

本系統開發基于JAVA平臺,需要按次序安裝以下軟件:jdk1.6,netbeans6.1,GlassFishV2,MySQL Server5.0。Netbeans6.1作為Web程序的開發環境,不但內嵌了GlassFish Web服務器,而且利用該IDE可以非常方便地連接MySQL Server數據庫。為了便于操作數據庫,可以在安裝完MySQL Server5.0后,安裝Navicat8軟件,該軟件是一款不錯的MySQL Server的客戶端工具軟件。

2.框架和庫文件

JSF是一個新的基于MVC模型的Web應用框架技術。在概念和特征方面,尤其是組件方面,超過了著名的Struts框架。RichFaces是JBOSS公司開發的Web應用程序框架,它進一步豐富了JSF框架,它為構建 RIA(Rich Internet Applications)和支持 Ajax的 Web應用程序提供了大量的JSF組件。

本系統基于RichFaces框架進行開發,故此需要在netbeans6.1中添加RichFaces框架所需的相關jar文件。另外,由于在數據導入和導出過程中需要操作EXCEL文件,所以還需要jxl開源組件。

系統所需的主要JAR文件如表2所示(所有文件都可從網上下載)。

表2 系統所需J A R文件列表

3.開發環境的部署

(1)配置 web.xml和 faces-config.xml文件

由于系統基于JSF框架開發,故此需要配置web.xml文件faces-config.xml文件。在web.xml文件中主要進行RichFaces過濾器和Faces Servlet的注冊;在faces-config.xml文件中主要進行JAVA BEAN的注冊。

以下是web.xml文件中RichFaces過濾器的注冊方法:(2)數據庫連接池

通過大量的實驗測試后發現:在系統訪問人數增多以及進行大量數據的導入/導出過程中,會占用較多的數據庫連接,若出現連接耗盡的情況,系統就會癱瘓。為有效避免此種情況的出現,應采用數據庫連接池(關于連接池在GLASSFISH服務器中的的定義方法請參閱相關文檔)。首先將數據庫連接池命名為:jdbc/mySqlDb,并在Web服務器中定義;然后在系統配置文件web.xml中添加如下內容:

最后在JAVA BEAN中按照如下方法建立數據庫連接,連接池便可以使用了。

4.創建JSP

JSP(Java Server Page)頁面是用戶與系統交互的窗口。基本上,每個JSP頁面完成一個或幾個相關的功能模塊。比如,前面介紹的“成績數據導入”功能模塊、“成績數據錄入”功能模塊就可以分別由不同的JSP文件實現,當然還需要后臺BEAN的支持。下面就以“成績數據錄入”功能模塊的實現(editScore.jsp)為例,介紹JSP文件的創建方法,該JSP頁面的運行效果如圖3所示。

(1)為了使頁面支持中文,以及使用RICH FACES和JSF框架中的標簽,需要在JSP頁面頭部添加如下代碼:

(2)接著將UI控件添加在<a4j:form>標簽內部。本頁面要用到的 UI控件有:<h:commandButton>、<h:outputText>、<h:inputText>、<rich:dataTable>、<rich:column>、<a4j:support>,它們分別代表JSF命令按鈕、JSF文本輸出框、JSF文本輸入框、RICH FACES數據表格、RICH FACES表格列、ajax功能控件,其中 <a4j:support>標簽的作用是給父標簽添加ajax輔助功能。

比如,editScore.jsp頁面中“提交成績”按鈕可以按如下方式進行定義:<h:commandButton tabindex="4"value="提交成績"onclick="if(!confirm('確認提交么?'))return false" rendered="#{manageScore.editFlag}" action="#{manageScore.saveChanged}"/>。其中manageScore是用來進行成績管理的后臺JAVA BEAN。

<rich:dataTable>是RICH FACES框架中功能強大的標簽,用來顯示數據庫中的數據,該標簽內部可以嵌入<h:outputText>、<h:inputText>、<rich:column>等 標 簽 。editScore.jsp頁面中成績記錄的顯示就用到了該標簽。在使用<rich:dataTable>標簽顯示數據時,要注意設定好兩個重要屬性:binding、value。binding屬性的值是JAVA BEAN中UIDataTable類型的變量;value屬性的值一般是JAVA BEAN 中 ArrayList(或 List)類型的變量。

5.編寫 JAVA BEAN

雖然JSP頁面提供了交互的途徑,但是一切后臺操作最終都要由JAVA BEAN來完成。本系統中最主要的BEAN是數據庫操作BEAN(DbBean.java)和數據導入/導出 BEAN(ReadAndWrite.java)。 DbBean.java主要完成數據庫連接的創建,數據的查詢、插入、更新、刪除等常規數據庫操作;ReadAndWrite.java主要負責將EXCEL數據導入到數據庫,并將數據庫數據導出為EXCEL格式的文件。同時,系統還需要實體BEAN(每個數據庫表對應一個實體BEAN)和其他輔助 BEAN(如用于成績管理的BEAN:ManageScore.java)的支持。 ManageScore.java 中的saveChanged方法與圖3中的“提交成績”按鈕對應,其代碼如下(有刪節):

6.系統發布

系統開發完畢后,可以在NETBEANS6.1中右鍵單擊項目,將其打包生成.war文件,該war文件一般在項目所在路徑的dist子文件夾中。

隨后,啟動 MySQL Server5.0和 GlassFish,通過GlassFish管理員控制臺,將生成的war文件部署到Web服務器即可,如圖4所示。

[1]David Geary,Cay Horstmann.Core Java-Server Faces[M].New Jersey USA:Addison Wesley publisher2004.

[2]http://www.netbeans.org.

[3]http://www.javaeye.com/.

[4]JBoss rich faces tutorial[DB/OL],http://www.mastertheboss.com/en/web-interfaces/124-jboss-RichFaces-tutorial.html.

[5]Andrei Cioroianu.Upload Files with JSF and MyFaces.http://www.onjava.com/pub/a/onjava/2005/07/13/jsfupload.html,2005.

[6]The Java EE5 Tutorial[DB/OL],http://java.sun.com/javaee/5/docs/tutorial/doc/index.html.

(編輯:楊馥紅)

G250.73

B

1673-8454(2010)01-0048-05

猜你喜歡
頁面數據庫系統
大狗熊在睡覺
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
刷新生活的頁面
保健醫苑(2022年1期)2022-08-30 08:39:14
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
數據庫
財經(2017年2期)2017-03-10 14:35:35
數據庫
財經(2016年15期)2016-06-03 07:38:02
數據庫
財經(2016年3期)2016-03-07 07:44:46
數據庫
財經(2016年6期)2016-02-24 07:41:51
主站蜘蛛池模板: 亚洲中文字幕97久久精品少妇| 玖玖免费视频在线观看| 国产SUV精品一区二区6| 呦视频在线一区二区三区| 动漫精品啪啪一区二区三区| 国产97视频在线| av在线手机播放| 全午夜免费一级毛片| 精品一區二區久久久久久久網站| 色老二精品视频在线观看| 亚洲三级色| 日韩免费毛片视频| 99热国产这里只有精品无卡顿"| 欧美 亚洲 日韩 国产| 国产美女久久久久不卡| 国产成人亚洲精品无码电影| 无码中文字幕精品推荐| 2021精品国产自在现线看| 99久久国产精品无码| 午夜高清国产拍精品| 欧美三级视频网站| 黄色在线网| 国产国模一区二区三区四区| 91免费在线看| 99re精彩视频| 99热这里只有精品久久免费| 国产精品无码一区二区桃花视频| 99视频精品全国免费品| 久久免费观看视频| 久久久久人妻一区精品色奶水| 日韩欧美亚洲国产成人综合| 欧美精品不卡| 欧美日韩另类国产| 亚洲中文精品人人永久免费| 国产第八页| 国内精品手机在线观看视频| 欧美69视频在线| 国产成人亚洲无吗淙合青草| 91口爆吞精国产对白第三集| 999国产精品永久免费视频精品久久 | 国产一级二级在线观看| 国产欧美另类| 国产激情无码一区二区免费| 国产欧美日韩一区二区视频在线| 中文字幕有乳无码| 国产成人你懂的在线观看| 成人在线亚洲| 久久久亚洲色| 欧美区一区二区三| 欧美一级夜夜爽| 中国丰满人妻无码束缚啪啪| 国产精品一区二区在线播放| 综合色在线| 偷拍久久网| 国产精品久久久久久影院| 亚洲一区波多野结衣二区三区| 午夜视频在线观看免费网站| 成人午夜视频免费看欧美| 亚洲69视频| 免费又黄又爽又猛大片午夜| 麻豆精品视频在线原创| 成年人久久黄色网站| 色欲综合久久中文字幕网| 国产亚洲视频在线观看| 色婷婷综合在线| 亚洲精品片911| 欧美日韩国产综合视频在线观看 | 国产香蕉一区二区在线网站| 亚洲成年人网| 伊人狠狠丁香婷婷综合色| 97亚洲色综久久精品| 三区在线视频| 99热这里只有精品在线播放| 欧美另类图片视频无弹跳第一页| 国产日韩欧美中文| 亚洲精品无码抽插日韩| 国产精品lululu在线观看| 久久久久久尹人网香蕉| 国产哺乳奶水91在线播放| 亚洲天堂2014| 亚洲黄色高清| 国产精品对白刺激|