簡(jiǎn)單學(xué)生信息管理系統(tǒng)java課程設(shè)計(jì)講解_第1頁
簡(jiǎn)單學(xué)生信息管理系統(tǒng)java課程設(shè)計(jì)講解_第2頁
簡(jiǎn)單學(xué)生信息管理系統(tǒng)java課程設(shè)計(jì)講解_第3頁
簡(jiǎn)單學(xué)生信息管理系統(tǒng)java課程設(shè)計(jì)講解_第4頁
簡(jiǎn)單學(xué)生信息管理系統(tǒng)java課程設(shè)計(jì)講解_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、數(shù)據(jù)庫課程設(shè)計(jì)-簡(jiǎn)單學(xué)生信息管理系統(tǒng)學(xué)院 專業(yè) 學(xué)號(hào) 姓名計(jì)算機(jī)科學(xué)學(xué)院 軟件工程 02 41109050209 李歡歡目錄1 設(shè)計(jì)目的 3.2 設(shè)計(jì)任務(wù) 3.2.1任務(wù)說明 3.2.2系統(tǒng)目標(biāo) 4.2.2使用范圍 4.2.3功能要求 4.3 設(shè)計(jì)內(nèi)容 4.3.1界面構(gòu)建 4.3.2詳細(xì)設(shè)計(jì) 5.3.2.1模塊設(shè)計(jì) 5.3.2.2 數(shù)據(jù)庫設(shè)計(jì) 5.3.2.3運(yùn)行調(diào)試 6.3.2.4 主要源代碼 8.5 總結(jié)與展望 1.3.參考文獻(xiàn) 1.5.1 設(shè)計(jì)目的本程序用于用戶對(duì)少量學(xué)生信息進(jìn)行簡(jiǎn)單的管理,本程序針 對(duì)于對(duì)安全系數(shù)要求不高,操作不是很復(fù)雜的小型客戶開發(fā)。本 程序可以實(shí)現(xiàn)對(duì)學(xué)生信息的添加、查

2、詢、修改、刪除等操作,同 時(shí)支持查看所有學(xué)生信息, 功能完善,界面簡(jiǎn)潔美觀, 布局合理, 操作簡(jiǎn)便,簡(jiǎn)單易用,任何人可輕松操作。同時(shí),本程序?qū)ο到y(tǒng)要求配置較低,運(yùn)行速度快,而卻對(duì)數(shù) 據(jù)庫管理要求較低該數(shù)據(jù)庫可實(shí)現(xiàn)關(guān)系較為簡(jiǎn)單的數(shù)據(jù)管理。2 設(shè)計(jì)任務(wù)2.1 任務(wù)說明設(shè)計(jì)一個(gè)簡(jiǎn)單學(xué)生個(gè)人信息管理系統(tǒng),該系統(tǒng)具有錄入,查 詢,修改三項(xiàng)基本功能。要求如下:(1)具有簡(jiǎn)單的錄入,查詢和修改功能。(2)修改學(xué)生信息必須輸入學(xué)號(hào),然后對(duì)姓名、性別和專業(yè) 等修改;(3)使用文件存儲(chǔ)數(shù)據(jù)。 (也可用數(shù)據(jù)庫)(4)學(xué)生個(gè)人信息必須包括:學(xué)號(hào)、姓名、性別、籍貫、系2.2 系統(tǒng)目標(biāo)軟件開發(fā)的意圖便于用戶對(duì)學(xué)生的管理,

3、方便查看學(xué)生的情 況。如用戶對(duì)學(xué)生基本信息進(jìn)行錄入、查詢、修改、刪除等。2.2 使用范圍本系統(tǒng)僅針對(duì)用戶對(duì)少量學(xué)生進(jìn)行信息管理。2.3 功能要求1 錄入學(xué)生基本信息的功能2 查詢學(xué)生基本信息的功能3 修改學(xué)生基本信息的功能4 刪除學(xué)生基本信息的功能5 顯示所有學(xué)生信息的功能3 設(shè)計(jì)內(nèi)容3.1 界面構(gòu)建1、為了便于各種操作,軟件采用多窗口的模式。用戶可在 不同窗口進(jìn)行相應(yīng)操作(錄入、查詢、修改、刪除、顯示所有學(xué) 生省信息)。2、主窗口是用戶進(jìn)行各種操作的平臺(tái),具體操作在各個(gè)獨(dú) 立功能窗口中完成。3、主窗口的主要功能位于菜單中,菜單為進(jìn)入各個(gè)功能窗 口的唯一通道。4、當(dāng)用戶在進(jìn)行個(gè)別錄入、刪除或錯(cuò)

