Java应用开发与课程设计实例.ppt

上传人:牧羊曲112 文档编号:6509780 上传时间:2023-11-07 格式:PPT 页数:21 大小:1.15MB
返回 下载 相关 举报
Java应用开发与课程设计实例.ppt_第1页
第1页 / 共21页
Java应用开发与课程设计实例.ppt_第2页
第2页 / 共21页
Java应用开发与课程设计实例.ppt_第3页
第3页 / 共21页
Java应用开发与课程设计实例.ppt_第4页
第4页 / 共21页
Java应用开发与课程设计实例.ppt_第5页
第5页 / 共21页
点击查看更多>>
资源描述

《Java应用开发与课程设计实例.ppt》由会员分享,可在线阅读,更多相关《Java应用开发与课程设计实例.ppt(21页珍藏版)》请在三一办公上搜索。

1、2023/11/7,1,Java程序设计及应用开发教程,主编:虞益诚,E-mail:,2023/11/7,第16章 应用开发与课程设计实例,2,第16章 Java应用开发与课程设计实例,16.1 系统开发概述16.2 需求分析16.3 总体设计16.4 详细设计 16.5 本章小结 学习的目的在于应用。Java应用开发是对所学知识的梳理与综合,也是服务于社会的集中体现。本章主要讲述了系统开发概述、需求分析、系统总体构思、系统模块设计、系统数据流程、数据库、设计,同时介绍了详细设计和主要程序代码实现过程。,2023/11/7,第16章 应用开发与课程设计实例,3,16.1 系统开发概述,通常,系

2、统开发要经历系统规划、系统分析、系统设计、系统实施、系统运行与维护五个阶段。系统规划是制定信息系统的发展战略、系统的总体方案、数据规划、功能规划与信息资源配置规划。系统分析系指系统初步调查、系统可行性研究、系统详细调查、需求分析等。系统设计包括总体设计与详细设计,涵盖系统总体结构设计、输入输出设计、处理过程设计、代码设计、数据库设计、系统平台方案的选择,物理模型的提出等。系统实施包括程序设计与调试,系统软硬件配置、安装与调试,人员的培训,系统的切换运行等。系统运行与维护系指系统运行的组织与管理,系统评价,系统纠错性维护、适应性维护、完善性维护、预防性维护等。限于篇幅在此我们主要关注需求分析、系

3、统总体设计与详细设计。,2023/11/7,第16章 应用开发与课程设计实例,4,16.2 系统开发概述需求分析,16.1.1系统概述 学生管理信息系统(SMIS:Student Management Information System)主要分析、编辑与实现学生信息的输入、修改、设置、查询与统计等基本功能。它可用来管理学生信息与提高系统管理工作的效率。16.1.2系统平台需求1.软件环境软件基本运行的平台环境为Windows2000/XP操作系统、J2EE运行平台(SDK1.5),JCreator。为提高开发效率,尚宜采用快速开发平台JBuilder 系列。2.硬件环境系统在Windows2

4、000/XP、JCreator及JBuilder下开发,通常的微机系统均能够胜任,只不过快慢而已,但推荐:CPU为1G以上、内存256M以上、硬盘容量在10G以上为好。,2023/11/7,第16章 应用开发与课程设计实例,5,16.3 总体设计,16.1.3 系统功能需求 系统开发的总体任务是实现学生信息管理的系统化、规范化和自动化。需求分析是在系统开发总体任务的基础上完成的,从发展的角度充分了解用户各方面的需求。16.3 总体设计16.3.1 系统总体构思 在前期需求分析的基础上,从信息系统的目标出发,建立系统的总体结构,确立各个模块层次,设计完善的数据库系统,以保证总体目标的实现,为设计

5、良好的用户界面与安全可靠的系统打下基础。16.3.2 系统模块设计依据需求分析及主要任务的表述,可对上述各项功能按照结构化程序设计的要求进行集中、分层结构化,自上而下逐层设置得到系统功能模块结构图,系统总体功能模块结构如图16-1所示。,2023/11/7,第16章 应用开发与课程设计实例,6,2023/11/7,第16章 应用开发与课程设计实例,7,16.3.3 系统数据流程,用户的需求具体体现在各种信息的提供、保存、更新、查询和统计打印上,这就要求系统数据流应充分满足各种信息的输入和输出。本系统数据流程图如图16-2所示。16.3.4 数据库的设计 数据库规划与设计是数据库应用与系统开发的

