计算机毕业设计_固定资产管理信息系统.pdf_第1页
计算机毕业设计_固定资产管理信息系统.pdf_第2页
计算机毕业设计_固定资产管理信息系统.pdf_第3页
计算机毕业设计_固定资产管理信息系统.pdf_第4页
计算机毕业设计_固定资产管理信息系统.pdf_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

毕 业 设 计 (论 文) 专专 业业 信息与计算科学信息与计算科学 班班 级级 学生姓名学生姓名 学学 号号 课课 题题 指导教师指导教师 年年 月月 安徽建筑工业学院安徽建筑工业学院 毕业设计(论文) I 固定资产管理信息系统的设计与实现固定资产管理信息系统的设计与实现 摘摘 要要:随着社会经济的发展,企业的规模逐渐发生变化,其管理难度越来越大。其中固定资产 管理已经成为公司管理中不可或缺的一部分。 作为计算机应用的一部分,使用计算机对固定资产进 行管理,具有着手工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保 密性好、寿命长、成本低等。因此,使用计算机实现了企业固定资产管理的信息化、系统化,提 高了企业的管理水平和经济效益。 本课题主要是在众多已有的固定资产管理系统软件的基础上,总结设计出一套能够适用于一 般小企业的固定资产管理软件,同时学习和熟悉软件开发相关知识。主要工作如下: (1)对已有的固定资产管理软件进行学习和研究,分析相关行业的功能需求,总结出 本系统的需求分析; (2) 学习 Java 语言的最新版 J2SE 1.5, 掌握 Java Swing 技术, 使用 Jbuilder2006 平台和 SQL Server2000 数据库对本系统进行(C/S)桌面开发,学习并利用 MVC 思想对本系统进行架构。 (3)对开发的软件系统进行测试和调试,分析优点和不足,为继续深造或从事相关行业工作 打下基础。 关键词关键词:固定资产管理;Java Swing;MVC; The design and implementation of fixed assets management information 安徽建筑工业学院安徽建筑工业学院 毕业设计(论文) II system Cheng Sheng (Department of mathematics (2)Study the procedural languages of the latest J2SE 1.5, control the technique of Java Swing, use Jbuilder2006 platforms, the SQL Server2000 databases carry on(C/S) a desktop development to this system and study and make use of MVC thought to carry on structure to this system. (3)The software system of folio hair carries on test, testing and debug, analyze advantage and shortage, for go on advanced study or be engaged in a related profession work to lay the foundation. Key words: the fixed assets manage Java Swing MVC 安徽建筑工业学院安徽建筑工业学院 毕业设计(论文) III 目录目录 目录III 图片目录. IV 表格目录.V 1 引言1 1.1 课题相关背景.1 1.2 课题研究目的和意义.1 1.3 本文的工作 1 2 系统设计方案的研究 2 2.1 Java 语言概述2 2.1.1 Java 语言的主要特点2 2.1.2 Java 语言的平台版本2 2.2 Java 集成开发环境 JBuilder2006 的介绍3 2.3 Java Swing 技术介绍3 2.3.1 Swing 概述.3 2.3.2 Swing 组件介绍4 2.4 Java 数据库开发 JDBC 简介6 2.4.1 什么是 JDBC6 2.4.2 JDBC 应用程序结构6 2.5 MVC 设计思想概述7 2.5.1 MVC 设计思想简介7 2.5.2 Swing MVC 结构.8 3 系统总体设计 9 3.1 系统需求分析.9 3.1.1 系统功能总述.9 3.1.2 系统功能实现.10 3.2 系统结构设计.13 3.2.1 系统总体架构.13 3.2.2 系统模块划分.14 3.3 系统数据库设计.15 3.3.1 逻辑设计.15 3.3.2 表设计.15 4 系统实现和关键部分介绍.1 4.1 系统详细设计.1 4.2 重点模块开发介绍.3 4.2.1 模块界面(View)开发.3 4.2.2 模块实体(Model)开发.5 4.2.3 模块控制(Controller)开发.5 4.3 系统测试与调试.9 5 结束语9 致 谢10 参考文献11 安徽建筑工业学院安徽建筑工业学院 毕业设计(论文) IV 图片目录图片目录 图 1 Swing 类结构4 图 2 JDBC 和数据库的通信.6 图 3 访问数据库的步骤7 图 4 MVC 设计模式.8 图 5 系统用例图 .10 图 6 系统结构 .13 图 7 系统下拉菜单 .14 图 8 系统工具栏按钮 .14 图 9 E-R 图15 图 10 表的关系 .1 图 11 AssetDialog 界面.4 图 12 AssetDialog 各子类功能按钮.4 图 13 AssetInfoPanel 界面 5 图 14 AddAssetDialog 界面6 安徽建筑工业学院安徽建筑工业学院 毕业设计(论文) V 表格目录表格目录 表 1 Swing 组件.5 表 2 Java.sql 包常用类.6 表 3 Java.sql 包常用接口.6 表 4 模块划分 14 表 5 工具栏按钮说明 .14 表 6 固定资产表 15 表 7 职工表16 表 8 资产类别表 16 表 9 借用归还表 16 表 10 管理员表 16 表 11 系统类的详细说明.1 安徽建筑工业学院安徽建筑工业学院 毕业设计(论文) 1 1 引言引言 1.11.1 课题相课题相关背景关背景 随着社会经济的迅速发展和科学技术的全面进步,计算机事业的飞速发展,以计算机与通信 技术为基础的信息系统正处于蓬勃发展的时期。随着企业的发展,企业的规模也逐渐发生变化, 其管理难度也越来越大,如何优化企业设备、资产的日常管理也就成为了一个大众化的课题。如 何更好的提高生产效率,相关的企业资产管理系统的研发在社会中越来越受到重视。 固定资产已成为公司管理中不可或缺的一部分,在许多国家得到了广泛的研究与应用。总的 说来,固定资产管理系统就是通过集中固定资产信息,对公司的管理进行调控。实现固定资产管 理系统现代化的根本途径是信息化、系统化。 1.21.2 课题研究目的和意义课题研究目的和意义 作为计算机应用的一部分,使用计算机对固定资产进行管理,具有着手工管理所无法比拟的优 点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点 能够极大地提高固定资产管理的效率,也是科学化、 正规化管理的重要条件。 固定资产管理系统通 过采集固定资产日常工作中所产生的各种原始数据,根据资产管理的要求,对数据进行分类、统 计、汇总、分析,建立程序化、制度化、规范化的固定资产计算机软件管理系统,包括了固定资 产的一般特性、固定资产状态数据和固定资产能力数据,及时准确地报出各种报表,为固定资产 管理提供了一个现代化的管理手段,这一手段可以强化和规范对固定资产的管理。便于计划、财 务、审计等管理部门的介入,形成严格的监督、约束机制。 固定资产具有价值高,使用周期长、使用地点分散、管理难度大等特点。企事业、机关、高 校的固定资产用人工手动管理,将面临管理起来工作量大;固定资产的增加、减少、转移、租赁、 停用、封存、闲置、报废和调拨等不易管理。因此,使用计算机对固定资产进行管理,提高了管 理水平,提高了工作效率,提高了企业的经济效益。 1.31.3 本文的工作本文的工作 1) 对目前市场上已有的固定资产管理软件进行学习和研究,分析相关行业的需求,总结出本系 统的需求分析。 2) 学习 Java 语言的最新版 J2SE 1.5,掌握 Java Swing 界面(GUI)开发技术,学会使用 Java 集成 开发环境(IDE)JBuilder2006 和 SQL Server2000 数据库,对本系统进行前台开发和后台设计。 3) 学习并运用 MVC 思想对本系统进行总体架构,利用面向对象的程序设计思路对本系统的各 功能模块进行结构设计和代码编写。 4) 对开发的软件系统进行测试和调试,总结优点与不足,为今后继续深造和从事相关行业的工 作打下基础。 安徽建筑工业学院安徽建筑工业学院 毕业设计(论文) 2 2 系统设计方案的研究系统设计方案的研究 2.12.1 Java Java 语言概述语言概述 Java 语言诞生于 1991 年,起初被称为 OAK 语言,是 Sun 公司为一些消费性电子产品设计的 一个通用环境。Java 是当今 Internet 环境下主流的网络编程语言,并对其他技术和应用方面产生 了深远的影响。Java 是一种程序设计语言,也是一门软件开发技术,它体现了先进的软件开发和 编程思想。Java 的出现导致了程序设计领域的一场革命,Java 和 Java 相关的一系列技术的出现, 极大地提高了软件质量和软件生产率,Java 因此被誉为 21 世纪最重要的技术之一1。 .1 JavaJava 语言语言的主要特点的主要特点 概括地说,Java 是一种性能优异的、简单、面向对象的、分布式的、解释的、健壮的、安全 的、结构的、中立的、可移植的、多线程的和动态的语言2。 ? 平台无关性平台无关性 平台无关性是指 Java 能运行于不同的平台上。Java 引进虚拟机原理,并运行 于虚拟机,实现不同平台之间的 Java 接口。使用 Java 编写的程序能在世界范围内共享。所 以 Java 有一句著名的口号: “一次编写,随处运行” 。 ? 安全安全 Java 的编程类似 C+, 但是 Java 舍弃了 C+的指针对应存储器地址的直接操 作。当程序运行时,内存有操作系统分配,这样可以避免病毒通过指针侵入系统。Java 对程 序提供了安全管理器,防止程序的非法访问。 ? 面向对象面向对象 Java 吸取了 C+面向对象的概念,而且更加强调了面向对象的特征,是一个 纯面向对象的语言。Java 语言的设计集中于对象及其接口,它提供了简单的类机制以及动态 的接口模型。Java 的对象封装了它的状态变量以及相应的方法,实现了模块化和信息隐藏。 Java 的类提供了一类对象的模型,通过继承机制,子类可以使用父类所提供的方法,实现了 代码的重用。 ? 面向分布面向分布 Java 建立在 TCP/IP 网络平台上。Java 库函数提供了用 HTTP 和 FTP 协议传 送和接收信息的方法,这使得程序员像使用网络文上的文件和使用本机文件一样容易。使用 Java 语言和相关技术可以方便地构建分布式应用程序。 ? 健壮健壮 Java 致力于检查程序在编译和运行时的错误。类型检查帮助检查出许多开发 早期出现的错误。Java 自动回收内存,减少了内存出错的可能性。Java 还实现了真数组,避 免了覆盖数据的可能。这些功能特征大大提高了开发 Java 应用程序的周期。Java 提供 Null 指针检测、数组边界检测、异常出口和字节码校验。 本系统的开发将会运用到 Java 语言面向对象的封装、继承、多态的特性,并且会体现出 Java 语言的简单、健壮、安全等众多优势,具体内容会在三四两章叙述。 .2 Java Java 语言的平台版本语言的平台版本 目前,Sun 公司提供的是 Java2 平台,分为三个版本,它们是适用于桌面系统的 Java2 平台标 准版(Java 2 Platform Standard Edition,简称 J2SE) 、适用于创建服务器应用程序和服务的 Java2 平 台企业版(Java 2 Platform Enterprise Edition,简称 J2EE) 、适用于小型设备和智能卡的 Java2 平台 微型版(Java 2 Platform Micro Edition,简称 J2ME)3。 安徽建筑工业学院安徽建筑工业学院 毕业设计(论文) 3 本系统属于 C/S 桌面应用程序开发, 使用的是 J2SE 平台的最新版本 J2SE 1.5 (或称 J2SE 5.0) 。 相对应的 JDK 1.5.0x( Sun 公司提供的 Java 开发工具包 Java Development Kit 的简称) ,请到网址 查看和下载。 2.22.2 Java Java 集成开发环境集成开发环境 JBuilder2006JBuilder2006 的介绍的介绍 Borland 公司一直倡导使用最新科技以更短时间创造出品质更佳的软件,JBuilder2006 就是这 一宗旨的卓越体现。它具有极强的灵活性和强大的可扩展性,是全球领先的 Java 集成开发环境 (Integrated Development Environment,简称 IDE) 。JBuilder 2006 采用最新的 JDK 5.0,支持各个 主要领域的 Java 开发。它的主要特征如下3: ? 支持支持 JDK5.0 JBuilder2006 完全基于 JDK5.0(即 JDK 1.5.0x) 。与其他 Java 开发环 境不同的是, 在使用之前不需要对 JDK 进行安装和配置, 其默认设置就是 JDK 1.5.0x。 同时, JBuilder 2006 将在线的 Java 文档(JDK Document)集成到帮助系统里面,为开发人员查询相 关信息提供了极大便利。 ? 强大的代码生成能力强大的代码生成能力 JBuilder 2006 的可视化设计器可以十分轻松的设计图形用户界面(即 UI Design)和事件处理(即 Events Handling) ,并且自动生成相应代码,极大的提高了应用 程序开发效率。 ? 易用的易用的 IDE 提供环境变量报告功能, 用于显示JBuilder 2006当前的环境变量设置。 提供显示代码编辑功能,用于编辑修改前/后的代码,变化的代码将以不同的颜色标识显示。 提供代码单元测试功能和代码重构功能。此外,可以灵活的将第三方工具良好地集成到 JBuilder 2006 中,从而扩展 IDE 的功能。 ? 增强集成的服务器增强集成的服务器 JBuilder 2006 支持众多主流的应用服务器。更支持下列新版本的应用 服务器:JBoss 4.x、Sun Java System 8.1、Borland Enterprise Server version 6.5、BEA WebLogic version 9.0 及 IBM WebSphere version 6.0。 ? 团队开发团队开发 在团队开发方面,JBuilder 2006 提供版本控制系统(VCS) 。在 VCS 编码方面做了改进,提供 VCS 配置共享功能。增强了团队开发的能力。 2.32.3 Java Swing Java Swing 技术介绍技术介绍 图形用户界面(Graphics User Interface),简称 GUI,它使用图形的方式,借助菜单、按钮等 标准界面元素和鼠标操作,帮助用户方便地向计算机系统发出指令,启动操作,并将系统运行的 结果同样以图形方式显示给用户。图形用户界面画面生动、操作简单,深受广大用户喜爱和欢迎。 Swing 作为 Java 开发图形用户界面的技术,具有强大的功能和极大的优势,下面我将依次介绍。 .1 Swing Swing 概述概述 当 Java 刚刚出现的时候还没有 Swing,当时的 GUI 基本编程库,Sun 取名为 AWT(Abstract Window Tookit) ,基本 AWT 库处理用户界面的方法是将这些元素的创建行为,交给底层系统的 GUI 工具箱处理。而因为种种原因,不同的操作系统(OS)之间存在差异,使得 AWT 界面库存 在许多问题。1996 年 Sun 同 Netscape 通力合作创建了新的库取名为 Swing。3 Swing 的优点是: ? Swing 有一套丰富的、更方便的用户界面元素。 ? Swing 是由 100%纯 Java 实现,是所谓的“轻型” (Lightweight)组件,没有本地代码, 安徽建筑工业学院安徽建筑工业学院 毕业设计(论文) 4 不依赖于操作系统地支持,因而不容易出现与平台有关的错误。 ? Swing 建立在 AWT 之上,并且替代了 AWT 当中有问题的部分重量组件。所以,使用 Swing 组件具有更强的实用性、灵活性。 .2 Swing Swing 组件介绍组件介绍 Swing 包含 250 多个类,是组件和支持类的集合。Swing 提供了 40 多个组件,是 AWT 组件 数的 4 倍。Swing 包括的 250 多个类中,其中有些是 UI 组件,有些是支持类。为了把 UI 组件和 支持类区分开,Swing 组件的名字以 J 开头,图 1 描述了 Swing 的类关系,表 1 列出了 Swing 组 件的具体描述。16 图 1 Swing 类结构 安徽建筑工业学院安徽建筑工业学院 毕业设计(论文) 5 表 1 Swing 组件 组组 件件 表表 描描 述述 JApplet Java.applet.Applet 类的扩展,它含有 JRootPane 的一个实例 JButton 能显示文本和图形的按钮,它是 AWT 按钮组件的替代组件 JCheckBox 能显示文本和图形的复选框,它是 AWT 选择组件的替代组件 JCheckBoxMenuItem 复选框菜单项,它是 AWT 复选框菜单项组件的替代组件 JComboBox 带下拉列表的文本框,它是 AWT 选择组件的替代组件 JComponent 所有轻量组件的基类 JDesktopPane 内部窗体的容器 JDialog 对话框的基类,它扩展了 AWT Dialog 类 JEditorPane 用于编辑文本的文本窗格 JFrame 扩展 java.awt.Frame 的外部窗体 JInternalFrame 在 JDesktopPane 中出现的内部窗体 JLabel 可显示文本和图标的标签,它是 AWT 标签组件的替代组件 JLayeredPane 能够在不同层上显示组件的容器 JList 显示选项列表的组件,它是 AWT 列表组件的替代组件 JMenu 菜单条中显示的一个菜单,它是 AWT 菜单组件的替代组件 JMenuBar 用于显示菜单的菜单条,它是 AWT 菜单组件的替代组件 JMenuItem 菜单项,它是 AWT 菜单项组件的替代组件 JOptionPane 显示标准的对话框,如消息和问题对话框 JPanel 通用容器,它是 AWT 面板和画布组件的替代组件 JPasswordField JTextField 的扩展,使输入的字符不可见 JPopupMenu 弹出式菜单,它是 AWT 弹出式菜单的替代组件 JProgressBar 进度指示器 JRadioButton 单选按钮,它是 AWT 单选框组件的替代组件 JRootPane 顶层容器,包含一个玻璃窗格、一个层窗格、一个内容窗格和一个菜单条 JScrollPane 滚动条,它是 AWT 滚动条组件的替代组件 JSeparator 水平或垂直分隔条 JSlider 滑杆 JSplitPane 有两个分隔区的容器,这两个分隔区可水平排列或垂直排列且分隔区的大 小能自动调整 JTabbedPane 带选项卡的窗体 JTable 表格 JTextArea 用于输入多行文本的文本域,它是 AWT 文本域组件的替代组件 JTextComponent 文本组件的基类,它替代 AWT 的 TextComponent 类 JTextField 单行文本域,它替代 AWT 的当行文本域组件 JTextPane 简单的文本编辑器 JToggleButton 两种状态的按钮,它是 JCheckBox 和 JRadioButton 组件的基类 JToolBar 工具条 JToolTip 当光标停留在一个组件上时,该组件上显示的一行文字 JTree 用于按钮层次组织数据的结构控件 JViewport 用于浏览可滚动组件的窗口 JWindow 外部窗口,它是 java.awt.Window 的扩展 安徽建筑工业学院安徽建筑工业学院 毕业设计(论文) 6 2.42.4 Java Java 数据库开发数据库开发 JDBCJDBC 简介简介 .1 什么是什么是 JDBCJDBC Sun 公司于 1996 年发布了 JDBC(Java DataBase Connectivity,Java 数据库连接)第一版。迄 今为止,JDBC 已经发展到 JDBC4.0。它由一组用 Java 语言编写的类和接口组成。JDBC 为开发 人员提供了一个标准的 API,使我们能够用纯 Java API 来编写访问各种数据库的应用程序。换言 之, 有了 JDBC API, 就不必为访问 SQL Server, Oracle, MySQL 各写一个程序, 而只需要用 JDBC API 写一个程序就够了。3 JDBC 与传统的 ODBC (Open DataBase Connectivity 为 Mircosoft 公司倡导的用于数据库访问 的应用程序接口)相比,具有以下优势: ? JDBC 在设计上采用了“100%纯 Java”的解决方案,利用 Java 的平台无关性,JDBC 应 用程序可以自然的实现跨平台性,因而更适合 Internet 上异构环境数据库应用。 ? 大多 ODBC 驱动程序要求在客户机工作站上安装一套复杂的代码模块和注册设置、而 JDBC 是可以直接从一个本地或集中的远程服务器执行纯 Java 代码。 ? JDBC 可以被 Oracle、Sybase、Informix 及 DB2 等主流数据库连接。包括 Borland 公司在 内的许多供应商都有JDBC驱动程序。 现存的 ODBC驱动程序也可以使用JDBCODBC 桥使用。这使得开发人员可以轻松地编写出几乎完全不依赖于特定数据库的代码。 .2 JDBC JDBC 应用程序结构应用程序结构 JDBC 包含两层:一是面向程序开发人员的 JDBC API;另外一层是底层的 JDBC Driver Manager。JDBC API 和底层的 JDBC Diver Manager 层通信,向它发送各种不同的 SQL 语句。 这个管理器(Manager)和各种不同的第三方厂商的数据库 JDBC 驱动程序通信,由他们负责连 接数据库,返回查询结果或执行相应操作。JDBC 和数据库通信如图 2 所示。15 图 2 JDBC 和数据库的通信 JDBC API 定义了一组用于与数据库进行通信的类和接口,它包括在 java.sql 包中。此包中部 分常用的类和接口如表 2 和表 3 所示: 表 2 Java.sql 包常用类 类类 名名 说说 明明 Date 这个类包含将 SQL 日期格式转换成 Java 日期格式的各种方法 DriverManager 这个类用于加载和卸载各种驱动程序并建立与数据库的连接 TimeStamp 这个类表示一个时间戳,能精确到纳秒 表 3 Java.sql 包常用接口 安徽建筑工业学院安徽建筑工业学院 毕业设计(论文) 7 接口名接口名 说说 明明 CallableStatement 此接口包含用于执行 SQL 存储过程的方法 Connection 此接口用于连接数据库 Driver 此接口用于创建 Connection PreparedStatement 此接口用于执行预编译的 SQL 语句 ResultSet 此接口提供用于检索 SQL 语句返回的数据的各种方法 Statement 此接口用于执行检索 SQL 语句并将数据检索到 ResultSet 中 开发一个 JDBC 应用程序一般需要以下步骤,图 3 以图形方式显示了这些步骤:2 图 3 访问数据库的步骤 2.52.5 MVC MVC 设计思想概述设计思想概述 .1 MVC MVC 设计思想简介设计思想简介 MVC 模式是“Model-View-Controller“的缩写,中文翻译为“模式-视图-控制器“。MVC 应用程 序总是由这三个部分组成。Event(事件)导致 Controller 改变 Model 或 View,或者同时改变两者。 只要 Controller 改变了 Models 的数据或者属性,所有依赖的 View 都会自动更新。类似的,只要 Controller 改变了 View,View 会从潜在的 Model 中获取数据来刷新自己。如图 4 所示。14 安徽建筑工业学院安徽建筑工业学院 毕业设计(论文) 8 图 4 MVC 设计模式 .2 Swing MVC Swing MVC 结构结构 Swing MVC 是典型 MVC 思想的专业版本,下面就对 Swing MVC 的概念进行说明。3 ? 模型模型(Model) :是存储 Swing 组件数据的地方,例如 JTable 的 Model 会存储表格上的所 有数据。负责维护数据。模型通常提供访问和修改数据的方法。当模型变化时,这个模 型把事件发送给已登记的视图,视图会根据模型的变化来更新自己。 ? 视图视图(View) :指 Swing 组件的外观显示效果。负责提供模型的部分数据的可视图。 ? 控制器控制器(Controller) :响应用户在 Swing 组件上的具体操作,为视图处理事件。鼠标和 动作监听器等 AWT 和 Swing 监听器都是 MVC 控制器。 MVC 需要很强的设计功能。这里只做一般性概述,下面两章我将结合固定资产管理系统, 具体阐述怎样使用 MVC 思想架构本系统。 安徽建筑工业学院安徽建筑工业学院 毕业设计(论文) 9 3 系统总体设计系统总体设计 3.13.1 系统需求分析系统需求分析 .1 系统功能总述系统功能总述 通过学习现有的固定资产管理软件,分析相关行业的功能需求,并且结合自身实际能力和开 题报告中的要求,设计本系统主要功能如下: ? 管理员登录 ? 固定资产信息管理 ? 人员信息管理 ? 资产的领用 ? 资产的归还 ? 资产信息浏览和查询 具体说明如下: 1) 管理员登录管理员登录 要使用本系统必须先登录,并且只有固定资产管理员能够登录。登录的时候需要填写正确的 用户名和密码,管理员可以修改自己的密码。系统允许有有多个固定资产的管理员,每个管理员 的权限相同。 2) 固定资产信息管理固定资产信息管理 固定资产信息管理又分为: ? 固定资产类别管理 固定资产的类别在录入资产信息之前就定义好,录入资产信息之后可以增加新的类别。 类别要求分为两级,如大类可以是办公外设、数码产品、计算机等;小类分为办公外设:传真机、 复印机、打印机、其它;数码产品:数码相机、投影仪;计算机:笔记本电脑、台式机、服务器 等。类别应允许添加和删除操作。 ? 固定资产信息管理 资产的信息包括编号、名称、类别、型号、价值、购买日期、状态、使用者、备注等。 资产型号是文本信息,资产的状态分为:正常、维修、报废,使用者为空表示资产未被使用。 资产应允许执行添加、修改和删除操作。 3) 人员信息管理人员信息管理 这里的“人员”是指可能领用资产的人,人员的信息包括人员编号、姓名、职务和备注。 4) 资产的领用资产的领用 已经登记的人员,可以领用固定资产,领用时需要记录的信息有:设备编号、领用日期、管理员、 用途、备注。 只有状态为正常且使用者为空的资产才能被领用,在维修或者已经报废的资产不能够领用。 安徽建筑工业学院安徽建筑工业学院 毕业设计(论文) 10 5) 资产的归还资产的归还 资产使用完毕后要归还给管理员,归还时根据要依据领用时的记录来填写如下信息:归还日期、 管理员等。 6) 资产信息浏览和查询资产信息浏览和查询 资产信息查询又可以分为: ? 按资产类别浏览 按资产类别浏览资产信息,类别分成两级,要求能够显示大类和小类下面的资产情况、资产状况。 ? 查询资产信息 可以按资产编号、资产类别、使用者查询资产详细信息,按使用者查询显示该人员领用的所有资 产。 .2 系统功能实现系统功能实现 结合以上需求,描绘出系统的用例图如下:8 图 5 系统用例图 安徽建筑工业学院安徽建筑工业学院 毕业设计(论文) 11 具体说明如下: ? 用例 1 A、用例图 B、描述 操作员登录系统,输入用户名和密码,点击登陆键或按回车键,登录系统。 C、参与者 操作员 ? 用例 2 A、用例图 B、描述 操作员登录系统后,选择系统管理菜单或点击工具栏修改密码按钮,修改密码。 C、参与者 操作员 ? 用例 3 A、用例图 B、描述 操作员登录系统后,点击工具栏资产报表统计,进行统计和查询。 C、参与者 操作员 ? 用例 4 A、用例图 B、描述 操作员登录系统后,选择固定资产管理菜单,进行固定资产的增、删、改、查。 C、参与者 操作员 安徽建筑工业学院安徽建筑工业学院 毕业设计(论文) 12 ? 用例 5 A、用例图 B、描述 操作员登录系统后, 选择资产类别管理菜单或点击工具栏快捷键, 进行类别的的增、 删、 改、查。 C、参与者 操作员 ? 用例 6 A、用例图 B、描述 操作员登录系统后,选择职工管理菜单或点击工具栏快捷键,进行职工的增、删、改、 查。 C、参与者 操作员 ? 用例 7 A、用例图 B、描述 操作员登录系统后, 选择借用和归还固定资产管理菜单或点击工具栏快捷键, 进行固定 资产的借用与归还操作。 C、参与者 操作员 安徽建筑工业学院安徽建筑工业学院 毕业设计(论文) 13 3.23.2 系系统结构设计统结构设计 .1 系统总体架构系统总体架构 本系统总体结构采用了 MVC 和面向对象的设计思想,并且充分结合了 JBuilder2006 工具平 台强大的代码生成能力和自身实际,将 MVC 设计思想加以改进和运用。同时,对以上需求分析 进行归纳和总结,设计出大约 40 个类。并将这 40 个类规划为界面类、控制类、实体类及调用关 系几个部分。各部分之间的关系,如图 6 所示: 图 6 系统结构 具体说明如下: ? 界面类界面类 对应于 MVC 中的 View,在本系统中负责显示数据和接受用户输入信息,并将调 用结果返回到界面上显示。 ? 实体类实体类 对应于 MVC 中的 Model,在本系统中负责存储当前操作中的临时数据,并提供获 得数据信息和设置数据信息的方法。一个实体可以对应于多个界面。 ? 控制类控制类 对应于 MVC 中的 Controller,在本系统中主要是负责监听用户点击等事件,并负 责处理和数据库的交互,将调用结果返回至界面。 ? 数据库数据库 用于存储永久数据,即把当前操作 Model 中的数据,经过控制类方法的调用,存 储到相应数据库的表中。 由于本系统设计的类较多,关系复杂,这里不便详细叙述。我将在下一章中以醒目的表格形 安徽建筑工业学院安徽建筑工业学院 毕业设计(论文) 14 式具体给出每种类的说明,并结合系统重点模块的开发实现,进一步向读者说明,本系统如何体 现出 MVC 和面向对象的设计思想。 .2 系统模块划分系统模块划分 根据系统的需求分析和总体架构,将其划分为 7 大模块,见表 4。 表 4 模块划分 模模 块块 说说 明明 用户登录模块 负责登陆系统 固定资产管理模块 负责处理资产信息的增、删、改、查。 职工管理模块 负责职工信息的增、删、改、查。 类别管理模块 负责资产类别的增、删、改、查。 借用归还模块 负责资产的借用和归还。 系统管理模块 负责管理员信息的增加、修改等。 报表统计模块 负责资产信息的综合查询,报表输出等。 根据目前已有软件的使用方式, 结合用户的操作习惯, 将以上模块大致设计成两种操作方式: 一是下拉菜单,二是工具栏快捷按钮。点击下拉菜单弹出对话框操作方式,点击工具栏快捷按钮 在界面正中显示表格操作方式。其中下拉菜单如图 7 所示,工具栏快捷按钮如图 8 所示。 图 7 系统下拉菜单 图 8 系统工具栏按钮 工具栏按钮具体说明见表 5。 表 5 工具栏按钮说明 按钮标号按钮标号 按钮功能说明按钮功能说明 1 显示报表统计界面 2 显示资产信息管理界面 3 显示职工管理界面 4 显示资产类别管理界面 5 弹出借用资产对话框 6 弹出归还资产对话框 7 弹出注册管理员对话框 安徽建筑工业学院安徽建筑工业学院 毕业设计(论文) 15 8 弹出修改密码对话框 3.33.3 系统数据库设计系统数据库设计 .1 逻辑设计逻辑设计 根据需求分析的要求,总结出本系统的实体有:资产、职工、借用(指的是资产借用或归还 后的数据记录) 、类别;关系有:领用、归还、属于、记录。设计 E-R 图如下:5 图 9 E-R 图 .2 表设计表设计 根据 E-R 图,本系统的数据库共有 5 个基表,分别是: ? 固定资产表 ASSET ? 职工表 EMPLOYEE ? 资产类别表 CATEGORY ? 借用归还表 LEND ? 管理员表 OPERATOR 以上基表采用 SQL Server2000 数据库设计,详细信息如下:6 表 6 固定资产表 字段名称字段名称 含义含义 类型类型 约束约束 assetid 固定资产编号 int(长度 4) 主键 asset_name 固定资产名称 varchar(长度 40) 非空 cateid 大类编码 int(长度 4) 非空 subcateid 小类编码 int(长度 4) 非空 安徽建筑工业学院安徽建筑工业学院 毕业设计(论文) 16 model 样式 varchar(长度 40) price 价格 decimal(精度 12,小数 2) 非空 purchase_date 购入日期 varchar(长度 14) 非空 status 状态 char(长度 4 位) 非空 useby 经手人 varchar(长度 40) remarks 备注 varchar(长度 255) 表 7 职工表 字段名称字段名称 含义含义 类型类型 约束约束 empno 职工编号 int(长度 4) 主键 ename 职工姓名 varchar(长度 40) 非空 position 职位 varchar(长度 40) 非空 remarks 备注 varchar(长度 255) 表 8 资产类别表 字段名称字段名称 含义含义 类型类型 约束约束 cateid 大类编号 int(长度 4) 联合主键 catename 大类名称 varchar(长度 40) 非空 subcateid 小类编号 int(长度 4) 联合主键 subcatename 小类名称 varchar(长度 40) 非空 表 9 借用归还表 字段名称字段名称 含义含义 类型类型 约束约束 id 序号标识 int(长度 4,种子 1 增量 1) 主键 assetid 固定资产编号 int(长度 4) 非空 empno 借用人编码 int(长度 4) 非空 usedate 借用日期 varchar(长度 14) 非空 lendoperator 借用管理员 varchar(长度 12) returnoperator 归还管理员 varchar(长度 12) remarks 备注 varchar(长度 255) 表 10 管理员表 字段名称字段名称 含义含义 类型类型 约束约束 name 用户名 varchar(长度 12) 主键 pwd 口令 varchar(长度 40) 安徽建筑工业学院安徽建筑工业学院 毕业设计(论文) 各表之间的关系如下: 图 10 表的关系 4 系统实现和关键系统实现和关键部分介绍部分介绍 4.14.1 系统详细设计系统详细设计 根据系统总体架构中类的划分,结合面向对象思想中的封装、继承、多态的特点,以及充分 考虑到代码的鲁棒性、可维护性等问题。将类的层次结构布局如下表: 表 11 系统类的详细说明 层次层次 父类名称父类名称 子类名称子类名称 作用作用简要描述简要描述 MM / 生成主菜单 界面类 AssetDialog AddAssetDialog 生成增加固定资产对话框 安徽建筑工业学院安徽建筑工业学院 毕业设计(论文) DeleteAssetDialog 生成删除固定资产对话框 ModifyAssetDialog 生成修改固定资产对话框 SelectAssetDialog 生成查询固定资产对话框 AssetInfoPanel / 生成固定资产表格界面 AddEmpDialog 生成增加职工对话框 DelEmpDialog 生成删除职工对话框 ModifyEmpDialog 生成修改职工对话框 EmpDialog SelectEmpDialog 生成查询职工对话框 EmpInfoPanel / 生成职工表格界面 AddCategoryDialog 生成增加类别对话框 CategoryDialog DeleteCategoryDialog 生成删除类别对话框 CategoryInfoPanel / 生成类别树形界面 SelectInfoPanel / 生成综合查询和报表统计界面 LendDialog / 生成借用固定资产对话框 ReturnDialog / 生成归还固定资产对话框 LoginFrame / 生成登陆系统界面 AddUserDialog / 生成增加管理员对话框 ChangePwdDialog / 生成修改密码对话框 AboutDialog / 生成关于我们对话框 AssetHandle 控制固定资产的操作,关联 AssetDialog,AssetInfoPanel和 AssetModel EmpHandle 控 制 职 工 的 操 作 , 关 联 EmpDialog,EmpInfoPanel和 EmpModel CategoryHandle 控 制 类 别 的 操 作 , 关 联 CategoryDialog,CategoryInfo- Panel 和 CategoryModel LendHandle 控 制 借 还 的 操 作 , 关 联 LendDialog , ReturnDialog 和 LendModel LoginHandle 控制登陆操作, 关联 LoginFrame 和 OperatorModel SqlHandle SystemHandle 控 制 系 统 操 作 , 关 联 Add- UserDialog,ChangePwdDialog 和 OperatorModel MMapplication / 系统执行的起始类 控制类 Validate / 提供验证用户输入数据的操作 AssetModel / 存储固定资产信息 EmpModel / 存储职工信息 实体类 CategoryModel / 存储固定资产类别信息 安徽建筑工业学院安徽建筑工业学院 毕业设计(论文) LendModel / 存储借还固定资产信息 OperatorModel / 存储管理员信息 DateChooser / MonthlyCalendar / 提供日期选择控件的使用 / / / / 辅助 msbase.jar mssqlserver.jar mautil.jar jxl.jar / 已*.jar 结尾的为包文件, 为某一 公司单独开发, 提供给开发人员 使用,来完成某种特定功能。例 如本系统使用的包, 前三个包提 供 SQL Server2000 的驱动,后 一个包提供与 Excel的相关操作 注注:表格中每个父类名称或子类名称对应系统项目中的一个 java 源文件,记共有 40 个源文件。 其中属于界面类的源文件中,有许多关于事件监听程序的相关类和方法。这部分类和方法是属于 控制类范畴,即 MVC 模型中控制器(Controller)的监听器。但可以使用 JBuilder2006 工具平台 自动生成,故表中不再赘述。此外,本系统还加载了一些包,如表中辅助栏*.jar 文件。详细内容将 在下一节中介绍。 4.24.2 重点模块开发介绍重点模块开发介绍 由于本系统总体架构采用了 MVC 思想,故每个模块的开发变得异常的统一和标准,从而使 得软件的开发效率大大提升。同时,由于在设计类时充分考虑到了面相对象的设计思想,使得本 系统的代码设计层次清楚,代码的健壮性和可维护性大大提高。现在就以最典型的固定资产管理 模块为例,介绍如何开发。 .1 模块界面模块界面(ViewView)开发开发 关于固定资产界面开发的类(或者说源文件)分为两个部分:一部分是使用对话框操作的 AssetDialog、AddAssetDialog、DeleteAssetDialog、ModifyAssetDialog、SelectAssetDialog 五个类。 由于增删改查四个界面的布局基本一致,所以可以利用面向对象继承的特点,将共有部分提取出 来设计一个父类界面,然后每个子类分别继承这个父类,每个子类只需要开发自己独有的功能按 钮部分,从而使得界面整体设计一致,提高了代码的开发效率。具体效果如图 11、图 12 所示。 安徽建筑工业学院安徽建筑工业学院 毕业设计(论文) 图 11 AssetDialog 界面 其余四个界面只需要在右下角处添加各自需要的功能按钮即可,其它部分与图 11 完全一样, 功能按钮的设计如下 图 12 AssetDialog 各子类功能按钮 开发步骤和要点: ? 步

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论