1. 程式人生 > >java學生資訊錄入系統課程設計報告

java學生資訊錄入系統課程設計報告

每個人做的不一樣,下面附上與此設計報告相匹配的程式碼,詳細可見
http://blog.csdn.net/qiaoermeng/article/details/79297626(注意類名,包名要一致,若有問題可留言解答,(^▽^))
封面(各自要求不一樣)
目錄為:
這裡寫圖片描述
緒論
JAVA不僅是一門最為流行的計算機語言,而且已經形成一種專門的技術,帶來了20世紀末和本世紀初網路科技和網路經濟超常發展。JAVA的與平臺無性、高可靠性、安全機制和內嵌網路支援等特性使它成為編寫網路應用程式的首選工具之一。
從另一方面來看,軟體開發的規模也日漸擴大,對軟體質量的要求越來越高,與之相對應的是,各種軟體技術和工具層出不窮,各種軟體開發、軟體質量控制、軟體管理法方法學業日漸成熟。面對軟體發展的這一現狀和趨勢,無論是擁有計算機基礎知識的學生還是IT領域的起步者,熟練掌握一門語言都是至關重要的。JAVA是一個面向物件的程式設計軟體,它將重點放在資料和物件的介面上,與C++相比的主要不同在於多繼承,在JAVA中,取而代之的是簡單的介面,以及JAVA的元類模型。這也很大程度上給我們初學程式設計的人帶來很呆的方便,也使我們更容易掌握JAVA程式設計的一些基本要領和深層知識。該程式是利用檔案來實現學生資訊錄入及提交的,程式的重要作用是對學生資訊進行錄入,使同學們進一步理解概JAVA的基本概念、理論和方法,初步掌握JDK、Eclipse的除錯和應用,以及程式中錯誤的解決方法,明確JAVA在實際程式設計中的應用。使課堂中學習到理論得到應用,練習檔案形式在JAVA程式設計中的應用。
這次的資訊錄入就是用JAVA語言來建立三個介面,並且實現三個介面之間的切換。從而,實現真正意義上的資訊錄入。

【關鍵詞】:面向物件;介面卡;繼承;異常處理

第1章 課程設計任務及要求
1、編寫一個學生資訊登記系統,在新生入學時,用於錄入學生的各種資訊,如姓名,性別,班級,電話,手機,電子郵箱,通訊地址,郵政編碼等。
2、在圖形使用者介面上,有選單欄以及各種各樣的控制元件,並且相應的實現其功能。
3、當學生的資訊被錄入後,需要儲存在檔案中。
第2章 程式簡介
此次程式設計,總共三個模組,分別是login(登入介面),myfram1(資訊錄入介面)以及tijiao(資訊提交介面):
對於第一個模組即login(登入介面),首先設計一個容器,然後在容器中加入面板使用JPanel,面板佈局設定為gridLayout,在賬號,密碼這一塊使用JLabel、JTextField、JPasswordField,登入和取消使用按鈕JButton。最後給登入和按鈕按鈕新增滑鼠處理事件。
對於第二個模組即myfram1(資訊錄入介面),首先設計一個容器,然後在容器中加入面板使用JPanel,面板佈局設定為gridLayout,基本資訊使用JLabel、JTextField、JComboBox、JMenu、JMenuItem、JMenuBar、JPanel,最後給儲存和提交按鈕新增滑鼠處理事件,同時附加了檔案流的處理。
對於第三個模組即tijiao(資訊提交介面),首先設計一個容器,然後在容器中加入面板使用JPanel,面板佈局設定為gridLayout,基本資訊使用JLabel、JTextField、JComboBox、JMenu、JMenuItem、JMenuBar、JPanel,最後給儲存和提交按鈕新增滑鼠處理事件。點選第二個模組的提交按鈕後用TextArea將
由第二個模組點選儲存生成的學生資訊檔案讀取出來,最後給退出系統按鈕新增滑鼠處理事件,同時附加了檔案流的處理。
第3章、功能模組的設計和實現
3.1總模組的設計
3.1.1總模組設計流程圖
流程圖

以上為學生資訊錄入系統總模組設計流程圖
3.1.2介面設計
(1)login(登入介面):
建立一個登陸介面,學生能夠用自己的學號和密碼來從此視窗登陸進去下一個頁面(資訊錄入介面)。如下圖一所示:

