ImageVerifierCode 换一换
格式:DOCX , 页数:32 ,大小:2.95MB ,
资源ID:8660020      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/8660020.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(JAVA成绩管理系统论文.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

JAVA成绩管理系统论文.docx

1、JAVA成绩管理系统论文Java面向对象程序设计学生成绩管理系统东北大学秦皇岛分校 电子信息系 2009级计算机科学与技术专业摘要:学生成绩管理系统是在校园中广泛使用的应用软件,用来方便老师管理学生成绩,方便同学查询成绩,取代传统Excel表格成绩单,方便快捷。本学生成绩管理系统在充分的需求分析基础上,设计简单实用的功能,实现对成绩的查询,修改,删除等操作。在Myeclipse的编程环境下,使用与平台无关的面向对象语言Java编程语言,主要使用了JTextField, JButton, JTable, JLabel,等多种组件,用到了FlowLayout,BorderLayout ,BoxLa

2、yout等多种布局方式,使用了窗口作为监听器,并与Access数据库相连,实现对学生成绩的综合管理。用户界面美观简洁,操作简单,安全快捷。一、设计过程1.1功能设计我设计的成绩管理系统是基于数据库的成绩管理,实现对学生成绩的添加,查询,修改(包括删除)以及连接校园网的功能。下面具体说明每个功能。1.1.1添加功能:先在窗口中输入学号,姓名,各科成绩,点击“确认添加”,系统自动得出成绩总分保存在数据库中,并跳出一个“警告”窗口,以提醒用户操作成功。1.1.2查询功能:查询功能又分为两部分-“按学号查询”(即查询单条记录)和“按总成绩排名查询”,当输入学号后,点击“查询”,系统会给数据库传入一条S

3、QL语句,数据库把查询结果显示在窗口中,得到要查询的人的信息;当点击“总成绩排名查询”时,系统会给数据库传入一条SQL语句,将数据库中的数据按照总分由高到低排序,然后把查询结果显示在窗口中,得到全部同学的按照总分排名的排名表。1.1.3修改功能:修改功能是先把要修改的数据查出来,然后才能进行修改。查询分为“按学号查询”和“按姓名查询”,输入学号或姓名,点击按钮,记得到一个新的窗口,在此窗口了,显示了要查询的人的信息,可以在里面修改这条信息的内容,然后单击“保存修改”,系统即向数据库发送SQL语句,实现数据库中此数据的修改功能,并弹出一个窗口,提醒用户操作成功;当单击“删除记录”的时候,系统会向

4、数据库发送删除此条记录的SQL语句,然后此记录被删除,并跳出一个窗口提醒用户操作成功。1.1.4校园网功能:当选择校园网时,系统实现了URL类,通过读取,显示URL中的html文件来打开预设在程序里的东北大学秦皇岛分校的网址,实现连接校园网的功能。1.2过程设计(1)在纸上画出大致界面,把按钮,文本框,布局想清楚(2)用程序实现界面的框架图,把所有界面连接在一起(3)将各个功能加入界面框架图(4)美化窗口界面,完善各项功能1.2.1UML图 1.2.2界面设计先设计出大致界面,最后美化界面,加入一些背景,设计按钮。下面是最初的草图设计: 二、程序代码与解析3.1学生成绩管理系统.javapub

5、lic class 学生成绩管理系统 public static void main(String args) Interface interface1=new Interface(); interface1.setTitle(成绩管理系统); /学生成绩管理系统为主类,调用Interface来打开主界面。3.2FinalTable.java/此类为主界面,即包含题目,四个功能选择按钮的界面import java.awt.*;import java.awt.event.*;import java.io.IOException;import .URISyntaxException;import

6、javax.swing.*;import static java.awt.BorderLayout.*;public class Interface extends JFrame implements ActionListener JPanel panel; JButton button1,button2,button3,button4;/button1添加按钮 button2查询按钮 /button3修改按钮 button4校园网按钮 JLabel label,labelTitle,label1,label2,label3,label4;/label1,label2,label3,label

7、4 /为添加,查询,修改,校园网这几个按钮的注释,labelTitle为成绩管理系统这几个字,label用于 /添加背景 ImageIcon 背景;/背景为整个界面的背景,通过添加图片设置为背景 Icon icon1,icon2,icon3,icon4;/按钮图标 Box basebox,boxV1,boxV2,boxV3,boxV4; public Interface() /添加背景,添加标题,设置按钮图标 labelTitle=new JLabel(成绩管理系统); Font font=new Font(华文行楷, Font.BOLD+Font.TRUETYPE_FONT+Font.LAY

8、OUT_LEFT_TO_RIGHT,70); labelTitle.setFont(font); labelTitle.setForeground(new Color(255,0,0); 背景 = new ImageIcon(001.JPG); label = new JLabel(背景); label.setBounds(0, 0, 背景.getIconWidth(), 背景.getIconHeight(); this.getLayeredPane().setLayout(null); icon1=new ImageIcon(1.png); button1 = new JButton(ico

9、n1); button1.setContentAreaFilled (false); icon2=new ImageIcon(2.png); button2 = new JButton(icon2); button2.setContentAreaFilled (false); icon3=new ImageIcon(3.png); button3 = new JButton(icon3); button3.setContentAreaFilled (false); icon4=new ImageIcon(4.png); button4 = new JButton(icon4); button4

10、.setContentAreaFilled (false); /设置按钮的解释文字的字体和颜色,并把按钮和其对应的文字说明用BoxLayout布局 /设置为上下对其形式 Font font1=new Font(微软雅黑, Font.BOLD+Font.TRUETYPE_FONT+Font.LAYOUT_LEFT_TO_RIGHT,17); label1=new JLabel( 添加); label2=new JLabel( 查询); label3=new JLabel( 修改); label4=new JLabel( 校园网); label1.setFont(font1); label2.se

11、tFont(font1); label3.setFont(font1); label4.setFont(font1); label1.setForeground(new Color(255,255,255); label2.setForeground(new Color(255,255,255); label3.setForeground(new Color(255,255,255); label4.setForeground(new Color(255,255,255); boxV1=Box.createVerticalBox(); boxV2=Box.createVerticalBox()

12、; boxV3=Box.createVerticalBox(); boxV4=Box.createVerticalBox(); boxV1.add(button1); boxV1.add(Box.createVerticalStrut(0); boxV1.add(label1); boxV2.add(button2); boxV2.add(Box.createVerticalStrut(0); boxV2.add(label2); boxV3.add(button3); boxV3.add(Box.createVerticalStrut(0); boxV3.add(label3); boxV4

13、.add(button4); boxV4.add(Box.createVerticalStrut(0); boxV4.add(label4); basebox=Box.createHorizontalBox(); basebox.add(boxV1); basebox.add(Box.createHorizontalStrut(11); basebox.add(boxV2); basebox.add(Box.createHorizontalStrut(11); basebox.add(boxV3); basebox.add(Box.createHorizontalStrut(11); base

14、box.add(boxV4); add(basebox,SOUTH); /添加背景,并把窗口大小设置为背景图片的大小 panel = (JPanel) this.getContentPane(); panel.setOpaque(false); FlowLayout f = new FlowLayout(); panel.add(labelTitle); panel.setLayout(f); getLayeredPane().setLayout(null); getLayeredPane().add(label, new Integer(Integer.MIN_VALUE); setSize

15、(背景.getIconWidth(), 背景.getIconHeight(); setBounds(350, 150,背景.getIconWidth(),背景.getIconHeight(); setVisible(true); setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); /为每个按钮设置监视器 button1.addActionListener(this); button2.addActionListener(this); button3.addActionListener(this); button4.addActionListen

16、er(this); Override public void actionPerformed(ActionEvent e) / TODO Auto-generated method stub if(e.getSource()=button2) InterfaceDesign2 interface2=new InterfaceDesign2(); /当按下button2时,打开InterfaceDesign2的窗口 else if(e.getSource()=button3) InterfaceDesign4 interface4=new InterfaceDesign4(); /当按下butt

17、on3时,打开InterfaceDesign4的窗口 else if(e.getSource()=button1) InterfaceDesign3 interface3=new InterfaceDesign3(); /当按下button1时,打开InterfaceDesign3的窗口 else if(e.getSource()=button4) /当按下button4的时候,连接校园网,此处用了jdk1.6版本的特有功能, /用电脑默认的浏览器,打开预设在程序里的东北大学秦皇岛分校的网页 Desktop dp=Desktop.getDesktop(); try dp.browse(new

18、.URI( catch (IOException e1) / TODO Auto-generated catch block e1.printStackTrace(); catch (URISyntaxException e1) / TODO Auto-generated catch block e1.printStackTrace(); 3.3InterfaceDesign2.java/查询功能窗口import java.awt.*;import java.awt.event.*;import static java.awt.BorderLayout.*;import javax.swing

19、.*;public class InterfaceDesign2 extends JFrame implements ActionListener JLabel number;/学号 JTable table1=new JTable();/用于接收由FinalTable查找出来的信息反回来的JTable类型的结果 JTextField numbertext;/输入学号的文本框 JButton seekByNumber;/查询按钮 JButton seekAll;/总成绩排名查询按钮 /用于设置背景 JPanel panel; JLabel label; ImageIcon background

20、; public InterfaceDesign2() init(); setBounds(350, 150,background.getIconWidth(),background.getIconHeight(); setVisible(true); setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); setTitle(查询); void init() /为窗口添加背景 background = new ImageIcon(010.JPG); label = new JLabel(background); label.setBounds(0,

21、 0, background.getIconWidth(), background.getIconHeight(); this.getLayeredPane().setLayout(null); panel = (JPanel) this.getContentPane(); panel.setOpaque(false); FlowLayout f = new FlowLayout(); panel.setLayout(f); getLayeredPane().setLayout(null); getLayeredPane().add(label, new Integer(Integer.MIN

22、_VALUE); setSize(background.getIconWidth(), background.getIconHeight(); /添加文本框和按钮 setLayout(new FlowLayout(); number=new JLabel(学号); numbertext=new JTextField(10); seekByNumber=new JButton(查询); seekAll=new JButton(总成绩排名查询); add(number); add(numbertext); add(seekByNumber); add(seekAll); seekByNumber.

23、addActionListener(this); seekAll.addActionListener(this); Override public void actionPerformed(ActionEvent e) / TODO Auto-generated method stub if(e.getSource()=seekByNumber) /若学好输入框没有输入学号,提示输入学号信息 if(numbertext.getText().length()=0) JOptionPane.showMessageDialog(this, 请输入学号!,JOptionPane.WARNING_MES

24、SAGE); else /把输入的学号读入SQL语句,将SQL语句传给FinalTable类, /把查询结果反回给table1,并将table1添加到窗口中 String str=numbertext.getText(); FinalTable table=new FinalTable(); table.setSQL(SELECT * FROM 成绩表 where 学号=+Integer.parseInt(str); table1=table.finalTable(); add(new JScrollPane(table1),SOUTH); validate(); else if(e.getS

25、ource()=seekAll) /将SQL按总分排名顺序的语句传给FinalTable类, /把查询结果反回给table1,并将table1添加到窗口中 FinalTable table=new FinalTable(); table.setSQL(SELECT * FROM 成绩表 order by 总分 DESC); table1=table.finalTable(); add(new JScrollPane(table1),SOUTH); validate(); 3.4InterfaceDesign3.java/按下添加按钮后的添加新记录的界面import java.awt.Color

26、;import java.awt.FlowLayout;import java.awt.Font;import java.awt.event.*;import static java.awt.BorderLayout.*;import javax.swing.*;public class InterfaceDesign3 extends JFrame implements ActionListener Box basebox,boxV1,boxV2;/用BoxLayout布局来设置添加的JTextField文本框和对应的说明 JTextField text1,text2,text3,text4

27、,text5,text6; JButton add; JLabel label1,label2,label3,label4,label5,label6; /用于设置背景所用到的变量 JPanel panel; JLabel label; ImageIcon background; public InterfaceDesign3() setLayout(new FlowLayout(); init(); setVisible(true); setDefaultCloseOperation(DISPOSE_ON_CLOSE); setTitle(添加); void init() /添加背景图片 b

28、ackground = new ImageIcon(012.JPG); label = new JLabel(background); label.setBounds(0, 0, background.getIconWidth(), background.getIconHeight(); this.getLayeredPane().setLayout(null); /添加按钮极其注释文字,并设置字体颜色,大小 add = new JButton(new ImageIcon(d.png); add(add); /添加背景,并设置窗口大小为背景大小 add.setContentAreaFilled

29、 (false); panel = (JPanel) this.getContentPane(); panel.setOpaque(false); FlowLayout f = new FlowLayout(); panel.setLayout(f); panel.add(add); getLayeredPane().setLayout(null); getLayeredPane().add(label, new Integer(Integer.MIN_VALUE); setBounds(350, 150, background.getIconWidth(), background.getIconHeight(); Font font1=new Font(微软雅黑, Font.BOLD+Font.TRUETYPE_FONT+Font.LAYOUT_LEFT_TO_RIGHT,15); label1=new JLabel( 学 号

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1