最新JAVA數(shù)據(jù)庫學生成績管理系統(tǒng)實驗報告資料_第1頁
最新JAVA數(shù)據(jù)庫學生成績管理系統(tǒng)實驗報告資料_第2頁
最新JAVA數(shù)據(jù)庫學生成績管理系統(tǒng)實驗報告資料_第3頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、精品文檔實訓報告實訓名稱:學生成績管理系統(tǒng)系(部):專業(yè)班級:學生姓名:學 號:指導教師:完成日期 :南京鐵道職業(yè)技術(shù)學院精品文檔目錄二目錄31實訓概述3二2 Java 訪問并處理數(shù)據(jù)庫的課題描述 32.1 課題簡介3裝2.3 數(shù)據(jù)庫結(jié)構(gòu)設(shè)計 42.4系統(tǒng)功能層次圖63 系統(tǒng)模塊的詳細設(shè)計 63.1 登錄模塊設(shè)計 63.2 管理員模塊設(shè)計 63.3 學生模塊設(shè)計 84 程序運行與測試 95 實訓總結(jié) 30訂精品文檔Java 訪問并處理數(shù)據(jù)庫的設(shè)計與實現(xiàn)1 實訓概述南京鐵道職業(yè)技術(shù)學院浦口校區(qū) 2013級網(wǎng)絡(luò) L1301 班于大二上學期組織了 為期一周的 Java 實訓,本次實訓的課題是“學生成

2、績管理系統(tǒng)” 。 通過綜合實 訓,掌握運用 Java 語言基本知識和技能、 JAVA 的基本語法與 JDBC 數(shù)據(jù)庫技 術(shù)的應用;進一步熟悉 Oracle 數(shù)據(jù)庫的數(shù)據(jù)庫管理(數(shù)據(jù)庫的創(chuàng)建、應用) 。表 的創(chuàng)建、修改、刪除,約束及關(guān)系等、數(shù)據(jù)的查詢處理( insert、update、delete、 select 語句等技術(shù)。2 Java 訪問并處理數(shù)據(jù)庫的課題描述2.1 課題簡介經(jīng)過分析,我們使用Java開發(fā)工具,利用其提供的各種面向?qū)ο蟮拈_發(fā)工具, Java 技術(shù)具有卓越的通用性、高效性、平臺移植性和安全性,廣泛應用于個人 PC、數(shù)據(jù)中心、游戲控制臺、科學超級計算機、移動電話和互聯(lián)網(wǎng),同時擁

3、有 全球最大的開發(fā)者專業(yè)社群。使用的數(shù)據(jù)庫是Oracle, Oracle數(shù)據(jù)庫功能強大,學習起來也不難,然后,對初始原型系統(tǒng)進行需求迭代,不斷修正和改進 ,直到形成用戶滿意的可行系統(tǒng)。通過實訓,我們掌握運用Java語言知識和技能,運用JAVA的基本語法與 JDBC 數(shù)據(jù)庫技術(shù)的應用, 完成對甲骨文數(shù)據(jù)庫的數(shù)據(jù)庫管理、 例如表的設(shè)計(表 的創(chuàng)建、修改、刪除,字段的默認值、約束及關(guān)系等) 、數(shù)據(jù)的查詢處理( insert、 update delete select語句的應用)等技術(shù);并能結(jié)合數(shù)據(jù)庫應用技術(shù)和 jdbc進 行小型數(shù)據(jù)庫管理系統(tǒng)的開發(fā)。2.2 模塊簡介管理員模塊功能需求 :管理員身份登

4、陸系統(tǒng)后,可以對學生信息進行添加、修改和查詢等操作,對學生進行添加、修改和查詢功能操作,還可以修改管理員的登錄密碼。學生模塊功能需求 :學生信息管理系統(tǒng)中需要在學生登錄或驗證身份后 ,,可以自行完成學生個 人信息的查詢,也可以進行修改和刪除個人信息、修改學生密碼等操作。2.3 數(shù)據(jù)庫結(jié)構(gòu)設(shè)計數(shù)據(jù)表設(shè)計定義每個表的數(shù)據(jù)類型以及字段限制,使數(shù)據(jù)庫達到一定的完整性.每個表的物理設(shè)計如下:1. 表admin保存用戶的個人信息用戶信息表主要是用來保存管理員用戶的基本信息,包括管理員的ID和管理員的登錄密碼,只有符合這兩個字段的格式要求,才能登錄成功,結(jié)構(gòu)表如下:表4-2管理員信息表字段名類型空值約束條件