這裡寫圖片描述
圖一
此介面包含學號密碼的登陸,以及登陸後續的操作(後面細說)。
(2)myfram1(資訊錄入介面):
建立一個資訊錄入介面,學生能夠用點選第一個login(登入介面)中的登陸之後進入這個介面,之後,錄入自己的基本資訊,其中的儲存按鈕,可以將學生錄入的資訊儲存到f盤中的學生一個名為“學生資訊”的txt檔案中,點選提交按鈕可以進入到下一個介面。如下圖二所示:

這裡寫圖片描述
圖二
(3)tijiao(資訊提交介面):
建立一個資訊提交介面,學生能夠通過點選myfram1(資訊錄入介面)中的提交按鈕之後進入這個介面,並且將學生最後一次儲存的資訊展示出來,此介面還有一個退出系統的按鈕,用於退出系統。如下圖三所示:
這裡寫圖片描述


圖三
3.1.3功能設計
這個學生資訊錄入系統的基本功能按鈕就是介面之間的切換,以及檔案的儲存以及檔案的讀取。
(1)login(登入介面)中的登陸按鈕:
這個登陸按鈕功能是隻有在學號和密碼同時正確的情況下才能登陸進去第二個模組,myfram1(資訊錄入介面)。如果錯誤的情況下會出現下圖四所示的情況,並且清空所填寫的錯誤的賬號或者密碼資訊,以便學生可以快速填寫正確賬號或者密碼資訊。如果賬號密碼資訊填入正確的情況,則直接進入到第二個模組,即myfram1(資訊錄入介面),如圖五所示。

這裡寫圖片描述
圖四

這裡寫圖片描述
圖五
(2)myfram1(資訊錄入介面)選單欄中的選單項退出:
學生點選此選單項,可以直接退出此視窗。如下圖六,圖七所示:

這裡寫圖片描述
圖六
這裡寫圖片描述
圖七

(3)myfram1(資訊錄入介面)儲存按鈕:
如果必填項已經填寫過的情況下,則會在f盤生成一個檔案(如圖八),名字為學生資訊.txt。最新一次錄入資訊的內容將會在此檔案當中展示出來,如圖九所示:
這裡寫圖片描述
圖八
這裡寫圖片描述
圖九
如果必填項沒有全部填寫(帶*)的情況下,則在學生點選儲存按鈕的時候,將會彈出一個對話方塊,用於提示必填項沒有填寫,如圖十所示:

這裡寫圖片描述
圖十
(4)myfram1(資訊錄入介面)提交按鈕:
在學生將資訊儲存之後(點選了儲存按鈕),再點選提交按鈕,就會在另外一個視窗展示學生最後一次錄入的資訊,而且不能被修改。展示的結果如圖十一所示:

這裡寫圖片描述
圖十一
(5)tijiao(資訊提交介面)退出系統按鈕:
在這個介面中,點選退出系統按鈕,系統會退出資訊錄入系統(關閉這個資訊提交介面)。
3.2各個子模組的設計和實現
(1)login(登入介面)
這個介面需要實現的功能就是在賬號和密碼同時正確的情況下,需要登陸到第二個模組(資訊錄入介面)。包括的基本元件:標籤,文字框,密碼框,按鈕。包括的功能:登陸按鈕實現介面切換,判斷密碼的正確與否,取消按鈕退出視窗。
介面控制元件方面:JPanel ,JLabel,JButton,JPasswordField,JTextField這些類的物件初始化,之後加入到內容面板上面。
佈局方面:設定為BorderLayout佈局,將contJPanel設定為內容面板,將其餘的四個p1,p2,p3,p4,新增到contJPanel裡面,之後,將控制元件新增其中。以下是介面設計部分程式碼。
這裡寫圖片描述

功能方面:對登陸按鈕和取消按鈕新增滑鼠處理事件,當點選登陸的時候,可以進入到資訊錄入介面,操作很簡單,就是關閉當前視窗,新建另一個視窗(可以用建立第二個視窗的物件來實現,因為在建立物件的時候,系統會自動呼叫其建構函式)。具體程式碼如下:

這裡寫圖片描述
(2)myfram1(資訊錄入介面)
這個介面需要的功能就是在必填項已經填寫完整的情況下,可以實現資訊被存入檔案當中,而且可以被讀出來。
介面控制元件方面:JPanel ,JLabel,JButton,JMenu,JComboBox,JTextField這些類的物件初始化,之後加入到內容面板上面。
佈局方面:同上。以下為介面部分程式碼:

這裡寫圖片描述
這裡寫圖片描述
這裡寫圖片描述

