1、SQL Server 2005 JCreator1.7 作图软件:Rational Rose Enterprise Edition 2003(三)进度安排该软件应用JCreater1.7和SQL Server 2005进行编程,历时大概一周,最终完成了这个小型图书管理系统。由于时间仓促,该小型图书管理系统并不完善。我用了两天时间查找相关资料,两天时间编写代码和连接数据库。其余三天开始应用Rational Rose Enterprise Edition 2003画数据流图、结构图、流程图、用例图和包图类图。整个过程系我一人完成。二、结构化分析设计(一)数据流图 书籍信息 读者信息 读者信息 查询
2、信息图2.1-1图书管理系统的顶层DFD book表 录入信息 查询请求 更新信息 查询结果 reader表图2.1-2图书管理系统的第二层DFD book表 reader表图2.1-3图书管理系统的第三层DFD查询结果 查询请求 无效请求 有效请求book表图2.1-4图书管理系统的第三层DFD(二)数据字典 数据流数据流编号D01数据流名称查询读者信息数据流组成学号D02查询读者信息结果学号+姓名+性别+年龄+密码+系别D03添加书籍信息索书号+书名+数量+作者+出版社D04删除书籍信息索书号D05更新书籍信息D06查询书籍信息D07查询书籍信息结果数据项数据项名取 值姓名4-6字符性别2
3、字符年龄正整数密码6字符系别020字符书名0-20字符数量作者出版社(三)加工说明审查用户查询书籍信息请求2.3图-加工说明(四)结构图 图2.4-1图书管理系统上层框架图2.4-2-图书管理子系统初始SC图图2.4-3-图书管理子系统初始SC图图2.4-4-图书管理系统SC图的上层框架(五)流程图图2.5-1图书管理系统登录流程图图2.5-2读者信息查询流程图图2.5-3添加书籍流程图图2.5-4删除书籍流程图图2.5-5更新书籍流程图图2.5-6查询书籍流程图三、面向对象分析设计(一)用例图用例图在需求分析阶段有重要作用,它是作为参与者的外部用户所能观察到的系统功能模型图。整个开发过程都是
4、围绕需求阶段用例进行的。首先需要确定参与者。管理员在登录后对读者信息进行查询以及对书籍的添加、删除、更新和查询。用户在登录后可以对书籍信息进行查询。图书管理系统管理员-用户用例图(二)对象行为模型继续选择服务 登录错误 登录正确 查询读者信息(三)系统包图数据库包:包含数据库中所有的数据信息用户包:包含要使用系统的用户及其属性管理员包:包含要使用系统的管理员及其属性接口包:表示系统和数据库的借口系统包:表示图书管理系统(四)类图类是面对对象系统组成的核心。类是对一组相同属性、操作、关系和语义的对象的描述。这些对象包括了对现实世界中的物理实体、商业事务、逻辑事务、应用事务和行为事务等,甚至也包括
5、了纯粹概念性的事务,它们都是类的实例。图3.4-1类图图3.4-2系统的类图四、系统实现(一)程序代码1.主窗口界面import java.awt.*;import java.awt.event.*;import javax.swing.*;import javax.swing.border.TitledBorder;import java.awt.Font;import javax.swing.JMenu;public class MainWindow extends JFrame implements ActionListener private static final long ser
6、ialVersionUID = 1L; static String loginName; static String loginNo; JLabel mlabel; JPanel jp=new JPanel(); 建立菜单栏 JMenuBar menu=new JMenuBar(); JMenu a=new JMenu(); JMenu b=new JMenu(); JMenu c=new JMenu(); 建立系统管理菜单组 JMenuItem aa=new JMenuItem(); JMenuItem ab=new JMenuItem(); JMenuItem ac=new JMenuIt
7、em(); 建立读者管理菜单组 JMenuItem bb=new JMenuItem(); 建立书籍管理菜单组 JMenuItem ca=new JMenuItem(); JMenuItem cb=new JMenuItem(); JMenuItem cc=new JMenuItem(); JMenuItem cd=new JMenuItem();public MainWindow() super(图书管理系统); addWindowListener(new WindowAdapter() public void windowClosing(WindowEvent e) System.exit
8、(0);); Container d=getContentPane(); this.setSize(); this.setTitle( d.add(menu); menu.add(a); menu.add(b); menu.add(c); 添加菜单组 a.setText(系统管理 a.setFont(new Font(Dialog,0,12); b.setText(读者管理 b.setFont(new Font( c.setText(书籍管理 c.setFont(new Font( 生成系统管理菜单组的选项 aa.setText(登录 aa.setFont(new Font( ab.setTe
9、xt(退出登录 ab.setFont(new Font( ac.setText(退出系统 ac.setFont(new Font( 生成读者管理菜单组的选项 bb.setText(查询读者信息 bb.setFont(new Font( 生成书籍管理菜单组的选项 ca.setText(添加书籍 ca.setFont(new Font( cb.setText(删除书籍 cb.setFont(new Font( cc.setText(查询读书信息 cc.setFont(new Font( cd.setText(更新书籍 cd.setFont(new Font( 添加系统管理菜单组 a.add(aa)
10、; a.add(ab); a.add(ac); 添加读者管理菜单组 b.add(bb); 添加书籍管理菜单组 c.add(ca); c.add(cb); c.add(cc); c.add(cd); 添加事件侦听 aa.addActionListener(this); ab.addActionListener(this); ac.addActionListener(this); bb.addActionListener(this); ca.addActionListener(this); cb.addActionListener(this); cc.addActionListener(this)
11、; cd.addActionListener(this); setJMenuBar(menu); public void actionPerformed(ActionEvent e) if(e.getSource()=aa) UserLogin login=new UserLogin(this); login.setVisible(true); if(e.getSource()=ab) setVisible(false); MainWindow mainFrame=new MainWindow(); mainFrame.setLocation(); mainFrame.setVisible(true); if(e.getSource()=ac) System.exit(0
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1