5、管理員IDnumber(10)not null主鍵登錄密碼varchar2(10)not null2. 表student保存學生基本信息,結(jié)構(gòu)表如下:表4-5學生信息表字段名類型空值約束條件學號number(10)not null主鍵姓名varchar2(20)not null性別varchar2 (3)年齡nu mber(2)登錄密碼varchar2(10)not null邏輯結(jié)構(gòu)是獨立于任何一種數(shù)據(jù)模型的信息結(jié)構(gòu)。 邏輯結(jié)構(gòu)的任務(wù)是把概念 結(jié)構(gòu)設(shè)計階段設(shè)計好的基本 E-R圖轉(zhuǎn)化為宜選用的DBMS所支持的數(shù)據(jù)模型相 符合的邏輯結(jié)構(gòu),并對其進行優(yōu)化。流程圖層次設(shè)計圖的格式如下所示:添加按鈕查找

6、按鈕刪除按鈕返回結(jié)束圖1管理員對學生信息管理系統(tǒng)局部E-R圖數(shù)據(jù)流圖是結(jié)構(gòu)化系統(tǒng)分析的主要工具,它表示了系統(tǒng)內(nèi)部信息的流向,并表現(xiàn)系統(tǒng)的邏輯處理功能。2.4系統(tǒng)功能層次圖學生信息管理系統(tǒng)是一個典型的數(shù)據(jù)庫開發(fā)應用程序,系統(tǒng)是和數(shù)據(jù)庫相結(jié) 合.,進入系統(tǒng),有兩個用戶,分別是普通學生、和管理員。學生信息管理系統(tǒng)登陸管理圖2學生信息管理系統(tǒng)功能層次圖3系統(tǒng)模塊的詳細設(shè)計本學生信息管理系統(tǒng)主要模塊,即用戶登錄模塊、用戶操作模塊。用戶操作 模塊又分為學生操作模塊、管理員操作模塊。下面將顯示系統(tǒng)的主要功能模塊。3.1登錄模塊設(shè)計學生信息管理系統(tǒng)前臺登陸模塊可以勾選管理員身份信息,代表以管理員身 份進入。不

7、勾選即為普通學生身份登錄。3.2管理員模塊設(shè)計學生信息管理系統(tǒng)前臺登陸模塊只有一個登陸窗口分為學生、管理員兩個級別登陸,系統(tǒng)在后臺程序有自動限制設(shè)置,可以自動識別登陸者的限制。其系統(tǒng)登 陸模塊算法如下:1 判斷是否勾選管理員身份;2 輸入用戶名和密碼;3 判斷用戶名和密碼是否匹配;(1)若提示輸入信息錯誤 ,則重新輸入;(2)否則以管理員身份進入系統(tǒng)。添加學生信息功能學生信息管理系統(tǒng)對學生信息的管理非常重要 ,其中對信息的錄入是系統(tǒng)最 為關(guān)鍵的地方 ,以往我們管理學生信息的時候都是手工操作 ,而隨社會不斷發(fā)展的 今天計算機的應用已全部取帶了手工操作的方法 ,利用計算機可以方便的錄入各 類信息

8、,進行高效的管理 .學生信息的錄入就是利用計算機通過程序讀入數(shù)據(jù)庫 , 錄入學生信息模塊算法描述如下:1. 管理員登陸后,錄入學生信息管理界面;2. 單擊增加學生按鈕,鍵入學生 ID ;3. 當錄入學號已經(jīng)存在 ,提示該學生信息已存在,請重新輸入;4. 否則學生信息添加成功。查找學生信息功能學生信息管理系統(tǒng)對查詢學生信息管理也很重要 ,方法和增添學生信息類 似,也同樣是利用計算機通過程序讀入數(shù)據(jù)庫 ,查詢學生信息模塊算法描述如下:1.管理員登陸后,點擊查詢學生;2.當錄入學生信息不存在時 ,提示沒有該學生信息,重新輸入;3. 當錄入學生 ID 已經(jīng)存在 ,提示該學生信息存在,顯示學生信息; 刪