4、誤輸入操作時(shí),會(huì)彈 出相應(yīng)對(duì)話框提示用戶。如當(dāng)錄入成功或刪除成功,彈出成功以 及相應(yīng)的簡(jiǎn)明信息提示當(dāng),當(dāng)錄入、刪除失敗以及輸入不當(dāng)是, 彈出錯(cuò)誤以及簡(jiǎn)單的錯(cuò)誤原因提示用戶重新操作。5、界面布局盡量合理,各組件位置分布均勻美觀。3.2 詳細(xì)設(shè)計(jì)3.2.1 模塊設(shè)3.2.2 數(shù)據(jù)庫設(shè)計(jì)學(xué)生信息表3.2.3運(yùn)行調(diào)試操作界面6添加學(xué)生信息修改學(xué)生信息查找學(xué)生信息3.2.4 主要源代碼import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.Resu

5、ltSet;public class SqlHelper / 對(duì)數(shù)據(jù)庫進(jìn)行操作 PreparedStatement ps =null ; Connection ct =null ;ResultSet rs =null ;8String driver = com.microsoft.jdbc.sqlserver.SQLServerDriverStringurl = jdbc:microsoft:sqlserver:/127.0.0.1:1433;databaseName=JsqlStringuser =sa ;Stringpasswd =sapublic void close()try ) rs

