第一篇:學(xué)生管理系統(tǒng)實(shí)訓(xùn)報(bào)告
WinForm實(shí)訓(xùn)報(bào)告
項(xiàng)目名稱:學(xué)生成績管理系統(tǒng) 1.項(xiàng)目背景:Windows程序設(shè)計(jì)實(shí)訓(xùn) 2.項(xiàng)目分析:部門信息表部門編號,部門名稱,部門級別,上級部門編號,負(fù)責(zé)人,備注班級信息表班級編號,部門編號,班級名稱,班級人數(shù),備注學(xué)生信息表學(xué)生學(xué)號,學(xué)生姓名,學(xué)生性別,學(xué)生身份證,所在班級編號,備注課程信息表課程編號,課程名稱,課程介紹教師信息表教師編號,教師姓名,教師性別,教師身份證,所屬部門編號,備注成績信息表成績編號,學(xué)生學(xué)號,課程編號,學(xué)期,課程成績,備注
用戶信息表
用戶編號,用戶名,用戶密碼
3.項(xiàng)目設(shè)計(jì):
數(shù)據(jù)庫名:ScoreSystem 部門信息表(Department)
學(xué)生信息表(Student)
用戶信息表 4.任務(wù)分配李馳:數(shù)據(jù)庫設(shè)計(jì),各模塊銜接曹龍:部門管理
部門管理:1.系部門管理2.專業(yè)信息管理
系部門信息的添加、修改。專業(yè)信息的添加、修改。
登錄模塊、注冊模塊
薛巧云:學(xué)生信息管理,課程信息管理
學(xué)生信息管理:
學(xué)生信息的添加、修改、刪除、查詢。查詢應(yīng)分為:按班級查詢,按學(xué)號查詢,按姓名查詢。查詢內(nèi)容應(yīng)包括學(xué)生學(xué)號、姓名、性別、所在班級、身份證號。課程信息管理:
課程信息的添加、修改、刪除、查詢。查詢應(yīng)分為:按教師查詢(顯示該教師所教授的課程信息)張平平:成績信息管理
成績信息管理:
成績信息的添加、修改、刪除、查詢。查詢應(yīng)分為:按某個(gè)學(xué)生查詢(顯示該學(xué)生所有課程的成績),按某一門課程查詢(顯示該門課程最高成績以及最高成績?nèi)?,不及格的人員及其成績和人數(shù),該課程的平均成績,以及該門可的授課教師)、按某個(gè)班級查詢(顯示該班級所有的成績信息)適當(dāng)?shù)氖褂孟吕斜?張玲:教師信息管理
教師信息管理:
教師信息的添加、修改、刪除、查詢。查詢應(yīng)分為:按部門查詢(顯示該部門的所有教師信息)、按課程查詢(顯示該門課程的教師信息)李海鑫:班級信息管理
班級信息的管理:
班級信息的添加、修改、刪除、查詢。查詢應(yīng)分為:按某個(gè)專業(yè)查詢(顯示該專業(yè)的所有的班級)
5,每天任務(wù)必須上交,由李馳進(jìn)行考察記錄 6.項(xiàng)目研發(fā):
計(jì)劃5天完成項(xiàng)目研發(fā)技術(shù):C# + VisualStdio2005 運(yùn)行平臺:windows server 2003 操作系統(tǒng),以及安裝有SQL Server 2005 和 Visual Stdio200
5研發(fā)團(tuán)隊(duì):
項(xiàng)目組長:李馳
項(xiàng)目成員:曹龍,張平平,薛巧云,張玲,李海鑫
總結(jié):
通過為期四天的winform 實(shí)訓(xùn),作為項(xiàng)目組長,我感到數(shù)據(jù)
庫的設(shè)計(jì)至關(guān)重要,數(shù)據(jù)庫設(shè)計(jì)的好與壞直接影響后期的程序設(shè)計(jì)。經(jīng)過短短的四天,我們這個(gè)團(tuán)隊(duì)實(shí)現(xiàn)了很好的配合,大家共同討論功能的實(shí)現(xiàn)以及在不懂的地方互相幫助,體現(xiàn)出了我們的團(tuán)隊(duì)精神。
其中也有很多不足,比如我們整體對數(shù)據(jù)庫操作比較生疏,多虧曹龍龍同學(xué)不辭辛勞的為大家答疑,從而提了高整個(gè)團(tuán)隊(duì)的速度。最后,感謝老師在實(shí)訓(xùn)過程中的幫助,已經(jīng)曹龍龍、張平平、薛巧蕓、張玲、李海鑫組員對的配合!
第二篇:學(xué)生成績管理系統(tǒng)實(shí)訓(xùn)報(bào)告
鄭州輕工業(yè)學(xué)院
實(shí) 訓(xùn) 報(bào) 告
實(shí)訓(xùn)名稱:學(xué)生成績管理系統(tǒng)
姓名: 任彬彬
院(系): 軟件學(xué)院
專業(yè)班級: 網(wǎng)路管理12-0
1學(xué)號: 621213550131
指導(dǎo)教師:馬軍霞、范乃梅、徐潔、方娜、李輝、馮柳、甘琤
成績:
時(shí)間:2013 年01 月 07 日至 2013 年 01 月11 日
目錄
實(shí)訓(xùn)任務(wù)書…………………………………………………2 實(shí)訓(xùn)進(jìn)度日歷………………………………………………
3實(shí)訓(xùn)報(bào)告……………………………………………………
41.軟件需求分析…
2.系統(tǒng)詳細(xì)設(shè)計(jì)及實(shí)現(xiàn)
實(shí)訓(xùn)感想………………………………………………………
5鄭州輕工業(yè)學(xué)院軟件學(xué)院
學(xué)生實(shí)訓(xùn)任務(wù)書
一、題目
“學(xué)生成績管理系統(tǒng)”設(shè)計(jì)
二、學(xué)生信息
專業(yè) 網(wǎng)絡(luò)管理12-01學(xué)號 621213550131 姓名 任彬彬
三、用戶需求及約束條件
1、用C語言實(shí)現(xiàn)基于Dos操作系統(tǒng)的“學(xué)生成績管理系統(tǒng)”。
2、設(shè)計(jì)“學(xué)生成績管理系統(tǒng)”的用戶界面,系統(tǒng)啟動進(jìn)入后,只能通過界面菜單指令才能退出。
3、“學(xué)生成績管理系統(tǒng)”具有以下功能:
1)系統(tǒng)啟動后,彈出一個(gè)用戶界面,能實(shí)現(xiàn)人機(jī)交互的功能。而且只能通過界面菜單命令實(shí)現(xiàn)各種功能(包括系統(tǒng)退出功能)。
2)管理班級信息(顯示、增加、刪除、修改)3)管理課程信息(顯示、增加、刪除、修改)
4)管理班級與課程之間的授課關(guān)系(顯示、增加、刪除、修改)5)管理班級中學(xué)生信息(顯示、增加、刪除、修改)6)管理班級學(xué)生成績(顯示、增加、刪除、修改)7)顯示一個(gè)學(xué)生的所有成績
8)所有的數(shù)據(jù)以文本方式存儲在文件中
4、已經(jīng)提供已編譯的樣例程序以及數(shù)據(jù)讀寫、軟件界面有關(guān)的源代碼,需在已提供資源的基礎(chǔ)上完成實(shí)訓(xùn)。
四、設(shè)計(jì)要求、技術(shù)參數(shù)及設(shè)計(jì)規(guī)格
1、原始成績由老師統(tǒng)一給出,在 Excel表中;
2、設(shè)計(jì)的系統(tǒng)能夠運(yùn)行,提交源程序、目標(biāo)文件和可執(zhí)行文件;
3、提交實(shí)訓(xùn)報(bào)告,實(shí)訓(xùn)報(bào)告中列寫:1)軟件需求分析或軟件說明;3)對數(shù)據(jù)的管理方案;4)“學(xué)生成績管理系統(tǒng)”設(shè)計(jì)的思路和整體框架;5)各功能或者模塊實(shí)現(xiàn)的思路(用文字和流程圖予以說明),并交待模塊之間的接口關(guān)系;6)“學(xué)生成績管理系統(tǒng)”設(shè)計(jì)的結(jié)果。
實(shí)訓(xùn)進(jìn)度日歷
實(shí)訓(xùn)報(bào)告
軟件需求分析:管理頁面,如圖1所示
增加課程信息,然后確認(rèn)后顯示所增加的課程信息
圖
1實(shí)訓(xùn)感想
在這個(gè)星期里,我們專業(yè)的學(xué)生在專業(yè)老師的帶領(lǐng)下進(jìn)行了C語言程序?qū)嵱?xùn)的學(xué)習(xí)。在這之前我們已經(jīng)學(xué)習(xí)了一個(gè)學(xué)期,對其有一定的了解,但是也僅僅是停留在了解的范圍,對里面的好多東西感覺還是很陌生,更多的在運(yùn)用起來的時(shí)候還是感到很棘手,畢竟,萬事開頭難嘛。
由于時(shí)間的關(guān)系,我們這次實(shí)訓(xùn)課程老師給我們簡單的介紹了幾個(gè)比較重要的實(shí)際操作。上機(jī)時(shí)間是學(xué)習(xí)程序設(shè)計(jì)語言必不可少的實(shí)習(xí)環(huán)節(jié),特別是C語言靈活簡介,更需要通過編程的實(shí)習(xí)來真正掌握它。對于程序語言的學(xué)習(xí)目的,可以概括為學(xué)習(xí)語法規(guī)定、掌握程序設(shè)計(jì)方法、提高程序開發(fā)能力,這些都必須通過充分的實(shí)際上機(jī)操作才能完成。
學(xué)習(xí)C語言程序設(shè)計(jì)除了課堂講授以外,必須保證有不少于課堂講授學(xué)時(shí)的上機(jī)時(shí)間。因?yàn)槲覀兛梢?有效的利用上機(jī)實(shí)驗(yàn),更快的掌握C語言開發(fā)程序的能力,為今后的繼續(xù)學(xué)習(xí)打下一個(gè)良好的基礎(chǔ)。課程上機(jī)實(shí)驗(yàn)的目的,不僅僅是驗(yàn)證教材和講課的內(nèi)容、檢查自己縮編程序是否正確,熟悉程序開發(fā)環(huán)境、學(xué)習(xí)計(jì)算機(jī)系統(tǒng)的操作方法。一個(gè)C語言程序從編輯、編譯、連接到運(yùn)行。通過上機(jī)實(shí)驗(yàn),熟練的掌握C語言的開發(fā)環(huán)境,為以后真正編寫計(jì)算機(jī)程序打下基礎(chǔ)。
第三篇:學(xué)生管理系統(tǒng)實(shí)訓(xùn)報(bào)告(項(xiàng)目成員)
1.項(xiàng)目背景:
Windows程序設(shè)計(jì)實(shí)訓(xùn) 2.項(xiàng)目分析:部門信息表部門編號,部門名稱,部門級別,上級部門編號,負(fù)責(zé)人,備注
班級信息表班級編號,部門編號,班級名稱,班級人數(shù),備注
學(xué)生信息表學(xué)生學(xué)號,學(xué)生姓名,學(xué)生性別,學(xué)生身份證,所在班級編號,備注 課程信息表
課程編號,課程名稱,課程介紹 教師信息表
教師編號,教師姓名,教師用戶名,教師密碼,教師性別,教師身份證,所屬部門編號,備注
成績信息表成績編號,學(xué)生學(xué)號,課程編號,學(xué)期,課程成績,備注
3.項(xiàng)目設(shè)計(jì):
學(xué)生信息表(Student)
1、問題描述
學(xué)生成績管理系統(tǒng)可以對學(xué)生、課程、成績進(jìn)行管理,學(xué)生可以選擇某門課程,考試得到一個(gè)成績。這些數(shù)據(jù)信息需要保存在文件中。
2、功能要求
(1)通過從文件讀入記錄建立三張表:學(xué)生表、課程表、選課表
以數(shù)組的形式存儲:學(xué)生表(學(xué)號、姓名、性別),學(xué)號不能有重復(fù),按學(xué)號遞增排序; 以二叉排序樹的形式存儲:課程表(課程號、課程名、學(xué)分),課程號不能有重復(fù),按課程號建立二叉排序樹;
以鏈表的形式存儲:成績表(學(xué)號、課程號、成績),學(xué)號與課程號的組合不能有重復(fù),不用排序;
(2)對每個(gè)表可以進(jìn)行插入、刪除記錄,改變之后的記錄要存回文件中;(3)可以查詢某課程的平均成績、最高成績、最低成績、及格率(4)可以查詢某學(xué)生選某課程的成績,可以查詢某學(xué)生的平均成績
學(xué)生信息管理:
學(xué)生信息的添加、修改、刪除、查詢。查詢應(yīng)分為:按班級查詢,按學(xué)號查詢,按姓名查詢。查詢內(nèi)容應(yīng)包括學(xué)生學(xué)號、姓名、性別、所在班級、身份證號。
課程信息管理:
課程信息的添加、修改、刪除、查詢。查詢應(yīng)分為:按教師查詢(顯示該教師所教授的課程信
項(xiàng)目研發(fā)技術(shù):C# + VisualStdio2005
經(jīng)過一周的課程設(shè)計(jì),使我對Visual C#編程有了更深一層的了解。經(jīng)過這幾天的編程與不斷調(diào)試,我們的努力終于有了成果。我們設(shè)計(jì)的是簡單繪圖工具。這其中得用兩個(gè)不同地位的菜單對圖片進(jìn)行編輯和操作。整個(gè)設(shè)計(jì)的過程也是我們不斷學(xué)習(xí)的一個(gè)過程,我們在運(yùn)用舊知識的同時(shí)也學(xué)到了不少新知識,給自己大腦充電的同時(shí)也填補(bǔ)了一些相關(guān)知識方面的空白。
整個(gè)設(shè)計(jì)的過程中,我們不僅僅只是經(jīng)歷了是失敗與成功所帶來的啟迪,我們還體會到了一種很重要的東西,那就是團(tuán)體的力量。設(shè)計(jì)中,我們雖然分工不同,任務(wù)也有輕有重,但卻是相互協(xié)同,彼此合作。也許少了其中一個(gè),我們是可以把那分工作各自分擔(dān)下來,但是,少了其中任何一個(gè),我們都將不是一個(gè)整體。
通過這次課程設(shè)計(jì),也許大家認(rèn)為只是完成了一個(gè)學(xué)識上的考核。讓我們掌握住到了我們應(yīng)該掌握住的知識也讓我們體會到了生活中我們應(yīng)該體會到的東西。相信在今后的學(xué)習(xí)和工作中,我們,我們這個(gè)作為整體的小組,在面臨成功與挫折,失敗與教訓(xùn)時(shí),都一樣有著今天我們所收獲到的東西,和所經(jīng)歷并記住的一切。
這次課程設(shè)計(jì)我們做的程序也讓我學(xué)到了很多東西。對圖形化設(shè)計(jì)有了更具體的認(rèn)識,讓我們復(fù)習(xí)了以前學(xué)過的知識。也讓我們對有個(gè)更深刻的認(rèn)識,同時(shí)也讓我們對都更加明白和清晰了。這次的課程設(shè)計(jì)讓我與同學(xué)之間有了深入的合作,讓我認(rèn)識到了團(tuán)隊(duì)精神的重要性。也讓我學(xué)會了與別人合作。這次的設(shè)計(jì)使我受益頗深。
總之這次設(shè)計(jì),我們學(xué)到了很多東西,受益匪淺.這也就是我們這次設(shè)計(jì)的目的所在!
第四篇:學(xué)生管理系統(tǒng)實(shí)訓(xùn)報(bào)告(java語言)
《Java實(shí)訓(xùn)》設(shè)計(jì)報(bào)告
學(xué)生管理系統(tǒng)一、項(xiàng)目需求
通過與科信學(xué)院教務(wù)人員的詳細(xì)交流,目標(biāo)系統(tǒng)具備以下功能。1.教師客戶端功能 * 可以更改密碼;
* 可以添加學(xué)生,并要求填寫學(xué)生基本信息; * 可以根據(jù)學(xué)號查詢學(xué)生基本信息及其成績;
* 有權(quán)限控制,每個(gè)管理員只能管理其所在學(xué)院的信息; * 可以添加新課程、新班級;
* 可以控制選課的課程范圍,并可以控制選課的時(shí)間,即:可以控制選課開始和結(jié)束時(shí)間;
* 可以錄入成績,緩存成績,檢查無誤后公布成績。2.學(xué)生客戶端功能
* 學(xué)生可以查看自己的基本信息;
* 學(xué)生可以查看自己的成績,已修學(xué)分和不及格成績信息; * 學(xué)生端可以進(jìn)行遠(yuǎn)程選課,并且可以查看課表。根據(jù)以上相關(guān)功能,現(xiàn)規(guī)劃數(shù)據(jù)流圖和數(shù)據(jù)字典如下:
二、項(xiàng)目設(shè)計(jì)
在設(shè)計(jì)學(xué)生管理系統(tǒng)時(shí),編寫20個(gè)Java源文件:ChangePwd.java、ChangePwdTeacher.java、ChoseCourse.java、CourseTable.java、CourseManage.java、GetScore.java、GetStuInfo.java、GradeInDB.java、Login.java、NewClass.java、NewCourse.java、NewStu.java、StuClient.java、StuFailGrade.java、StuGrade.java、StuInfo.java、StuScore.java、TeacherClient.java、TeachSearchInfo.java、Welcome.java學(xué)生管理系統(tǒng)除了上述20個(gè)Java源文件所給出的類外,還需要Java系統(tǒng)提供的一些重要類,如JButton,JTextField,JTextArea,LinkedList等。
下面是20個(gè)Java源文件的功能:(1)Login.java(主類)
《Java實(shí)訓(xùn)》設(shè)計(jì)報(bào)告
Login類負(fù)責(zé)創(chuàng)建學(xué)生管理系統(tǒng)登陸界面的主窗口,該類含有main方法,學(xué)生管理系統(tǒng)從該類開始執(zhí)行。Login類是繼承Jframe類,有一個(gè)ActionListener接口,并且加載了Mysql數(shù)據(jù)庫連接。該類中有兩種身份類型:學(xué)生、管理員,在登錄窗口中選擇相應(yīng)的身份類型,輸入信息正確后就會進(jìn)入相應(yīng)的客戶端。
(2)ChangePwd.java類
該類是學(xué)生客戶端修改密碼的類,在該類中,用戶提供原始密碼(登陸成功的密碼)后并且輸入新密碼和確認(rèn)新密碼后點(diǎn)擊“確認(rèn)”按鈕就可以修改密碼。
(3)ChangePwdTeacher.java類
該類是教師客戶端修改密碼的類,在該類中,用戶提供原始密碼(登陸成功的密碼)后并且輸入新密碼和確認(rèn)新密碼后點(diǎn)擊“確認(rèn)”按鈕就可以修改密碼。
(4)ChoseCourse.java類
該類主要是控制學(xué)生選課,學(xué)生根據(jù)教師安排的課程信息,由學(xué)生輸入已經(jīng)安排好的“課程號”就可以選課。
(5)CourseTable.java類
該類主要控制學(xué)生的課程安排,就是以課表顯示學(xué)生的選課信息。(6)NewClass.java類
該類主要是有教師操作,教師通過輸入正確的班級號、班級名、專業(yè)信息后就可以添加新的班級。
(7)NewStu.java類
該類作為教師客戶端的一個(gè)主要模塊,該模塊是教師添加新學(xué)生。教師通過輸入學(xué)生的基本信息,包括:姓名、出生年月、學(xué)號、籍貫、入學(xué)年份、專業(yè)等等。這樣就可以添加新學(xué)生。
(8)StuClient.java類
該類是基于Login類的,這是學(xué)生客戶端的界面類,該類控制了學(xué)生客戶端要顯示什么內(nèi)容,由什么功能等等。包括:修改密碼、查看自己基本信息和成績、選課等功能界面的顯示。
(9)TeacherClient.java類
該類是教師客戶端界面的類,該類和StuClient類的功能基本相似,主要包括修改密碼、添加新學(xué)生、查看學(xué)生基本信息和成績信息、進(jìn)行課程安排、添加新課程和班級等功能的顯示。
(10)StuInfo.java類
《Java實(shí)訓(xùn)》設(shè)計(jì)報(bào)告
StuInfo.java類是學(xué)生查詢學(xué)生自己的基本信息。(11)TeachSearchInfo.java類
TeachSearchInfo.java類是教師根據(jù)學(xué)生提供的基本信息建立學(xué)生基本信息電子檔案。即新生報(bào)到功能的實(shí)現(xiàn)。
(12)Welcome.java類
該類最為簡單,僅僅通過一張xs.jpg圖片顯示在學(xué)生和教師客戶端中。(13)CourseManage.java類
該類是教師管理課程,教師可以對課程安排,包括:周次、任課教師、學(xué)分等信息,為學(xué)生選課做準(zhǔn)備。
(14)GetScore.java類
該類是提供學(xué)生的成績各科成績,包括及格成績和不及格成績,以及學(xué)分。(15)GetStuInfo.java類
根據(jù)學(xué)號獲得學(xué)生相應(yīng)基本信息的方法。教師在輸入學(xué)生學(xué)號后點(diǎn)擊“查詢”按鈕查看相應(yīng)學(xué)生的基本信息。
(16)GradeInDB.java類
該類的功能是公布學(xué)生某一科的成績,教師通過點(diǎn)擊“公布該科成績單”就會公布該科的成績,學(xué)生就會在學(xué)生自己客戶端查看自己的成績信息。
(17)NewCourse.java類
該類主要是有教師操作,教師通過輸入正確的課程號、課程名、學(xué)分信息后就可以添加新的課程,這個(gè)類與NewClass.Java的功能相似。
(18)StuFailGrade.java類
該類功能是顯示學(xué)生的不及格成績。學(xué)生在查看成績時(shí)候,點(diǎn)擊“不及格成績”時(shí)顯示的界面。
(19)StuGrade.java類
該類功能是顯示學(xué)生的已修課程成績。學(xué)生在查看成績時(shí)候,點(diǎn)擊“已修課程成績”時(shí)顯示的界面。
(20)StuScore.java類
該類是教師通過輸入學(xué)生的“學(xué)號”進(jìn)行查詢學(xué)生的成績信息。
1、Login類(主類)(1)數(shù)據(jù)和方法
Login類是javax.swing包中JFrame的一個(gè)字類,并實(shí)現(xiàn)了ActionListener接
《Java實(shí)訓(xùn)》設(shè)計(jì)報(bào)告
口。類中有關(guān)數(shù)據(jù)和方法的詳細(xì)說明。
1)成員變量
該類中的變量大部分都是私有的,這樣有利于信息的封裝。其中包括:
private Connection conn;//連接數(shù)據(jù)庫用到
private Statement stmt;//執(zhí)行數(shù)據(jù)庫語句 private ResultSet rs;//結(jié)果集
private JPanel jp=new JPanel();//創(chuàng)建用來存放空間的容器 private JLabel jl1=new JLabel(“用戶名”);private JLabel jl2=new JLabel(“密碼”);//創(chuàng)建用戶名和密碼輸入框
private JTextField jtf=new JTextField();private JPasswordField jpwf=new JPasswordField();private JRadioButton[] jrbArray={new JRadioButton(“普通學(xué)生”,true), new JRadioButton(“管理人員”)};//創(chuàng)建單選按鈕數(shù)組
private ButtonGroup bg=new ButtonGroup();//創(chuàng)建組 //創(chuàng)建操作按鈕
private JButton jb1=new JButton(“登陸”);private JButton jb2=new JButton(“重置”);2)方法
main(String args[]);方法是學(xué)生管理系統(tǒng)程序運(yùn)行的入口方法。Login();是構(gòu)造方法,負(fù)責(zé)完成窗口的初始化。addListener();添加事件監(jiān)聽器方法。initialFrame();初始化窗體
actionPerformed(ActionEvent e);實(shí)現(xiàn)接口方法 initialConnection();自定義的初始化數(shù)據(jù)庫連接的方法 closeConn();關(guān)閉數(shù)據(jù)庫
2、代碼
import java.awt.*;import java.awt.event.*;import javax.swing.*;import javax.swing.event.*;import java.util.*;import java.net.*;
《Java實(shí)訓(xùn)》設(shè)計(jì)報(bào)告
import java.io.*;import java.sql.*;import javax.sql.*;public class Login extends JFrame implements ActionListener { private String host;//聲明Connection引用、Statement對象引用與結(jié)果集引用
private Connection conn;private Statement stmt;
private ResultSet rs;private JPanel jp=new JPanel();//創(chuàng)建用來存放空間的容器 private JLabel jl1=new JLabel(“用戶名”);private JLabel jl2=new JLabel(“密碼”);private JLabel jl3=new JLabel(“");//正在登陸提示標(biāo)簽 //創(chuàng)建用戶名和密碼輸入框
private JTextField jtf=new JTextField();private JPasswordField jpwf=new JPasswordField();private JRadioButton[] jrbArray={new JRadioButton(”普通學(xué)生“,true),new JRadioButton(”管理人員“)};//創(chuàng)建單選按鈕數(shù)組
private ButtonGroup bg=new ButtonGroup();//創(chuàng)建組
//創(chuàng)建操作按鈕
private JButton jb1=new JButton(”登陸“);private JButton jb2=new JButton(”重置“);public Login(){ this.addListener();initialFrame();//初始化界面 } public void addListener(){ this.jb1.addActionListener(this);//為登陸按鈕注冊監(jiān)聽器
this.jb2.addActionListener(this);//為重置按鈕注冊監(jiān)聽器
this.jtf.addActionListener(this);//為用戶名文本框注冊監(jiān)聽器 this.jpwf.addActionListener(this);//為用戶名密碼框注冊監(jiān)聽器 } public void initialFrame(){ jp.setLayout(null);//設(shè)為空布局
//將控件添加到容器相應(yīng)位置
jl1.setBounds(30,100,110,25);jtf.setBounds(120,100,130,25);jl2.setBounds(30,140,110,25);jpwf.setBounds(120,140,130,25);jpwf.setEchoChar('*');bg.add(jrbArray[0]);bg.add(jrbArray[1]);jrbArray[0].setBounds(40,180,100,25);jrbArray[1].setBounds(145,180,100,25);jb1.setBounds(35,210,100,30);jb2.setBounds(150,210,100,30);jl3.setBounds(40,250,150,25);this.add(jp);
jp.add(jl1);jp.add(jtf);jp.add(jl2);jp.add(jpwf);
jp.add(jrbArray[0]);jp.add(jrbArray[1]);jp.add(jb1);jp.add(jb2);jp.add(jl3);
《Java實(shí)訓(xùn)》設(shè)計(jì)報(bào)告
//設(shè)置窗口的標(biāo)題、大小、位置以及可見性 this.setTitle(”登陸“);this.setResizable(false);Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();int centerX=screenSize.width/2;int centerY=screenSize.height/2;int w=300;//本窗體寬度 int h=320;//本窗體高度
this.setBounds(centerX-w/2,centerY-h/2-100,w,h);//設(shè)置窗體出現(xiàn)在屏幕中 this.setVisible(true);} public void actionPerformed(ActionEvent e){ if(e.getSource()==jb1)
{//按下登陸按鈕
String name=this.jtf.getText().trim();if(name.equals(”“)){
JOptionPane.showMessageDialog(this,”請輸入用戶名“,”錯(cuò)誤“,JOptionPane.ERROR_MESSAGE);
jl3.setText(”“);return;} String pwd=new String(jpwf.getPassword()).trim();if(pwd.equals(”“)){
JOptionPane.showMessageDialog(this,”請輸入密碼“,”錯(cuò)誤“,JOptionPane.ERROR_MESSAGE);
jl3.setText(”“);return;
}
int type=this.jrbArray[0].isSelected()?0:1;//獲取登陸類型
try
{//初始化連接
this.initialConnection();
if(type==0){//普通學(xué)生登陸
String sql=”select * from user_stu where stu_id='“+name+”' and
rs=stmt.executeQuery(sql);if(rs.next())
{ new StuClient(name);//創(chuàng)建學(xué)生客戶短窗口
this.dispose();//關(guān)閉登陸窗口并釋放資源 } else
{//彈出錯(cuò)誤提示窗口
JOptionPane.showMessageDialog(this,“用戶名或密碼錯(cuò)誤”,“錯(cuò)pwd='”+pwd+“'”;
誤“,JOptionPane.ERROR_MESSAGE);
jl3.setText(”“);
《Java實(shí)訓(xùn)》設(shè)計(jì)報(bào)告
}
this.closeConn();//關(guān)閉連接,語句及結(jié)果集
} else{//教師登陸
String sql=”select coll_id from user_teacher where uid='“+name+”' and pwd='“+pwd+”'“;
rs=stmt.executeQuery(sql);
if(rs.next())
{ String coll_id=rs.getString(1);new TeacherClient(coll_id);//創(chuàng)建教師客戶端窗口
}
this.dispose();//關(guān)閉登陸窗口并釋放資源
else
{//彈出錯(cuò)誤提示窗口
JOptionPane.showMessageDialog(this,”用戶名或密碼錯(cuò)誤“,”錯(cuò)誤“,JOptionPane.ERROR_MESSAGE);
jl3.setText(”“);
}
}
this.closeConn();
//關(guān)閉連接,語句及結(jié)果集
} catch(SQLException ea){ ea.printStackTrace();}
} } else if(e.getSource()==this.jb2)//按下重置按鈕,清空輸入信息 { this.jtf.setText(”“);this.jpwf.setText(”“);} else if(e.getSource()==jtf)//當(dāng)輸入用戶名并回車時(shí) {this.jpwf.requestFocus(true);} else if(e.getSource()==jpwf)//當(dāng)輸入密碼并回車時(shí) {this.jb1.requestFocus(true);} //自定義的初始化數(shù)據(jù)庫連接的方法 public void initialConnection(){ try {//加載驅(qū)動,創(chuàng)建Connection及Statement Class.forName(”org.gjt.mm.mysql.Driver“);
conn=DriverManager.getConnection(”jdbc:mysql://localhost:3306/test“,”root“,”root“);
stmt=conn.createStatement();} catch(SQLException e){
JOptionPane.showMessageDialog(this,”連接失敗,請檢查主機(jī)地址是否正確“,”錯(cuò)誤",JOptionPane.ERROR_MESSAGE);
《Java實(shí)訓(xùn)》設(shè)計(jì)報(bào)告
e.printStackTrace();
} catch(ClassNotFoundException e){ e.printStackTrace();}
} //初始化的關(guān)閉數(shù)據(jù)庫連接的方法 public void closeConn(){ try
{ if(rs!=null){rs.close();} if(stmt!=null){stmt.close();} if(conn!=null){conn.close();} } catch(SQLException e){ e.printStackTrace();}
} public static void main(String args[]){ Login login=new Login();//創(chuàng)建登陸窗體對象} }
3、效果圖
Login創(chuàng)建的窗口效果如圖1所示。
圖1 登錄窗體
《Java實(shí)訓(xùn)》設(shè)計(jì)報(bào)告
學(xué)生管理系統(tǒng)共有三個(gè)窗體:登錄窗體、教師客戶端窗體、學(xué)生客戶端窗體。主要操作如下:
(1)如果用戶名或密碼錯(cuò)誤,則會彈窗錯(cuò)誤提示對話框,如圖2所示。
圖2 錯(cuò)誤提示框
(2)當(dāng)用戶為教師時(shí),登錄成功后的窗體會自動全屏顯示,展開左邊的樹狀列表,如圖3所示,然后通過單擊不同節(jié)點(diǎn)進(jìn)行相應(yīng)的業(yè)務(wù)操作。
(3)通過單擊“退出”節(jié)點(diǎn)時(shí),系統(tǒng)會彈出對話框確認(rèn),如圖4所示,根據(jù)用戶選擇進(jìn)行相應(yīng)操作。
圖3教師客戶端主窗
《Java實(shí)訓(xùn)》設(shè)計(jì)報(bào)告
圖4退出確認(rèn)效果
(4)當(dāng)有新生報(bào)到時(shí),用戶可以單擊“新生報(bào)到”節(jié)點(diǎn),進(jìn)入如圖5所示的添加學(xué)生窗體界面。
圖5 添加學(xué)生窗體
(5)當(dāng)教師需要查詢某個(gè)學(xué)生的基本信息時(shí),可以單擊“基本信息查詢”節(jié)點(diǎn)輸入學(xué)號進(jìn)行查詢,界面如圖6所示。
《Java實(shí)訓(xùn)》設(shè)計(jì)報(bào)告
圖6 學(xué)生基本信息查詢窗
(6)每學(xué)期開始,各學(xué)院都應(yīng)該為學(xué)生安排可選課程,這時(shí)可以通過“開課選項(xiàng)設(shè)置”進(jìn)入選課設(shè)置界面進(jìn)行操作,如圖7所示。教師進(jìn)行課程設(shè)置后效果如圖8所示
圖7
開課選項(xiàng)設(shè)置
《Java實(shí)訓(xùn)》設(shè)計(jì)報(bào)告
圖8 開課選項(xiàng)設(shè)置效果
(7)在每個(gè)學(xué)期期末,需要對學(xué)生的成績進(jìn)行錄入,用戶通過“課程成績錄入”模塊進(jìn)行錄入操作,如圖9所示。
圖9 成績錄入窗體
(8)教師還可以通過點(diǎn)擊“添加課程”、“添加班級”節(jié)點(diǎn),進(jìn)行添加課程和班級操作,如圖10和圖11所示。
《Java實(shí)訓(xùn)》設(shè)計(jì)報(bào)告
圖10添加課程效果圖
圖11添加班級效果圖
(9)教師可以點(diǎn)擊“修改密碼”來修改自己的登錄密碼,如圖12所示。(10)如果用戶是學(xué)生,登錄后的窗體也會自動全屏顯示,展開樹狀列表后的界面如圖13所示。
《Java實(shí)訓(xùn)》設(shè)計(jì)報(bào)告
圖12修改密碼效果
圖13學(xué)生客戶端窗體
(11)當(dāng)學(xué)生需要選課時(shí),可以通過單擊“選課”節(jié)點(diǎn)進(jìn)入如圖14所示的選課界面進(jìn)行選課。
(12)在學(xué)生選課過程中,隨時(shí)可以點(diǎn)擊“課表顯示”節(jié)點(diǎn)查看課表,如圖15所示。
(13)學(xué)生點(diǎn)擊“已修課程成績”節(jié)點(diǎn)時(shí),便可進(jìn)入已修課程查看界面,查看成
《Java實(shí)訓(xùn)》設(shè)計(jì)報(bào)告
績和學(xué)分,如圖16所示。
圖14 學(xué)生選課界面
圖15 學(xué)生課表顯示界面
《Java實(shí)訓(xùn)》設(shè)計(jì)報(bào)告
圖16 已修課程查看窗體
三、項(xiàng)目總結(jié)
學(xué)生管理系統(tǒng)的完成,對學(xué)校的管理帶來了方便,也對教師是一個(gè)很好的幫助,方便管理,提高了工作的效率。在本系統(tǒng)開發(fā)過程中,由于本人是初次開發(fā)軟件,在知識、經(jīng)驗(yàn)方面存在不足。另外在整個(gè)開發(fā)過程中,時(shí)間也比較倉促,因此,該系統(tǒng)必然存在一些缺陷和不足。因?yàn)閷W(xué)生的管理整個(gè)流程不夠熟悉,在需求分析時(shí)未能做到完全滿足用戶的需求。另外,由于自身對網(wǎng)絡(luò)的不熟悉,本應(yīng)做到C/S客戶端/服務(wù)器的軟件,結(jié)果不能達(dá)到預(yù)期效果,實(shí)為遺憾。
雖然該系統(tǒng)存在諸多的不足,但其功能均已經(jīng)實(shí)現(xiàn),易于日后程序的更新、數(shù)據(jù)庫管理容易、界面友好、操作方便、安全性好。相信本學(xué)生管理系統(tǒng)是一套學(xué)校在日常管理中必不可少的管理軟件。
四、心得體會
通過開發(fā)這個(gè)軟件,我掌握了項(xiàng)目的開發(fā)過程,了解了基本知識,鞏固了我對Java編程語言和軟件工程思想的學(xué)習(xí),掌握了簡單的數(shù)據(jù)庫操作。尤其掌握了樹狀列表作為導(dǎo)航的重要性,并且能夠運(yùn)用。同時(shí)編寫這個(gè)程序讓我更好的理解了數(shù)組、類的運(yùn)用及事件的監(jiān)聽和獲取等功能。我相信我會再在java方面下苦工的,相信自己一定能更好的運(yùn)用java編程語言的。
第五篇:運(yùn)輸管理系統(tǒng)實(shí)訓(xùn)報(bào)告
TMS
運(yùn)輸管理系統(tǒng)操作實(shí)驗(yàn)報(bào)告 學(xué) 院: 班 級: 物流管理8Z1042報(bào)告人:指導(dǎo)老師:楊瀟
2012年 11月7日
一、前言
隨著經(jīng)濟(jì)全球化和信息技術(shù)的快速發(fā)展,現(xiàn)代物流作為新興的支柱產(chǎn)業(yè),已經(jīng)成為中國經(jīng)濟(jì)發(fā)展的重要產(chǎn)業(yè)和新的經(jīng)濟(jì)增長點(diǎn),物流服務(wù)業(yè) >服務(wù)業(yè)被譽(yù)為“21世紀(jì)最具有發(fā)展?jié)摿Α钡男袠I(yè)之一。
現(xiàn)代物流業(yè)是國民經(jīng)濟(jì)發(fā)展的基礎(chǔ)和引擎。發(fā)展現(xiàn)代物流業(yè)是社會化大生產(chǎn)快速發(fā)展和社會分工不斷細(xì)化的客觀需要,是連接生產(chǎn)和消費(fèi)的關(guān)鍵環(huán)節(jié),對于促進(jìn)區(qū)域產(chǎn)業(yè)結(jié)構(gòu)優(yōu)化升級、滿足人民群眾多樣化需求、改善城市投資環(huán)境,推動我市經(jīng)濟(jì)又好又快、和諧發(fā)展具有重要意義。
二、實(shí)訓(xùn)目的1、了解并運(yùn)用TMS運(yùn)輸管理系統(tǒng)。
2、熟悉TMS的基本資料、客戶管理、客戶合同、運(yùn)輸訂單、財(cái)務(wù)報(bào)告等9個(gè)模塊。
三、實(shí)訓(xùn)項(xiàng)目的簡單概述
TMS全稱為“Transportation Management System” 的英文縮寫,意為運(yùn)輸管理系統(tǒng),是一種“供應(yīng)鏈”分組下的(基于網(wǎng)絡(luò)的)操作軟件。它能通過多種方法和其他相關(guān)的操作一起提高物流的管理能力;包括管理裝運(yùn)單位,指定企業(yè)內(nèi)、國內(nèi)和國外的發(fā)貨計(jì)劃,管理運(yùn)輸模型、基準(zhǔn)和費(fèi)用,維護(hù)運(yùn)輸數(shù)據(jù),生成提單,優(yōu)化運(yùn)輸計(jì)劃,選擇承運(yùn)人及服務(wù)方式,招標(biāo)和投標(biāo),審計(jì)和支付貨運(yùn)賬單,處理貨損索賠,安排勞力和場所,管理文件(尤其當(dāng)國際運(yùn)輸時(shí))和管理第三方物流。
運(yùn)輸管理系統(tǒng)(TMS):主要的功能主要有管理運(yùn)輸任務(wù)、制定運(yùn)輸計(jì)劃,派車管理、發(fā)運(yùn)管理、車輛跟蹤管理,外包運(yùn)輸跟蹤,回單確認(rèn),結(jié)算等。
運(yùn)輸是物流中的重要環(huán)節(jié),在各個(gè)環(huán)節(jié)中運(yùn)輸時(shí)間及成本占有相當(dāng)比重?,F(xiàn)代運(yùn)輸管理是對運(yùn)輸網(wǎng)絡(luò)的管理,在這個(gè)網(wǎng)絡(luò)中傳遞著不同區(qū)域的運(yùn)輸任務(wù)、資源控制、狀態(tài)跟蹤、信息反饋等等信息,通過手工控制運(yùn)輸網(wǎng)絡(luò)信息效率低、準(zhǔn)確性差、反映遲緩,無法滿足客戶需求。特別是煙草行業(yè),要求以最快的速度、最低的成本完成運(yùn)輸作業(yè),并能夠及時(shí)掌握貨物狀態(tài)。
四、實(shí)驗(yàn)軟件系統(tǒng)的評價(jià)及體會
我通過參與物流軟件系統(tǒng)在電腦上的操作,加深了對TMS運(yùn)輸管理系統(tǒng)流程的了解和
掌握。通過理論與實(shí)踐的結(jié)合,培養(yǎng)我們的創(chuàng)新能力,實(shí)際操作能力,為步入社會和工作打下了良好的基礎(chǔ)。通過學(xué)習(xí)TMS運(yùn)輸管理系統(tǒng)的軟件,結(jié)合實(shí)際情況,了解產(chǎn)品從客戶發(fā)出訂貨單到客戶的到貨簽收的一個(gè)商業(yè)流通過程,加深對課本理論知識的認(rèn)識,了解并掌握物流行業(yè)中,各部門的運(yùn)作過程,使我們能快速投身社會實(shí)踐中。
實(shí)訓(xùn)過程中,我發(fā)現(xiàn)系統(tǒng)是有問題的,作為物流企業(yè)一個(gè)信息系統(tǒng)如果不好的話,就會浪費(fèi)時(shí)間,浪費(fèi)金錢,所以還是要學(xué)好信息系統(tǒng)的東西,研究問題產(chǎn)生的原因,解決問題,為企業(yè)創(chuàng)造更多的“時(shí)間價(jià)值”。同時(shí)應(yīng)多注重專業(yè)人才的培養(yǎng),提高員工的素質(zhì)以及綜合能力。
五、系統(tǒng)改良建議:
1、該系統(tǒng)可以加上一些模塊,如果來模擬案例資料的話,只要你選擇案例,系統(tǒng)會自動生成一個(gè)實(shí)驗(yàn)項(xiàng)目。
2、可以加一個(gè)評分模塊,每次做完實(shí)驗(yàn),系統(tǒng)會自動給你的實(shí)驗(yàn)打分,并顯示每小塊的得分以及出錯(cuò)的地方。
3、我覺得系統(tǒng)其實(shí)可以不定期的升級,因?yàn)榍捌诘南到y(tǒng)并不完善,導(dǎo)致有的實(shí)驗(yàn)項(xiàng)目不能完成,所以可以通過升級,完善系統(tǒng),使我們可以更好地完成項(xiàng)目。