9、除學生信息功能學生選課模塊主要是給刪除學生信息的功能 ,本功能主要由管理員進入數(shù)據(jù) 庫 ,然后學生管理系統(tǒng) ,其刪除學生信息模塊算法描述如下:1管理員成功登陸;2點擊刪除學生;3輸入學生相關(guān)信息,如學生 ID ;4. 如該學生不存在,則提示信息不存在,否則刪除該學生。修改學生信息功能此信息修改模塊主要是給學生和管理員建立信息庫 ,方便管理員查詢操作 ,信 息修改模塊算法描述如下:1管理員成功登陸;2點擊修改學生信息;3輸入學生的編號;4編號為空 ,重新輸入;5輸入不為數(shù)字 ,重新輸入; 6輸入正確 ,進入修改頁面進行相關(guān)修改。3.3 學生模塊設(shè)計查看學生個人信息功能 學生信息管理系統(tǒng)方便了學生

10、查看自己的學籍信息 ,如果學校由于疏忽輸入 了錯誤信息 ,自己可以查看并且及時通知學校管理員 ,及時修改 ,減少不必要的麻 煩.此信息查詢模塊主要是方便學生查詢操作 ,信息查詢模塊算法描述如下:1 學生成功登陸;2點擊查詢學生信息;3輸入學生的編號;4編號為空 ,重新輸入;5輸入不為數(shù)字 ,重新輸入;6輸入正確 ,進入信息查詢頁面進行相關(guān)修改。 修改學生登錄密碼功能 學生可以進入學生管理系統(tǒng)進行登錄密碼的修改1. 學生成功登陸;2單擊修改密碼;3輸入舊密碼、新密碼確認后,若舊密碼正確則修改成功,則提示重新輸 入舊密碼;4提交修改完成修改。精品文檔4 程序運行與測試package com.bri

11、up.view;import java.awt.*;import java.awt.event.MouseAdapter;import java.awt.event.MouseEvent;import javax.swing.*;import com.briup.bean.Admin;import com.briup.bean.Student;import com.briup.dao.AdminDao;/登錄窗口import com.briup.dao.StudentDao;public class LoginFrame extends JFrameprivate JCheckBox c;pr

12、ivate JButton loginBtn,resetBtn;private JTextField nameInput;private JPasswordField pwdInput;private AdminDao adminDao=new AdminDao();private StudentDao studentDao=new StudentDao();public LoginFrame()/初始化窗口本身Dimension d=Toolkit.getDefaultToolkit().getScreenSize();int width=d.width;int height=d.heigh