6、关键问题。数据库设计过程如图16-3所示为。,2023/11/7,第16章 应用开发与课程设计实例,8,13.2 URL编程0,数据库表的主要内容如下:学生基本信息表表示了学生的基本信息:学号、姓名、性别、出生日期、家庭地址等,如表16-1所示。学生成绩信息表包括了学号、学分、成绩总分、语文、数学、英语等,如表16-1所示。学生成绩信息表包括了班级、学院、专业、班主任、教室(所在教室)、等,如表16-2所示。,2023/11/7,第16章 应用开发与课程设计实例,9,16.4 详细设计,依据系统需求分析和系统总体设计的基础与结论,我们可以展开对主要模块分析,阐述系统的详细设计和主要代码实现过程

7、(限于篇幅,详细可参阅所供例题、开发实例源程序)。16.4.1 主控平台模块基于功能需求和总体设计的结果,本平台可以驱动:初始化、信息管理、成绩管理、信息查询、数据统计、系统帮助等诸多子模块,通过点击主控菜单的方式进入相应的功能模块。主控界面窗体如图16-4所示。,2023/11/7,第16章 应用开发与课程设计实例,10,16.4 详细设计_部分代码1,import java.awt.*;import java.awt.event.*;import javax.swing.*;jbcl.layout.*;import java.sql.*;import javax.swing.border.

8、TitledBorder;public class MainClass extends JFrame/主窗体平台类,引出子类及方法等 JPanel contentPane;ResultSet rs;/定义内容面版与数据关联所用库对象String sql=new String();Database DB=new Database();/使用Database类定义DB public static studmess SMall=new studmess();/设置显示窗体类对象供返回用public static editStudmess editmess=new editStudmess();pub

9、lic static delStudmess delImess=new delStudmess();public static StudShow StudShmess=new StudShow();JMenuBar mainMenu=new JMenuBar();/开始声明系统菜单栏及菜单项目JMenu menuIni=new JMenu();/开始定义系统菜单及其菜单项目JMenuItem itemExit=new JMenuItem();JMenu jMenuSysini=new JMenu();/初始化JMenuItem jMenuItemdi=new JMenuItem();JMenu

10、Item jMenuItemjz=new JMenuItem();JMenuItem jMenuItemzx=new JMenuItem();JMenuItem jMenuItembf=new JMenuItem();JMenuItem jMenuItemhf=new JMenuItem();JMenuItem jMenuItemau=new JMenuItem();JMenuItem jMenuItemrp=new JMenuItem();JMenu menuInfo=new JMenu();/信息管理,2023/11/7,第16章 应用开发与课程设计实例,11,16.4 详细设计_部分代码

11、2,JMenuItem itemShow=new JMenuItem();JMenuItem itemAdd=new JMenuItem();JMenuItem itemEdit=new JMenuItem();JMenuItem itemDelete=new JMenuItem();JMenu menuGrade=new JMenu();/成绩管理JMenuItem itemShowG=new JMenuItem();JMenuItem itemAddG=new JMenuItem();JMenu menuOrder=new JMenu();JMenuItem itemByTotal=new

12、 JMenuItem();JMenuItem itemByChinese=new JMenuItem();JMenuItem itemByMath=new JMenuItem();JMenuItem itemByEnglish=new JMenuItem();JMenuItem itemByCgrade=new JMenuItem();/按学分排序JMenu menuSearchAll=new JMenu();/信息查询JMenuItem itemSearchGrade=new JMenuItem();/查询成绩JMenu menuSearch=new JMenu();/查询人员JMenuIt

13、em itemSearchByName=new JMenuItem();JMenuItem itemSearchByNum=new JMenuItem();JMenuItem itemSearchByClass=new JMenuItem();JMenu menuSum=new JMenu();/数据统计JMenuItem itemSumPeople=new JMenuItem();JMenuItem itemSumGrade=new JMenuItem();JMenu menuHelp=new JMenu();/系统帮助JMenuItem itemAbout=new JMenuItem();

14、JMenuItem itemTool=new JMenuItem();JMenuItem itemGuide=new JMenuItem();JMenu jMenuSetup=new JMenu();JMenuItem jMenuItemtiut=new JMenuItem();JMenuItem jMenuItemSp=new JMenuItem();JMenuItem jMenuItemExam=new JMenuItem();JMenuItem jMenuItemKm=new JMenuItem();JMenuItem jMenuItemClass=new JMenuItem();JMe

15、nuItem jMenuItemxq=new JMenuItem();,2023/11/7,第16章 应用开发与课程设计实例,12,16.4 详细设计_部分代码3,XYLayout xYLayout1=new XYLayout();Label label2=new Label();JButton jButton1=new JButton();TitledBorder titledBorder1=new TitledBorder();public MainClass()/主构造方法enableEvents(AWTEvent.WINDOW_EVENT_MASK);try MenusInit();c