6、 .close();) ps .close();) ct .close();if ( rs != null if ( ps != null if ( ct != nullcatch(Exception e)e.printStackTrace();public ResultSet queryExecute(String sql)tryClass. forName ( driver );( url , user , passwd );ct =DriverManager. getConnection ps =ct .prepareStatement(sql);rs =ps .executeQuery

7、(); catch (Exception e) e.printStackTrace(); finally return rs ;/ 查詢數(shù)據(jù)庫操作public ResultSet queryExectue(String sql,String paras)tryClass. forName ( driver );ct =DriverManager. getConnection ( url , user , passwd ); ps =ct .prepareStatement(sql);for ( int i=0; iparas. length ; i+)ps .setString(i+1, pa

8、rasi);rs =ps .executeQuery();catch (Exception e) e.printStackTrace();finally return rs ;/ 把增、刪、改放在一起對(duì)數(shù)據(jù)庫操作 SuppressWarnings ( finally ) public boolean updExecute(String sql,String paras)boolean b= true ;tryClass. forName ( driver );passwd );ct =DriverManager. getConnection ( url , user ps =ct .prepa

9、reStatement(sql);for ( int i=0; iparas. length ; i+)ps .setString(i+1, parasi);if ( ps .executeUpdate()!=1)b= false ;catch (Exception e)b= false ; e.printStackTrace(); finally return b;importjavax.swing.*;importjava.sql.*;importjava.util.*;importjava.sql.Connection;10 import java.sql.DriverManager;i

10、mport java.sql.PreparedStatement;import java.sql.ResultSet;import java.util.Vector;import java.awt.*;import java.awt.Event.*;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;/ 學(xué)生管理類ActionListenerpublic class StuManger extends JFrame implements JPaneljp1 ,jp2JLabeljl1 ;JButtonjb

11、1, jb2, jb3 , jb4 ;JTablejt ;JScrollPanejspJTextFieldjtfStuModms;publicstaticvoid main(String args)StuManger s=new StuManger();public StuManger()j p1 =new JPanel();j tf =new JTextField(10);j b1 =new JButton( 查詢 );j b1 .addActionListener(this );j l1 =new JLabel( 請(qǐng)輸入名字 );j p1 .add( jl1 );j p1 .add( jt

12、f );j p1 .add( jb1 );j p2 =new JPanel();j b2 =new JButton( 添加 );j b2 .addActionListener(this );j b3 =new JButton( 刪除 );j b3 .addActionListener(this);j b4 =new JButton( 修改 );j b4 .addActionListener(this);j p2 .add( jb2 );j p2 .add( jb3 );j p2 .add( jb4 );11ms = new StuMod();, paras);EXIT_ON_CLOSE );S

13、tring paras= 1 ;ms .queryStu(select * from stu where 1=? jt=new JTable( ms);j sp =new JScrollPane( jt );t his .add( jsp );t his .add( jp1 , North );t his .add( jp2 , South );t his .setSize(400,300);t his .setDefaultCloseOperation(JFrame. t his .setVisible( true );public void actionPerformed(ActionEv

14、ent e)/ TODO Auto-generated method stubif (e.getSource()= jb1 )System. out .println( 希望查詢 );String name= this . jtf .getText().trim();String sql=select * from stu where stuName=?String paras=name;ms= new StuMod();ms.queryStu(sql, paras);jt .setModel( ms);else if (e.getSource()=jb2 )StuAddDialog g= n

15、ew StuAddDialog( ms=new StuMod();String paras2= ms.queryStu( jt .setModel(this , 添加學(xué)生 , true );else1 ;select * from stu where 1=? ms);if (e.getSource()=jb4 ), paras2);int rowNum= this if (rowNum=-1). jt .getSelectedRow();JOptionPane.return ;showMessageDialog ( this , 請(qǐng)選擇一行 );/12new StuUpdDialog(this

16、 , 修改 , true , ms,rowNum);ms= new StuMod();String paras2= 1 ;ms.queryStu( select * from stu where 1=?jt .setModel( ms);String stuId=(String)System. out .println(ms.getValueAt(rowNum,0);id= +stuId);, paras2);/ 刪除else if (e.getSource()=int rowNum= this if (rowNum=-1) JOptionPane.);return ;jb3 )jt .get

17、SelectedRow();showMessageDialog ( this , 請(qǐng)選擇一行jt .setModel( ms);String stuId=(String) ms.getValueAt(rowNum,0);System. out .println( id= +stuId);String sql= delete from stu where stuid=? ; String paras=stuId;StuMod temp= new StuMod(); temp.updStu(sql, paras); ms=new StuMod();String paras2= 1 ;ms.quer

18、yStu(select * from stu where 1=?, paras2);jt .setModel( ms);5 總結(jié)與展望做課設(shè)讓我對(duì) java 有了新的認(rèn)識(shí), 首先我接觸了很多上課見 過見過但沒有實(shí)際用過的類和方法,讓我對(duì)編程有了許多新的思 想。大一學(xué)了 C 語言,雖然當(dāng)時(shí)學(xué)的還不錯(cuò),由于學(xué)的都是入門13知識(shí),所以自己做的都是 DOS 下執(zhí)行的程序,雖然可以實(shí)現(xiàn)一 定的功能,但和自己平時(shí)用的軟件相差很大。 這學(xué)期剛開課學(xué) java 感覺沒什么新鮮感, 它的跨平臺(tái)特性也只是聽聽, 根本沒有認(rèn)識(shí), 知道學(xué)到第七章圖形界面用戶編程的時(shí)候,我發(fā)現(xiàn)學(xué)會(huì)之后自己 可以做出來的軟件就更接近平時(shí)使用的軟件了,不過由于平時(shí)學(xué) 習(xí)不刻苦,到時(shí)沒有時(shí)間靜下心來寫 java 代碼,知道結(jié)課做課設(shè), 才靜下心來開始研究 java,結(jié)合以前的編程知識(shí),做起了自己的 程序。我曾經(jīng)用 c 語言做過這個(gè)系統(tǒng),做起來會(huì)比較熟練,同時(shí)想 通過做課設(shè)學(xué)習(xí)一點(diǎn)數(shù)據(jù)庫的知識(shí),感覺這些知識(shí)更貼近實(shí)際應(yīng) 用,選好之后開始準(zhǔn)備課設(shè),先從最簡(jiǎn)單的主窗體,到主窗體的 菜單,組件添加,再到各個(gè)功能的獨(dú)立窗體的建立,再到最后的 數(shù)據(jù)庫連接,功能的實(shí)現(xiàn),一步步走來,收獲頗多。其中獨(dú)立窗 體中的組件排版是碰到的第一個(gè)問題,最簡(jiǎn)單的方法是在建每個(gè) 窗體時(shí)把所有需要的組件全部重新添加進(jìn)

溫馨提示

  • 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. 人人文庫網(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)論