功能方面:對儲存按鈕和取消按鈕新增滑鼠處理事件,當點選儲存的時候,在必填項已經填寫完整的時候,會生成一個檔案,即新增一個滑鼠事件,具體程式碼如下:
這裡寫圖片描述
這裡寫圖片描述

對於提交按鈕,會在視窗展示最後一次儲存的學生資訊。(在提交介面介紹具體程式碼)。
(3)tijiao(資訊提交介面)
這個介面是最簡單的一個介面,作用就是將檔案讀出來,並且可以退出此介面。
介面控制元件方面:JButton,TextArea等類的物件初始化,再將其新增到內容面板上。
佈局:同上。此處程式碼比較簡單,就不做展示了。
功能方面,即讀取檔案(注意要對異常進行處理,即拋異常),具體程式碼如下,退出系統按鈕功能同之前退出視窗一樣。

這裡寫圖片描述
第4章 出現的問題及解決方案
出現的問題:在這次課程設計的過程中,出現的問題有兩個:(1)不知道如何佈局。起初在設計的時候,只知道元件的功能以及作用,但是新增上去的部件怎麼去給它固定,排版,這個算是當時很是頭疼的問題。(2)不知道怎麼進行介面之間的切換。雖說知道一定是給按鈕新增滑鼠處理事件,但是是怎麼去具體的處理這個事件,當時是不清楚的。
解決方案:對於第一個問題,這個問題是在看完書後解決的,上面清楚的說明了如何佈局。但是一開始還是有點不是很清楚,於是詳細的細細研究,發現可以先設定一個面板為內容面板,然後在內容面板上面新增其他的小面板,再在小面板上面新增所需要的控制元件(可以這麼理解,先在frame上面放一個大布,這個布覆蓋了整個視窗,再在這個大布上面放其他的小布,至於小布怎麼擺放就是要看大布的佈局方式了,然後再在小布上面新增所需要的部件,為了可以讓部件看著特別完整美觀,可以進一步對於小布進行佈局的設定,這樣層層巢狀,就可以很完整的把佈局整好了,而且外觀整齊大方);對於第二個問題,這個問題是百度了一下,雖說當時百度上面說的特別簡單,只有一句話,就是關閉當前視窗,開啟新視窗。不過這個問題很簡單的就解決了。

第5章 程式的亮點
這個程式比較出彩的地方:
(1)登陸的時候辨別正確性,只有當賬號和密碼全部都正確的情況下,才可以跳轉到資訊錄入頁面。否則的話,會提示有錯。
(2)儲存資訊的時候,只有把必填項全部填寫才會進行這個按鈕的儲存資訊的功能,否則的話,會提示重新輸入必填項。
(3)資訊不僅儲存在了一個檔案當中,在點選提交按鈕的時候,這個檔案當中的內容會在新的視窗當中顯示出來。

結論
此次課程設計,相比以往不太一樣,這次的設計更加貼近於生活,而且自己也經常會接觸到。心理路程由一開始的內心小興奮到困惑到解決問題到又有問題到又解決問題到最後基本成型,自己內心還是有點開心的。說實話,這次的設計是我人生當中第一次一個人看著書完成的,這個過程的小艱辛只有我才知道,一開始只是知道一些比較零碎的知識,而且很理論化,沒有把這些理論化為實踐,有句話說得好,實踐是檢驗真理的唯一標準。出現的問題自己在書中和網路上面找到了解決辦法,就帶馬上解決,一刻都不能耽誤。這次的小應用可以說是先建立三個模組,之後對於三個模組進行佈局然後給容器上面新增小控制元件,之後對於按鈕新增滑鼠點選事件進而實現介面之間的切換,這個是特別重要的。首先,讓我加深了對Java語言的理論知識的理解,其次,讓我更加熟練的掌握了Java語言的設計能力並且有了實踐經驗,最後,加強了我對Java語言的學習興趣和好感。
做完這次的設計,覺得對於平時的java知識得到了應用,心裡是無比的激動萬分。對於這個學期的這門課,心裡還是不覺得難的,挺好理解。因為之前在以往的學習過程中,對於c++有過學習,由於兩者之間有點類似,都是面向物件的,只是java更高階,更實用。
參考文獻
[1] 耿詳義,張躍平 Java 2 實用教程 清華大學出版社,2004.2
[2] 王浩娟,衛軍 Java 程式設計 清華大學出版社 2017.2
[3] 王鵬,何呁峰 Java Swing圖形介面開發與案例詳解 2008.12