13、t;/設(shè)置坐標為 400-400 寬為 300 高為 200 setBounds(width/2-200, height/2-100, 400, 200); setTitle(" 登錄界面 ");/設(shè)置窗口為不可縮放setResizable(false); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);init();event(); private void event() /為按鈕添加事件處理resetBtn.addMouseListener(new MouseAdapter() /監(jiān)聽鼠標單擊事件Overridepubli

14、c void mouseClicked(MouseEvent e) System.exit(0); );loginBtn.addMouseListener(new MouseAdapter() Overridepublic void mouseClicked(MouseEvent e) /獲取用戶輸入的值String username=nameInput.getText().trim();String password=pwdInput.getText().trim();/判斷是否勾選了管理員多選框if(c.isSelected()/從管理員表中檢測數(shù)據(jù)Admin a=adminDao.fin

15、dAdminByName(username);如果a不為null說明用戶輸入的管理員是存在的if(a=null)/說明此管理員不存在JOptionPane.showMessageDialog(null, "用戶名或密碼不 正確", "提示信息 ", JOptionPane.WARNING_MESSAGE);else/管理員存在/密碼正確 /密碼不正確if(a.getPassword().equals(password)/后臺保存的密碼和用戶從客戶端輸入的密碼是一 樣的JOptionPane.showMessageDialog(null, 登"

16、錄成功 ", "提示信息 ",JOptionPane.WARNING_MESSAGE);精品文檔/關(guān)閉當前的登錄窗口LoginFrame.this.dispose(); /開啟管理員界面 new AdminFrame(a.getUsername().go();elseJOptionPane.showMessageDialog(null, "用戶名或密 碼不正確 ", "提示信息 ", JOptionPane.WARNING_MESSAGE); else /從普通用戶表中檢測數(shù)據(jù) Student s=studentDao.fi

17、ndStudentByStudentId(username); if(s=null)JOptionPane.showMessageDialog(null, "用戶名或密碼不 正確", "提示信息 ", JOptionPane.WARNING_MESSAGE);elseif(s.getPassword().equals(password) JOptionPane.showMessageDialog(null, "登錄成功 ", " 提示信息 ", JOptionPane.WARNING_MESSAGE);LoginF

18、rame.this.dispose();new StudentFrame(s,null).go();elseJOptionPane.showMessageDialog(null, "用戶名或密 碼不正確 ", "提示信息 ", JOptionPane.WARNING_MESSAGE); );public void init()/初始化窗口內(nèi)部的組件Container container=getContentPane(); /組件放到哪個位置由用戶自己來制定 container.setLayout(null);JLabel title=new JLabel

19、("用 戶 登 錄”); title.setFo nt(new Fo nt( 楷體",0,32); title.setBounds(110,5,200,33); container.add(title);JLabel nameLabel=new JLabel(用戶名:"); nameLabel.setBounds(70, 55, 60, 30); container.add(nameLabel);nameInput=new JTextField(); nameInput.setBounds(130,60,150,20);/設(shè)置提示內(nèi)容namelnput.setTo

20、olTipText(此處寫登錄用戶名"); container.add(nameInput);JLabel pwdLabel=new JLabel("密碼:");pwdLabel.setBounds(70, 80, 60, 30); container.add(pwdLabel);pwdlnput=new JPasswordField(); pwdlnput.setBounds(130,85,150,20);pwdInput.setToolTipText(”此處寫密碼"); container.add(pwdlnput);c=new JCheckBox(

21、"管理員"); c.setBounds(68, 115, 70, 30); container.add(c);loginBtn=new JButton(" 登錄"); loginBtn.setBounds(140, 115, 60, 30); container.add(loginBtn);resetBt n=new JButt on("取消"); resetBtn.setBounds(215, 115, 60, 30); container.add(resetBtn);public void go()setVisible(true)

22、; public static void main( Stri ng args) new LoginFrame().go(); package com.briup.dao;import java.sql.C onn ecti on;import java.sql.PreparedStateme nt;import java.sql.ResultSet;import com.briup.bea n. Adm in;import com.briup.util.C onn ectio nF actory;/和管理員相關(guān)的數(shù)據(jù)庫操作public class Adm in Dao /根據(jù)用戶名查找指定管

23、理員public Adm in fin dAdm in ByName(Stri ng user name)Adm in adm in=n ull;Conn ecti on conn=n ull;PreparedStateme nt pstat=n ull;ResultSet rs=null;try conn=Conn ectio nF actory.getC onn ectio n();Stri ng sql="select username,password from admin where usern ame=?" pstat=c onn .prepareStateme

24、 nt(sql);pstat.setStri ng(1, user name);rs=pstat.executeQuery();如果查不到任何數(shù)據(jù)下方while內(nèi)部的代碼不會執(zhí)行while(rs. next()/如果能執(zhí)行到這個地方說明指定管理員是存在的adm in=new Admi n();admi n.setUsername(username);admi n.setPassword(rs.getStri ng("password"); catch (Excepti on e) / TODO: han dle exceptione.pri ntStackTrace();f

25、in allyConnectionF actory.close(rs, pstat, conn); return admi n;public static void main( Stri ng args) Admin Dao().fi ndAdmi nByName("admi").getPassword();package com.briup.view;import java.awt.C ontainer;import java.awt.GridLayout;import java.awt.eve nt.MouseAdapter;import java.awt.eve nt

26、.MouseEve nt;import java.awt.eve nt.Wi ndowAdapter;import java.awt.eve nt.Wi ndowEve nt;import javax.swi ng.JButton;import javax.sw in g.JFrame;import javax.swi ng.JLabel;import javax.swi ng.JOptio nPane;import javax.swi ng.JPa nel;import javax.sw in g.JTextField;import com.briup.bean.Student;import

27、 com.briup.dao.Stude ntDao;/添加學生public class AddStudentFrame extends JFrameprivate AdminFrame admin;private JPanel p1,p2,p3,p4,p5;private JLabel idLbl,nameLbl,ageLbl,genderLbl;private JTextField idInput,nameInput,ageInput,genderInput;private JButton submitBtn,cancelBtn;private StudentDao studentDao=

28、new StudentDao();public AddStudentFrame(AdminFrame admin) this.admin=admin;setTitle("添加學生");setResizable(false);setBounds(400, 100, 300, 400);init();event();private void init()Container container=getContentPane();container.setLayout(new GridLayout(5, 1); p1=new JPanel();p1.setLayout(null);

29、idLbl=new JLabel("學籍號:");idLbl.setBounds(50, 30, 50, 20);idInput=new JTextField();idInput.setBounds(100, 30, 120, 20);p1.add(idLbl);p1.add(idInput);container.add(p1);p2=new JPanel();p2.setLayout(null);nameLbl=new JLabel("姓名:");nameLbl.setBounds(50, 10, 50, 20);nameInput=new JText

30、Field();nameInput.setBounds(100, 10, 120, 20);p2.add(nameLbl);p2.add(nameInput);container.add(p2);p3=new JPanel();p3.setLayout(null);ageLbl=new JLabel('年齡:");ageLbl.setBounds(50, 10, 50, 20); ageInput=new JTextField();ageInput.setBounds(100, 10, 120, 20);p3.add(ageLbl);p3.add(ageInput);cont

31、ainer.add(p3);p4=new JPanel();p4.setLayout(null);genderLbl=new JLabel('性別:");genderLbl.setBounds(50, 10, 50, 20); genderInput=new JTextField();genderInput.setBounds(100, 10, 120, 20);p4.add(genderLbl); p4.add(genderInput);container.add(p4);p5=new JPanel();p5.setLayout(null);submitBt n=new J

32、Butto n(” 確定"); submitBtn.setBounds(130, 10, 60, 20);can celBt n=new JButt on("取消");cancelBtn.setBounds(195, 10, 60, 20);p5.add(submitBtn);p5.add(cancelBtn);container.add(p5);private void event()/設(shè)置當前窗口的關(guān)閉操作/此處可自定義窗口關(guān)閉時所作操作this.addWindowListener(new WindowAdapter() public void windowC

33、losing(WindowEvent e) /將之前傳遞過來的那個管理窗口設(shè)置為可用if(admin!=null)admin.setEnabled(true); /釋放當前窗口AddStudentFrame.this.dispose(); );/取消按鈕的操作cancelBtn.addMouseListener(new MouseAdapter() Overridepublic void mouseClicked(MouseEvent e) if(admin!=null)admin.setEnabled(true); AddStudentFrame.this.dispose(); );/確定按

34、鈕的操作submitBtn.addMouseListener(new MouseAdapter() public void mouseClicked(MouseEvent e) /接受用戶在客戶端輸入的值 /正則表達式String studentId=idInput.getText().trim();String studentName=nameInput.getText().trim();String age=ageInput.getText().trim();String gender=genderInput.getText().trim();Student s=new Student()

35、;/注意別輸入了已存在的學籍號s.setStudentid(Long.parseLong(studentId);s.setStudentName(studentName);s.setPassword(studentId);s.setAge(Integer.parseInt(age);s.setGender(gender);/將獲得值封裝成Student對象調(diào)用指定方法存儲到數(shù)據(jù)庫boolea n result=stude ntDao.addStude nt(s);if(result)JOptionPane.showMessageDialog(null, 添" 加成功! ")

36、;if(admin!=null)admin.setEnabled(true); AddStudentFrame.this.dispose();elseJOptionPane.showMessageDialog(null, 添" 加失敗 ,請檢查學籍號是否已存在! "););public void go()setVisible(true);public static void main(String args) new AddStudentFrame(null).go();import java.awt.C ontainer;import java.awt.GridLayou

37、t;import java.awt.eve nt.MouseAdapter;import java.awt.eve nt.MouseEve nt;import java.awt.eve nt.Wi ndowAdapter;import java.awt.eve nt.Wi ndowEve nt;import java.util.List;import javax.swi ng.JButt on;import javax.sw in g.JFrame;import javax.swi ng.JLabel;import javax.swi ng.JPa nel;import javax.sw in

38、 g.JTextField;import com.briup.bea n. Stude nt;import com.briup.dao.Stude ntDaqpublic class Fin dStude ntFrame exte nds JFrame private StudentDao studentDao=new StudentDao(); private JLabel idLbl,nameLbl;private JTextField idInput,nameInput;private JButton findBtn,cancelBtn;public FindStudentFrame()

39、setTitle(" 查找學生 "); setBounds(405, 100, 200, 390); setResizable(false);init();event(); private void init()Container container=getContentPane(); container.setLayout(new GridLayout(3, 1); JPanel p1=new JPanel();p1.setLayout(null);idLbl=new JLabel("學籍號:"); idLbl.setBounds(20, 55, 50

40、, 20);idInput=new JTextField();idInput.setBounds(73, 55, 100, 20);p1.add(idLbl);p1.add(idInput);container.add(p1);JPanel p2=new JPanel();p2.setLayout(null);nameLbl=new JLabel("姓名:");nameLbl.setBounds(20, 55, 50, 20); nameInput=new JTextField();nameInput.setBounds(73, 55, 100, 20); p2.add(n

41、ameLbl);p2.add(nameInput);container.add(p2);JPanel p3=new JPanel();p3.setLayout(null);fin dBt n=n ew JButto n(” 搜索"); findBtn.setBounds(60,30,60,20);can celBt n=new JButt on("取消");cancelBtn.setBounds(123,30,60,20); p3.add(findBtn);p3.add(cancelBtn);container.add(p3); private void even

42、t() this.addWindowListener(new WindowAdapter() public void windowClosing(WindowEvent e) FindStudentFrame.this.dispose(); );findBtn.addMouseListener(new MouseAdapter() public void mouseClicked(MouseEvent e) String idStr=idInput.getText().trim(); String nameStr=nameInput.getText().trim(); Long student

43、Id=null;String studentName=null; if(idStr.length()!=0) / 如果 id 有值 studentId=Long.parseLong(idStr); if(nameStr.length()!=0) studentName=nameStr; List<Student> students=studentDao.findStudentByConditions(studentId, studentName);/將查詢的結(jié)果傳遞給顯示界面new ShowResultFrame(students).go() ); public void go()

44、setVisible(true); public static void main( Stri ng args) new Fin dStude ntFrame().go();(” ".trim().length();正則表達式s/System.out.pri ntln ("");/ System.out.pri ntln ("1 2 ".replaceAll("s", "").le ngth(); package com.briup.view;學 HE 號:17蛀岔吏1掘'lil亙河結(jié)耒I O 回

45、1蘆缶整mi跨import java.awt.Color;import java.awt.C ontainer;import java.awt.GridLayout;import java.awt.eve nt.MouseAdapter;import java.awt.eve nt.MouseEve nt;import java.awt.eve nt.Wi ndowAdapter;import java.awt.eve nt.Wi ndowEve nt;import java.util.List;import javax.sw in g.BorderFactory;import javax.s

46、wi ng.JButton;import javax.sw in g.JFrame;import javax.swi ng.JLabel;import javax.swi ng.JOptio nPane;import com.briup.bea n. Stude nt;import com.briup.dao.Stude ntDao;public class ShowResultFrame extends JFrame private List<Student> students;private StudentDao studentDao=new StudentDao();publ

47、ic ShowResultFrame(List<Student> students) setTitle(" 查詢結(jié)果 ");if (students.size() > 0) setBounds(100, 100, 300, 60 * students.size(); else setBounds(100, 100, 300, 150); this.students = students;init();private void init() Container container = getContentPane(); container.setLayout

48、(new GridLayout(students.size(), 2); / 遍歷集合 將集合中的每一條數(shù)據(jù)顯示到當前容器里面 if (students.size() = 0) con tai ner.add( new JLabel(暫無記錄!"); else for (Student stu : students) JLabel l = new JLabel(stu.getStudentName(); final Student s = stu; l.addMouseListener(new MouseAdapter() public void mouseClicked(Mouse

49、Event e) if(e.getClickCount()>=2) new StudentFrame(s, null).go(); );l.setBorder(BorderFactory.createLineBorder(new Color(253, 253,187); JButton b = new JButt on("刪除");final Long studentId = stu.getStudentid(); b.addMouseListener(new MouseAdapter() public void mouseClicked(MouseEvent e)

50、int choose=JOptionPane.showConfirmDialog(null,"確定刪除?");判斷用戶點擊的是否是確定按鈕if(choose=JOptio nPa ne.OK_OPTION)ShowResultFrame.this.dispose();stude nts.remove(s);new ShowResultFrame(stude nts).go();stude ntDao.deleteStude ntByld(stude ntId); );container.add(l); container.add(b); private void eve n

51、t() this.addWi ndowListe ner(new Win dowAdapter() public void win dowClos in g(Wi ndowEve nt e) ShowResultFrame.this.dispose(); ); public void go() setVisible(true); public static void main( Stri ng args) package com.briup.view;import java.awt.Color;import java.awt.C ontainer;import java.awt.GridLay

52、out;import java.awt.eve nt.MouseAdapter;import java.awt.eve nt.MouseEve nt; import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JOptionPane;import javax.swing.JPanel;import javax.swing.JPasswordField;import javax.swing.JTextField;import com.briup.bean.St

53、udent;import com.briup.dao.StudentDao;public class StudentFrame extends JFrameprivate JPanel p1,p2,p3,p4,p5,p6;private JLabel idLbl,pwdLbl,nameLbl,ageLbl,genderLbl;private JTextField idInput,nameInput,ageInput,genderInput; private JPasswordField pwdInput;private Student student;private JButton modif

54、yPwdBtn,submitBtn,exitBtn;private String nPassword;private StudentDao dao=new StudentDao();/stude nt記錄當前登錄的用戶n Password記錄修改以后的密碼public StudentFrame(Student s,String nPassword) this.student=s;this.nPassword=nPassword; /初始化的時候獲取當前用戶的密碼 setTitle(" 學生信息 ");setResizable(false);setBounds(400, 10

55、0, 300, 400);/默認關(guān)閉行為 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); init();event(); public void go()setVisible(true);private void init()Container container=getContentPane();container.setLayout(new GridLayout(6, 1); p1=new JPanel();p1.setLayout(null);idLbl=new JLabel("學籍號:");idLbl.setBound

56、s(50, 30, 50, 20);idInput=new JTextField();/需要將數(shù)字類型轉(zhuǎn)換為字符串類型+""/字符串類型 -數(shù)字類型 parseInt parseLong idInput.setText(student.getStudentid()+""); /設(shè)置學籍號不可修改/idInput.setEnabled(false);idInput.setEditable(false);/idInput.setDisabledTextColor(new Color(255, 255, 255);idInput.setDisabledTextColor(Color.black); idInput.setBounds(100, 30, 120, 20);p1.add(idLbl);p1.add(idInput);container.add(p1);p2=new JPanel();p2.setLayout(null);pwdLbl=new JLabel("密碼:");pwdLbl.setBounds(50, 30, 50, 20);pwdInput=new J

溫馨提示

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

評論

0/150

提交評論