16、atch(Exception e)e.printStackTrace();private void MenusInit()throws Exception/菜单显示信息初始化,略有省略contentPane=(JPanel)this.getContentPane();contentPane.setLayout(xYLayout1);this.setSize(new Dimension(400,300);this.setTitle(高校学生管理信息系统);jMenuini.setText(初始化);/初始化菜单显示信息及字体设置jMenuini.setFont(new java.awt.Font

17、(Dialog,Font.PLAIN,12);itemExit.setText(退出本系统);/下条语句为设置:“退出本系统”注册监听itemExit.addActionListener(new MainClass_itemExit_ActionAdapter(this);itemExit.setFont(new java.awt.Font(Dialog,0,12);jMenuItembf.setText(数据库备份);/数据库备份菜单显示信息及字体设置jMenuItembf.addActionListener(new MainClass_ jMenuItembf _ActionAdapter

18、(this);jMenuItembf.setFont(new java.awt.Font(Dialog,Font.PLAIN,12);jMenuItemhf.setText(数据库恢复);jMenuItemhf.addActionListener(new MainClass_ jMenuItemhf _ActionAdapter(this);jMenuItemhf.setFont(new java.awt.Font(Dialog,Font.PLAIN,12);jMenuIni.setText(初始化);jMenuIni.setFont(new java.awt.Font(Dialog,0,12

19、);,2023/11/7,第16章 应用开发与课程设计实例,13,16.4 详细设计_部分代码4,jMenuInfo.setText(信息管理);jMenuInfo.setFont(new java.awt.Font(Dialog,0,12);jMenuGrade.setText(成绩管理);jMenuGrade.setFont(new java.awt.Font(Dialog,0,12);itemSearchAll.setText(信息查询);itemSearchAll.setFont(new java.awt.Font(Dialog,0,12);itemSearchGrade.setTex

20、t(查询成绩);itemSearchGrade.addActionListener(new MainClass_ itemSearchGrade _ActionAdapter(this);itemSearchGrade.setFont(new java.awt.Font(Dialog,0,12);/子菜单及部分菜单项省略jMenuSum.setText(数据统计);jMenuSum.setFont(new java.awt.Font(Dialog,0,12);jMenuSetup.setText(系统设置);jMenuSetup.setFont(new java.awt.Font(Dialog

21、,Font.PLAIN,12);jMenuHelp.setText(帮助);menuHelp.setFont(new java.awt.Font(Dialog,0,12);contentPane.setBackground(Color.pink);/设置内容面板背景色 contentPane.setEnabled(true);contentPane.setToolTipText();contentPane.setActionMap(null);label2.setAlignment(Label.CENTER);label2.setBackground(Color.lightGray);labe

22、l2.setFont(new java.awt.Font(宋体,Font.BOLD,27);label2.setForeground(Color.red);label2.setText(高等院校);jButton1.setBackground(Color.lightGray);jButton1.setFont(new java.awt.Font(隶书,Font.BOLD,38);jButton1.setForeground(Color.blue);jButton1.setBorder(titledBorder1);jButton1.setText(学生管理信息系统);/添加系统一级菜单:初始化

23、.信息管理.成绩管理.信息查询.数据统计.系统设置.帮助mainMenu.add(menuIni);mainMenu.add(menuInfo);mainMenu.add(menuGrade);mainMenu.add(menuSearchAll);mainMenu.add(menuSum);mainMenu.add(jMenuSetup);mainMenu.add(menuHelp);,2023/11/7,第16章 应用开发与课程设计实例,14,16.4 详细设计_部分代码5,menuIni.add(itemExit);menuIni.addSeparator();/添加初始化菜单的菜单项与

24、分隔条 menuIni.add(jMenuSysini);menuIni.addSeparator();menuIni.add(jMenuItembf);menuIni.add(jMenuItemhf);menuIni.addSeparator();menuIni.add(jMenuItemau);menuIni.add(jMenuItemrp);jMenuSysini.add(jMenuItemdi);/添加二级初始化的菜单项 jMenuSetup.add(itemtiut);jMenuSetup.add(itemSp);/添加系统设置菜单的菜单项 jMenuSetup.addSeparat

25、or();jMenuSetup.add(itemExam);jMenuSetup.add(itemkm);jMenuSetup.addSeparator();jMenuSetup.add(itemClass);jMenuSetup.add(itemxq);menuHelp.add(itemAbout);/添加帮助菜单的菜单项 menuHelp.addSeparator();menuHelp.add(itemTool);menuHelp.add(itemGuide);contentPane.add(label2,new XYConstraints(274,78,118,42);contentPa

26、ne.add(jButton1,new XYConstraints(24,126,351,48);jMenuSetup.addSeparator();this.setJMenuBar(mainMenu);/以下是部分监听类class MainClass_itemExit_ActionAdapter implements ActionListener/系统退出监听MainClass adaptee;MainClass_itemExit_ActionAdapter(MainClass adaptee)this.adaptee=adaptee;public void actionPerformed(

27、ActionEvent e)adaptee.itemExit_actionPerformed(e);class MainClass_ jMenuItembf _ActionAdapter implements ActionListener/数据备份监听MainClass adaptee;MainClass_ jMenuItembf _ActionAdapter(MainClass adaptee)this.adaptee=adaptee;public void actionPerformed(ActionEvent e)adaptee.jMenuItembf _actionPerformed(

28、e);/部分省略 class MainClass_ itemtiut_actionAdapter implements java.awt.event.ActionListener/院系监听MainClass adaptee;MainClass_ itemtiut _actionAdapter(MainClass adaptee)this.adaptee=adaptee;public void actionPerformed(ActionEvent e)adaptee.itemByCgrade_actionPerformed(e);,2023/11/7,第16章 应用开发与课程设计实例,15,1

29、6.4 详细设计0,16.4.2 初始化模块 该模块提供了:数据库备份、数据库恢复、系统初始化(包括专项设置、数据初始化与数据结转)、添加用户、修改密码和退出系统等功能,从而为系统提供了数据库的安全性备份与恢复,系统数据的按需自动清零、数据跨年度的结转以及用户程序结束后有效退出等,在此,主要介绍数据库备份、数据库恢复、退出系统。数据库备份主要程序如下:void jMenuItembf _actionPerformed(ActionEvent e)File filebak=new File(“.bakdb.bak”);/备份文件对象File fileDb=new File(“.dataStude

30、nt_Info.mdb”);/数据库文件对象FileinputStream fin=null;FileoutStream fout=null;/文件输入与输出流try/将数据库复制到备份数据库。if(!filebak.exists();filebak.createNewfile();fin=new FileinputStream(fileDb);fout=new FileoutputStream(filebak);int read0;while(read0=filein.read()!=-1)fout.write(byte)read0;JOptionPane.showMessageDialog

31、(this,”备份成功!”,”提示”,JOptionPane.INFORMATION_MESSAGE);catch(Exception e)JOptionPane.showMessageDialog(this,e.toString(),”提示”,JOptionPane.ERROR_MESSAGE);finally try/关闭文件输入输出流 if(fin!=null)fin.close();if(fout!=null)fout.close();catch(Exception ex),2023/11/7,第16章 应用开发与课程设计实例,16,16.4 详细设计1,16.4.3 信息管理模块此模

32、块分为学生信息管理(即综合信息管理)、添加学生信息、修改学生信息、删除学生信息四部分,用来完成学生基础信息的添加、修改、删除等管理。部分窗体界面如下:,2023/11/7,第16章 应用开发与课程设计实例,17,16.4.4 成绩管理模块成绩管理模块包括:学生成绩管理、添加学生成绩和学生成绩排序等。部分窗体界面如下:。,2023/11/7,第16章 应用开发与课程设计实例,18,16.4 详细设计2,16.4.5 信息查询模块该模块包括了查询成绩与查询人员子模块,后者又涵盖了按学号、按姓名与按班级查询三种形式,点击“信息查询查询人员按学号/按姓名/按班级”按钮即可进行,如图16-14所示。查询

33、时根据不同类型生成相应的SQL查询语句,然后在窗体中显示。查询成绩与查询人员最终输出窗体中显示的内容略有差异,但处理方式有同工之处,在此一并简述了,它们的输出窗体分别如图16-15和16-16所示。,2023/11/7,第16章 应用开发与课程设计实例,19,16.4 详细设计3,16.4.6 其他功能模块其他功能模块包括:人员统计、成绩统计和系统设置等模块等。它们的输出窗体分别如下图所示。在此仅以人员统计为例进行表述。人员统计人员统计是按人员查询要求(如学号、姓名、学分、性别、班级、出生日期,如图16-17所示)完成对各种统计,部分代码如下:,void jButOK _actionPerfo

34、rmed(ActionEvent e)sql=select*from Student_Info;/人员统计if(jCType.getSelectedIndex()=0)/根据选项判断查询的类型:按学号if(Min.getText().equals()/statisticperson end,2023/11/7,第16章 应用开发与课程设计实例,21,16.5 本章小结,本章介绍了Java应用开发与课程设计具体实例。通常,系统开发要经历系统规划、系统分析、系统设计、系统实施、系统运行与维护五个阶段。高校学生管理信息系统主要包括:初始化、信息管理、成绩管理、信息查询、数据统计、系统设置与帮助等基本功能。本章主要讲述了系统开发概述、系统平台需求、系统功能需求、系统总体构思、系统模块设计、系统数据流程、数据库、设计,同时介绍了详细设计和主要程序代码实现过程。,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号