




已阅读5页,还剩49页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
I 54 摘 要 我们小组的课程设计是某公司的工资管理系统 在这个计算机快速发展的 世界里 计算机为信息处理提供了物美价廉的手段 对于推动我国管理信息处 理现代化起到了重要作用 工资管理是一项琐碎 复杂而又十分细致的工作 工资计算 发放 核算的工作量很大 一般不允许出错 如果实行手工操作 每月发放工资须手工填制大量的表格 这就会耗费工作人员大量的时间和精力 计算机进行工资发放工作 不仅能够保证工资核算准确无误 快速输出 而且 还可以利用计算机对有关工资的各种信息进行统计 既方便又快捷地完成员工 工资的发放 我们组在课程设计过程中根据设计中的需求及对工资管理系统采用了模块 化的设计思想 在机房我们在 Windows XP 操作系统环境下 采用 myeclipse7 作为开发工具 主要连接 Access 数据库来实现公司的工资管理系统的主要功能 在设计过程中 我们首先小组首先对整体的思路进行分析 然后进行分工 对 数据库和类进行设计 实现了工资管理系统的功能 其功能主要包括公司用户 管理 人员管理 部门管理 工资管理等功能 本系统运用了数据库技术 可以大量的存储信息 又实现了人机交互 不 但缩短工资发放的时间 又避免了传统时代的人工计算错误 总而言之 该系 统在工资管理方面考虑周全 功能齐全 极大地提高了公司对员工工资管理的 效率 关键词 工资管理系统 Access 数据库 Java II 54 目 录 摘 要 I 目录 II 第 1 章 绪 论 1 1 1 项目背景 1 1 2 项目开发环境 1 1 2 1 硬件环境 1 1 2 2 软件环境 1 第 2 章 相关技术 1 2 1 系统所涉及到的语言 1 2 1 2 Java 1 2 2 开发工具 1 2 2 1 MyEclipse 1 2 2 1 Access 2 第 3 章 系统分析及组内分工 1 3 1 需求概述 1 3 2 需求分析 1 3 2 1 理解需求 1 3 2 2 分析需求 1 3 2 3 可行性分析 2 3 3 设计思想 2 3 4 系统功能结构图 3 3 5 组内分工 4 第 4 章 数据库设计 5 4 1 数据库需求分析 5 4 2 数据流图 5 4 2 数据字典 6 4 3 概念结构设计 9 4 3 1 概念结构设计方法 9 4 3 2 概念模型设计 9 第 5 章 系统详细模块设计与实现 10 5 1 用户登录及主界面 10 5 2 用户管理功能实现 18 5 3 人员管理功能实现 24 5 4 部门管理功能实现 39 5 5 工资管理功能实现 45 5 6 帮助功能实现 50 5 7 退出系统功能实现 51 III 54 结论 52 致谢 53 参考文献 54 1 54 第 1 章 绪论 1 1 项目背景 借助现代信息技术和管理理论 建立企业管理信息系统是当今社会的重要趋势 党 和政府根据知识经济时代的特点 对国民经济建设提出了 用信息化带动工业化 的指 导思想 对企业而言 全面开发和应用计算机管理信息系统就是近期不能回避的问题 在企业管理中 人力资源是企业最宝贵的资源 也是企业的 生命线 因此人事管理是 企业的计算机管理信息系统重要组成部分 而工资管理又是人力资源管理的重中之重 实行电子化的工资管理 可以让人力资源管理人员从繁重琐碎的案头工作解脱出来 去 完成更重要的工作 工资管理信息系统的实现可以减轻比较繁琐的手工工资管理 同时 计算机具有手工管理所无法比拟的优点 例如 检索迅速 查找方便 可靠性高 存储 量大 成本低 打印方便等 这些优点能够极大地提高物业管理的效率 也是企业的科 学化 正规化管理 与世界接轨的重要条件 因此工资管理系统在企业中占重要地位 现在应用在大中型企业的管理信息系统中 几乎都包括了工资管理模块 有些环境 中是由作为大型 ERP 软件中的一个模块引进的 有些是作为企业的财务系统的一部分 这些根据规范的西方的管理制度设计的工资管理软件 在很多时候还不能完全解决中国 特色的中小企业的问题 我们组介绍的工资管理系统就是要为这些具有中国特色的中小 企业解决他们在工资管理方面的问题 本系统功能齐全 实现了用户管理 人员管理 部门管理 工资管理 并在各个功能下面实现了查询 添加 修改 删除等功能 使系 统功能更加完善 更适合企业管理人员对员工工资进行管理 1 2 项目开发环境 1 2 1 硬件环境 PC 机 1 2 2 软件环境 1 操作系统 Windows XP 2 开发工具 MyEclipse 7 0 3 数据库 Access 1 54 第 2 章 相关技术 2 1 系统所涉及到的语言 2 1 1 Java 语言 Java 的诞生是对传统计算机模式的挑战 对计算机软件开发行业产生了深远的影响 1 软件 4A 目标要求软件能达到任何人在任何地方在任何时间对任何电子设备都能 应用 这样能满足软件平台上互相操作 具有可伸缩性和重用性并可即插即用等分布式 计算模式的需求 2 基于构建开发方法的崛起 引出了 CORBA 国际标准软件体系结构和多层应用体 系框架 在此基础上形成了 Java 2 平台和 NET 平台两大派系 推动了整个 IT 业的发展 3 对软件产业和工业企业都产生了深远的影响 软件从以开发为中心转到了以服务 为中心 中间提供商 构件提供商 服务器软件以及咨询服务商出现 企业必须重塑自 我 B2B 的电子商务将带动整个新经济市场 使企业获得新的价值 新的增长 新的商 机 新的管理 4 对软件开发带来了新的革命 重视使用第三方构件集成 利用平台的基础设施服 务 实现开发各个阶段的重要技术 重视开发团队的组织和文化理念 协作 创作 责 任 诚信是人才的基本素质 总之 目前以看到了 Java 对信息时代的重要性 未来还会不断发展 Java 在应用方 面将会有更广阔的前景 2 2 开发工具 2 2 1 MyEclipse Eclipse 是一个开放源代码的 基于 Java 的可扩展开发平台 就其本身而言 它只 是一个框架和一组服务 用于通过插件组件构建开发环境 幸运的是 Eclipse 附带了一 个标准的插件集 包括 Java 开发工具 Java Development Tools JDT 虽然大多数用户很乐于将 Eclipse 当作 Java IDE 来使用 但 Eclipse 的目标不仅限 于此 Eclipse 还包括插件开发环境 Plug in Development Environment PDE 这个组件 主要针对希望扩展 Eclipse 的软件开发人员 因为它允许他们构建与 Eclipse 环境无缝集 成的工具 由于 Eclipse 中的每样东西都是插件 对于给 Eclipse 提供插件 以及给用户 提供一致和统一的集成开发环境而言 所有工具开发人员都具有同等的发挥场所 这种平等和一致性并不仅限于 Java 开发工具 尽管 Eclipse 是使用 Java 语言开发 的 但它的用途并不限于 Java 语言 例如 支持诸如 C C COBOL 和 Eiffel 等编 程语言的插件已经可用 或预计会推出 Eclipse 框架还可用来作为与软件开发无关的其 他应用程序类型的基础 比如内容管理系统 简单而言 MyEclipse 是 Eclipse 的插件 2 54 也是一款功能强大的 J2EE 集成开发环境 支持代码编写 配置 测试以及除错 Genuitec 发布了 MyEclipse Enterprise Workbench 5 0 更智能 更快捷 更简单和更 便宜的 J2EE 工具的新版本的诞生 它的价格对于个人和企业开发人员来说都是非常有吸 引力的 这是 J2EE IDE 市场一个重量级的选手 通过增加 UML 双向建模工具 WYSIWYG 的 JSP Strutsdesigner 可视化的 Hibernate ORM 工具 Spring 和 Web services 支持 以及新的 Oracle 数据库开发 MyEclipse 5 0 继续为业界提供全面的产品 Genuitec 总裁 Maher Masri 说 今天 MyEclipse 已经提供了意料之外的价值 其 中的每个功能在市场上单独的价格都比 MyEclipse 要高 但是 我们承诺为顾客提供全面 并且可以买得起的解决方案 按照这个传统 我们的顾客将继续享受年度订购活动的好 处 该活动提供了所有发布功能的入口以及伴随 MyEclipse5 0 一起的专业技术支持 2 2 2 Access Microsoft Office Access 前名 Microsoft Access 是由微软发布的关联式数据库管理 系统 它结合了 Microsoft Jet Database Engine 和 图形用户界面两项特点 是 Microsoft Office 的成员之一 其实 Access 也是微软公司另一个通讯程序的名字 想与 ProComm 以及其他类似程序来竞争 可是事后微软证实这是个失败计划 并且将它中止 数年后 他们把名字重新命名于数据库软件 另外 Access 还是 c 语言的一个函数名和一种交换 机的主干道模式 Microsoft Access 在很多地方得到广泛使用 例如小型企业 大公司的部门 和喜爱 编程的开发人员专门利用它来制作处理数据的桌面系统 它也常被用来开发简单的 WEB 应用程序 这些应用程序都利用 ASP 技术在 Internet Information Services 运行 比较复杂 的 WEB 应用程序则使用 PHP MySQL 或者 ASP Microsoft SQL Server Access 管理的对象有表 查询 窗体 报表 页 宏和模块 以上对象都存放在后 缀为 mdb 的数据库文件种 便于用户的操作和管理 Access 是一个面向对象的开发工具 利用面向对象的方式将数据库系统中的各种功 能对象化 将数据库管理的各种功能封装在各类对象中 它将一个应用系统当作是由一 系列对象组成的 对每个对象它都定义一组方法和属性 以定义该对象的行为和外国 用户还可以按需要给对象扩展方法和属性 通过对象的方法 属性完成数据库的操作和 管理 极大地简化了用户的开发工作 同时 这种基于面向对象的开发方式 使得开发 应用程序更为简便 Access 基于 Windows 操作系统下的集成开发环境 该环境集成了各种向导和生成器 工具 极大地提高了开发人员的工作效率 使得建立数据库 创建表 设计用户界面 设计数据查询 报表打印等可以方便有序地进行 Access 支持 ODBC 开发数据库互连 Open Data Base Connectivity 利用 Access 强 大的 DDE 动态数据交换 和 OLE 对象的联接和嵌入 特性 可以在一个数据表中嵌 入位图 声音 Excel 表格 Word 文档 还可以建立动态的数据库报表和窗体等 Access 还可以将程序应用于网络 并与网络上的动态数据相联接 利用数据库访问页对象生成 3 54 HTML 文件 轻松构建 Internet Intranet 的应用 1 54 第 3 章 系统分析及组内分工 3 1 需求概述 工资管理系统系统对企业加强工资管理有着极其重要的作用 就一般的大型企业来 说 它的设计内容非常复杂而且繁多 比如拥有工资计算功能 工资统计功能 报表输 出功能 而且设计的模块也很多 比如工资管理模块 工资统计模块 报表设计模块 打印输出模块 模糊查询模块等等 因此 工资管理系统为公司和员工带来极大的方便 通过我们组员之间的分析与研究 要求系统具有如下功能 1 提供用户登录 用户查询功能 2 提供员工信息查询 添加 删除等功能 3 提供部门信息查询 添加 删除等功能 4 提供工资信息查询 添加 修改 删除等功能 5 管理员对各个部分信息的管理功能 3 2 需求分析 3 2 1 理解需求 工资管理系统在用户登录时分两个部分 管理员和普通用户 普通用户可以进入用 户界面查询各个信息 但只有查询功能 管理员的权限除了普通用户的权限外 还有对 各个部分的信息进行添加 修改 删除等功能 所有的功能管理员都能实现 下面是系统所要达到的几条要求 1 要求系统准确的记录各种信息 2 系统要提供丰富的查询功能 3 系统可以对基础数据进行维护 4 系统运行在 Windows 平台下 需要有良好的图形用户界面 5 系统具有良好的可扩展性 良好的可移植性 3 2 2 分析需求 分析需求就是描述系统的需求 通过定义系统中的关键域建立模型 分析的根本目 的是在开发者和提出需求的人之间建立一种理解和沟通的机制 因此 工资管理系统的 需求分析应该是开发人员和用户一起完成的 分析需求的第一步描述工资管理系统的功能 即定义用例 以此确定系统的功能需 求 工资管理系统的分析主要涉及规格说明的阅读和分析 需要和工资管理系统潜行讨 论 2 54 工资管理系统的角色是管理员和公司员工 公司员工即普通用户可以对系统中 的各个部分进行查询 管理员登陆时有权限限制的 普通用户是不可登陆的 他可以对用户信息进行添加 修改 查询 删除等 还可以对系统中的其他信 息进行管理 3 2 3 可行性分析 1 技术可行性分析 技术上的可行性分析要考虑将来要采用的硬件和软件技术能否满足用户提 出的要求 如计算机的容量 速度等 此外 还要考虑开发人员的水平 作 为计算机软件开发与技术专业的学生 经过几年的学习 在数据库和编程方面 都有一定的基础 所以对于这个系统的开发还是有能力做好的 我们掌握了数据库及其应用技术 数据库原理 计算机网络技术等课程 对数据库的设计 应用 维护及局域网的组成有了深刻的认识与一定的动手实 践能力 从一定程度上具备了开发一个小型系统的能力 2 经济可行性 主要从对项目的经济上进行分析评价 一方面是支出的费用 另一方面是 取得的收益 我们这个是一个小型的公司工资管理系统 从投入的人力 财力 与物力来讲是非常之小的 只要有电脑就可以了 从节省人力方面 可以让管 理人员从繁与复杂的工作中解脱出来 做更多的工作 可以给工资管理提高一 个层次 3 运行可行性 不同的企业正在迅猛发展 而且在企业中各个公司的员工流动性越来越大 所以工资管理系统在公司起到了极其重要的作用 随着计算机硬件的快速发展 计算机的价格在不断地降低 工资管理系统对客户端要求极低 只需要有一个 浏览器能上网就能进行信息的查询 网络的越来越普及 人们都喜欢上网查询 信息既方便又快捷 因此系统在实践上具备了可行性 4 法律可行性 本系统纯为私人设计 在开发过程中没有涉及合同 责任等与法律相抵触 的方面 因此 本系统在法律上是可行的 由此可知 工资管理系统在市场上具有可行性 3 3 设计思想 本系统开发设计思想有以下几点 1 充分利用现有资源 提高系统开发水平和应用效果的目的 2 系统应符合管理人员的具体要求 满足日常的管理工作需要 而且要达 到使用中的直观 快捷 实用 安全 稳定等要求 3 系统采用模块化的程序设计方法 既便于系统功能的添加 修改等 3 54 4 系统应具备数据库维护功能 及时根据用户需求进行数据的添加 删除 修改等功能 3 4 系统功能结构图 针对实际生活中工资管理的需要 我们组的公司工资管理系统能够实现的 主要功能模块如下 用户管理模块 制定用户的管理级别 管理级别分为管理员和普通用户两 类 他们的操作权限不同 管理员是公司的管理员 可以对系统进行一切操作 包含添加用户 修改用户信息 修改口令等 普通用户只能进行信息查询 人员信息管理模块 实现对员工基本信息的添加 修改 删除 查询等 按照公司规定对员工进行管理 部门信息管理模块 实现对部门的信息添加 修改 删除 查询等 工资信息管理模块 实现工资表的生成 个人工资查询 工资修改 工资 结算 工资统计以及工资表打印等功能 其中按月生成工资表 保存在数据库 中 而工资标准的依据恰好与员工的基本信息相一致 形成对应关系 工资管理系统的组成及系统功能结构图 如图 3 1 所示 图 3 1 系统功能图 工资管理系统 用 户 管 理 员 工 管 理 部 门 管 理 工 资 管 理 帮 助 用 户 信 息 员 工 信 息 查 询 添 加 员 工 信 息 部 门 信 息 添 加 部 门 信 息 工 资 查 询 添 加 工 资 信 息 关 于 注 销 4 54 3 5 组内分工 我们组的组内分工 如表 3 1 所示 表 3 1 组内分工明细表 姓名 任务成绩 组长 刘泉主要负责主登陆界面 主功能界面和退出界 面的实现 用户管理功能的实现包括用户信 息添加 修改 删除及数据库的连接 帮助 功能 报告第 4 部分的撰写及报告修改整理 王丹主要负责工资管理 包括工资信息的添加 修改 查询 删除功能的实现 报告第 5 部 分 摘要的撰写 甘霖主要负责人员管理 包括人员信息的添加 修改 查询 删除功能的实现 报告第 3 部 分 结论的撰写 组员 李芳主要负责部分管理 包括部门信息的添加 修改 查询 删除功能的实现 报告第 1 2 部分 致谢的撰写 5 54 6 54 第 4 章 数据库设计 4 1 数据库需求分析 需求分析简单地说就是分析用户的要求 需求分析是设计数据库的起点 需求分析的结果是否准确地反映了用户的实际要求 将直接影响到后面各个阶 段的设计 并影响到设计结果是否合理和实用 因此 数据库结构设计的一个 非常重要的阶段就是数据库需求分析阶段 在这个阶段主要是收集基本数据以 及数据处理流程 为以后进一步设计打下基础 需求分析主要解决两个问题 内容要求 调查应用系统用户所操作的数据 决定的数据库中存储什么数 据 处理要求 调查应用系统用户要求对数据进行什么样的处理 处理数据库 中的各种数据之间的关系如何 解决这两个问题的时候 程序设计人员需要向应用系统的用户做详细调查 保证信息收集的完整性 否则有可能后面所做的所有工作都白白浪费 工资管理系统 包括系统功能设计 工资管理数据库与数据表的创建 创 建系统启动和操作的各个界面 以及各个子系统的界面设置及功能实现等内容 主要实现对企业工资管理信息的规范化 系统化的管理 通过各方面的调查和分析 工资管理系统需要实现的主要功能如下 1 提供用户登陆 用户查询功能 2 提供员工信息添加 查询 删除功能 3 提供部门信息查询 添加 删除等功能 4 提供工资信息查询 添加 修改 删除等功能 5 提供管理员对系统的管理功能 4 2 数据流图 从硬件方面来说 数据流图 Data Flow Diagram DFD 是用来描绘软件 系统逻辑模型的图形工具 用于描绘信息在系统中的流动和处理情况 数据流 图是结构系统分析的主要工具 它表示了系统内部信息的流向 并表示了系统 的逻辑处理的功能 是一种功能模型 数据流图具体功能分析如下 数据源点和数据终点 数据源点和数据终点用方框表示 它是系统之外的 实体 可以是人 事 物 部门或其他系统 加工 数据处理变换 加工用圆框表示 是对数据进行处理的逻辑单元 它接受若干输入数据流 通过加工 内部产生规定的输出数据流 数据流 数据流用带数据流标识的箭头表示 表示系统处理的数据对象和 数据流动的方向 数据流的方向可以是 从一加工流向另一加工 从加工流向 7 54 部门 职工 招 聘 工资 登记注册 录取信息 职工基本表 审核计算 实 际 工 资 工资表 部门信息 用户 用户表 动态维护 维 护 指 令 录入信息 用户查询 用 户 名 密 码 查 询 结 果 录入信息 工资表 职工查询 查询信息 部门号 职 工 名 职 工 编 号 负则操作 提供信息 职工 分配工资 用户管理 工 资 计 算 进 行 管 理 录入信息 进 行 分 配 领 取 工 资 获 得 信 息 工 资 发 放 数据存储或数据存储流向加工 从源点流向加工或从加工流向终点 数据存储文件 数据存储文件在数据流图中起着保存数据的作用 它可以 是数据库 文件或任何其它形式 指向存储的数据流可理解为数据写入 从存 储引出的数据流可理解为数据读出 公司工资管理系统数据流图如图 4 1 所示 图 4 1 系统数据流图 4 2 数据字典 从软件方面来说 需要安装 JDK 和 Web 服务器以及数据库管理系统数据 字典通常包括数据项 数据结构 数据流 数据存储和处理过程五个部分 其 中数据项是数据的最小组成单位 若干个数据项可以组成一个数据结构 数据 8 54 字典通过对数据项和数据结构的定义来描述数据流 数据存储的逻辑内容 数据项 数据项是不可再分的数据单位 可以用关系规范化理论为指导 用数据依 赖的概念分析和表示数据项之间的联系 即按实际语义 写出每个数据项之间 的数据依赖 它们是数据库逻辑设计阶段数据模型优化的依据 对数据项的描 述通常包含以下内容 数据项描述 数据项名 数据项含义说明 别名 数据类型 长度 对于本系统所包含的各个数据项的具体描述如表 4 1 至表 4 4 所示 表 4 1 管理员信息的数据项 数据项名别名数据类型长度数据项含义说明备注 管理员姓名UserVCHAR8管理员的唯一标识主键 值不为空 密码UpasswordVCHAR15登录密码值不为空 表 4 2 员工信息的数据项 数据项名别名数据类型长度数据项含义说明备注 员工编号PnoVCHAR8员工的唯一标识主键 值不为空 员工姓名PnameVCHAR8员工的姓名值不为空 性别SexVCHAR4员工的性别可有可无 年龄AgeVCHAR4员工的年龄可有可无 职位PostVCHAR8员工的职位可有可无 所在部门DepartmentVCHAR8员工所在部门可有可无 工资WageVCHAR10员工工资可有可无 工资类型WagetypeVCHAR8员工工资类型可有可无 表 4 3 部门信息的数据项 数据项名别名数据类型长度数据项含义说明备注 部门编号Dtmt idVCHAR10部门信息唯一标识主键 值不为空 部门名称Dtmt nameVCHAR10部门名称值不为空 表 4 4 工资信息的数据项 数据项名别名数据类型长度数据项含义说明备注 工资号noVCHAR8员工的唯一标识主键 值不为空 工资类型WagetypeVCHAR4工资类型可有可无 基本工资BaswageVCHAR4员工的基本工资可有可无 奖金BonusVCHAR8员工的奖金可有可无 应减工资MinwageVCHAR8员工所可有可无 实际工资FactwageVCHAR10员工工资可有可无 9 54 工资日期WagedateVCHAR8员工工资日期可有可无 数据结构 数据结构反映了数据之间的组合关系 一个数据结构可以由若干个数据项 组成 也可以由若干个数据结构组成 或由若干个数据项和数据结构混合组成 对数据结构的描述通常包括以下内容 数据结构描述 数据结构名 含义说明 组成 数据项或数据结构 本系统的数据结构描述 如表 4 5 所示 表 4 5 数据结构说明 数据结构名含义说明组成 管理员信息管理员的基本信息管理员姓名 密码 员工信息员工的基本信息员工编号 姓名 性别 年龄 职位 所在部门 工资 工资类型 部门信息部门的基本信息部门编号 部门名称 工资信息工资信息员工编号 基本工资 奖金 应减工资 实际工资等 数据流 数据流是数据结构在系统内传输的路径 对数据流的描述通常包括以下内 容 数据流描述 数据流名 说明 数据流来源 数据流去向 组成 数据结 构 其中 数据流来源 是说明该数据流来自哪个过程 数据流去向 是说明该 数据流将到哪个过程去 数据存储 数据存储是数据结构停留或保存的地方 也是数据流的来源和去向之一 它可以手工文档或手工凭单 也可以是计算机文档 本系统中对数据存储的具 体描述 处理过程 处理过程的具体处理逻辑一般用判定表或判定树来描述 数字字典中只需 要描述处理过程的说明信息 通常包括以下内容 处理过程描述 处理过程名 说明 输入 数据流 输出 数据流 4 3 概念结构设计 4 3 1 概念结构设计方法 设计概念结构通常有四类方法如下 自顶向下 即首先定义全局概念结构的框架 然后逐步细化 10 54 部门员工工资 管理员 属于拥有 管理 m n 11n1 部门编号 部门名称 所在部门 员工号 密码 工资 工资类型 性别年龄 职位 姓名 基本工资 工资日期 奖金 实际工资 应减工资 密码姓名 工资号 自底向上 即首先定义各局部应用的概念结构 然后将他们集成起来 得到全局概念结构 逐步扩张 首先定义最重要的核心概念结构 然后向外扩充 以滚雪球 的方式逐步生成其他概念结构 直至总体概念结构 混合策略 即将自顶向下和自地向上相结合 用自顶向下策略设计一个 全局概念结构的框架 以它为骨架集成自底向上策略中设计的各局部概念结构 4 3 2 概念模型设计 在概念模型设计中 主要是对 E R 图进行设计 在 E R 图设计中 首先要 设计分 E R 图 然后再对总 E R 图进行设计 由于各个局部所面向的问题不同 这就导致各个分 E R 图之间必定会存在许多不一致的问题 称之为冲突 因此 合并分 E R 图并不能简单地将各个分 E R 图画到一起 而是必须合理消除各分 E R 图中的不一致 以形成一个能为全系统中所有用户共同理解和接受的统一 的概念模型 是合并 E R 图的主要工作和关键 由分 E R 图合成总体 E R 图的 规则 画出完整的工资管理系统的完整 E R 图 如图 4 2 所示 图 4 2 完整 E R 图 11 54 4 4 逻辑结构设计 4 3 2 逻辑结构设计思想 从理论上讲 设计逻辑结构应该选择最适于相应概念结构的数据模型 然后 支持这种数据模型的各种 DBMS 进行比较 从中选出最合适的 DBMS 但实际 情况往往是已给定了某种 DBMS 设计人员没有选择的余地 目前 DBMS 产品 一般支持关系 网状 层次三种模型中的某一种 对某一种数据模型 各个机器 系统又有许多不同的限制 提供不同的环境与工具 所以设计逻辑结构时一般要 分三步进行 如图 4 3 所示 将概念结构转换为一般的关系 网状 层次模型 将转换来的关系 网状 层次模型向 DBMS 支持下的数据模型转换 对数据模型进行优化 图 4 3 逻辑结构设计时的三个步骤 逻辑结构设计采用关系模型转换概念结构 将 E R 图依照规则转换为关系 模型 为了进一步提高数据库应用系统的性能 再将转换后的关系模型进行优化 确定是否要对某些模式进行合并或分解 为物理设计提供最优的处理 4 3 3 E R 图向关系模型的转换 关系模型的逻辑结构是一组关系模式的集合 E R 图则是由实体 实体的属 性和实体间的联系三个要素组成 所以将 E R 图转换为关系模型实际上就是要 将实体 实体的属性和实体间的联系转换为关系模式 转换原则如下 1 实体类型的转换 将每个实体类型转换成一个关系模式 实体的属性就是 关系模式的属性 实体的码就是关系的码 2 联系类型的转换 根据不同的情况做不同的处理 概念结构 基本 E R 图 转换规则 DBMS 的特点和 限制 优化方法 一般数据模型 关系 网状 层次 特定的 DBMS 支持 下的数据模型 优化的 数据模型 12 54 若实体间的联系是 1 1 的 可以转换为一个独立的关系模式 也可以与任意 一端对应的关系模式合并 如果转换为一个独立的关系模式 则与该联系相连的 各实体的码以及联系本身的属性均转换为关系的属性 每个实体的码均是该关 系的候选码 如果与某一端实体对应的关系模式合并 则需要在该关系模式的属 性中加入另一个关系模式的码和联系本身的属性 若实体间的联系 1 N 的 可以转换为一个独立的关系模式 也可以与 N 端对 应的关系模式合并 如果转换为一个独立的关系模式 则与该联系相连的各实体 的码以及联系本身的属性均转换为关系的属性 而关系的码为 N 端实体的码 如 果与 N 端对应的关系模式合并 则将一方的码传到多方去作为多方的一个非主 属性 若实体间的联系是 M N 的 可转换为一个独立的关系模式 与该联系相连 的各实体的码以及联系本身的属性均转换为关系的属性 而关系的码为各实体 码的组合 三个或三个以上实体间的一个多元联系可以转换为一个关系模式 与该多 元联系相连的各实体的码以及联系本身的属性均转换为关系的属性 而关系的 码为各实体码的组合 3 依照该规则将工资管理系统的 E R 图转换为关系模型如下 将每一个实体转换成一个关系模式 实体的属性就是关系的属性 实体的码 就是关系的码 带下划线的为主码 管理员 姓名 密码 管理 员工号 姓名 员工 员工号 姓名 性别 所在部门 年龄 密码 职位 工资 工资 类型 工资 工资号 基本工资 奖金 应减工资 实际工资 工资日期 拥有 员工号 工资号 部门 部门编号 部门名称 属于 员工号 部门编号 13 54 14 54 第 5 章 系统详细模块设计与实现 5 1 用户登录及主界面 工资管理系统第一个界面就是用户登录界面 该界面是用户想要登录本系 统必须有的步骤 当运行时 弹出界面 该界面登录时用户受权限限制 有管 理员登陆和员工登陆 员工登录时只有里面各项的查询功能 管理员则有对里 面各项的一切操作功能 这里介绍管理员的登录及管理员的其他功能 按钮选 中管理员后 输入正确的管理员用户名和密码后 按登录按钮就可进入系统主 界面 如果用户名或密码输入错误会出相应的提示信息 运行时登录界面 如 图 5 1 所示 图 5 1 登陆界面 用户登录的代码如下 public login1 登陆界面 setTitle 用户登录 setSize WIDTH HEIGHT setLocation screenWidth WIDTH 2 screenHeight HEIGHT 2 setLayout new BorderLayout JPanel check new JPanel check setBackground new Color 230 235 250 caozuo new ButtonGroup r1 new JRadioButton 管理员 true r1 setBackground new Color 230 235 250 caozuo add r1 r2 new JRadioButton 职工 false caozuo add r2 r2 setBackground new Color 230 235 250 check add r1 15 54 check add r2 add check BorderLayout NORTH JPanel p1 new JPanel p1 setLayout new BorderLayout add p1 BorderLayout CENTER JPanel p2 new JPanel JPanel p3 new JPanel JPanel p4 new JPanel p1 add p2 BorderLayout NORTH p1 add p3 BorderLayout CENTER p1 add p4 BorderLayout SOUTH p2 setBackground new Color 230 235 250 p3 setBackground new Color 230 235 250 p4 setBackground new Color 230 235 250 JLabel lno new JLabel 用户名 JLabel lpassword new JLabel 密 码 tname new JTextField 10 tpassword new JPasswordField 10 JButton enter new JButton 登录 JButton exit new JButton 退出 p2 add lno p2 add tname p3 add lpassword p3 add tpassword p3 setPreferredSize new Dimension 300 30 p4 setPreferredSize new Dimension 300 50 p4 add enter p4 add exit this setVisible true enter addActionListener this exit addActionListener this addWindowListener new WindowAdapter public void windowClosing WindowEvent e System exit 0 public void actionPerformed ActionEvent e 验证登录信息正确性 16 54 ResultSet rs null sqlconn sqlconn new sqlconn name tname getText String password tpassword getText String sql try if e getActionCommand equals 登录 if password length 0 if r1 isSelected sql Select from users where name name and password password type 0 else sql Select from employees where name name and password password type 1 rs sqlconn getRs sql if rs next if type 0 mainFrame A new mainFrame A setVisible true else if type 1 mainFrame1 B new mainFrame1 B setVisible true this dispose else JOptionPane showMessageDialog null 用户名称及密码有误 请重新输入 17 54 tname setText tpassword setText else JOptionPane showMessageDialog null 密码不能为空 请正确输入 else if e getActionCommand equals 退出 this dispose catch SQLException ex System out println sql error public static void main String args login1 log new login1 当在登陆界面中输入正确信息 按 登录 按钮登陆成功后 则开始调用 主界面函数 进入系统主界面 主界面中有用户管理 人员管理 部门管理 工资管理 帮助五个菜单选项 选择某菜单 则就进入对应的功能管理部分 主界面如图 5 2 所示 18 54 图 5 2 系统主界面 系统主界面的核心代码如下 class mainFrame extends Frame implements ActionListener 实现功能的主界面 Image img 菜单条式菜单 MenuBar mb new MenuBar Menu usersM new Menu 用户管理 Menu employeeM new Menu 人员管理 Menu dtmtM new Menu 部门管理 Menu wageM new Menu 工资管理 Menu helpM new Menu 帮助 MenuItem uInfoMi new MenuItem 用户信息 下拉菜单中的选项 MenuItem emQueryMi new MenuItem 员工信息查询 MenuItem addEmMi new MenuItem 添加员工信息 MenuItem wQueryMi new MenuItem 工资查询 MenuItem addWageMi new MenuItem 添加工资信息 MenuItem dtmtInfoMi new MenuItem 部门信息 MenuItem addDtmtMi new MenuItem 添加部门信息 MenuItem aboutMi new MenuItem 关于 MenuItem logoutMi new MenuItem 注销 弹出式菜单 PopupMenu popM new PopupMenu MenuItem aveWageMi new MenuItem 平均工资 public mainFrame setTitle 欢迎使用工资管理系统 setSize 800 507 setLayout null setBackground Color LIGHT GRAY img getToolkit getImage getClass getResource xy jpg 设置主窗口中的图片 Dimension scr Toolkit getDefaultToolkit getScreenSize Dimension frm this getSize setLocation int scr getWidth frm getWidth 2 int scr getHeight frm getHeight 2 40 mb add usersM 加入选项 mb add employeeM mb add dtmtM mb add wageM mb add helpM 19 54 usersM add uInfoMi employeeM add emQueryMi employeeM add addEmMi wageM add wQueryMi wageM add addWageMi dtmtM add dtmtInfoMi dtmtM add addDtmtMi helpM add aboutMi helpM add logoutMi popM add aveWageMi aveWageMi addActionListener this this add popM this addMouseListener new MouseAdapter 鼠标按键松开事件弹出菜单 public void mouseReleased MouseEvent me 检查鼠标事件是否由弹出菜单引发 if me isPopupTrigger 将弹出菜单显示在用户鼠标单击的位置 popM show Component me getSource me getX me getY 计算机范文网 usersM addActionListener this 给下拉式菜单加入事件监听 employeeM addActionListener this wageM addActionListener this dtmtM addActionListener this helpM addActionListener this this setMenuBar mb setVisible true 添加窗口 关闭 按钮的关闭功能 addWindowListener new WindowAdapter public void windowClosing WindowEvent e confirmExit conE new confirmExit public void paint Graphics g g setClip new Rectangle2D Float 0 0 800 600 g drawImage img 0 0 this 将图片加入到窗口中 20 54 public void actionPerformed ActionEvent ae 事件监听 if ae getActionCommand equals 用户信息 userInfo user1 new userInfo user1 show if ae getActionCommand equals 员工信息查询 uInfoQue uiq new uInfoQue uiq show if ae getActionCommand equals 添加员工信息 addEmInfo aei new addEmInfo aei show if ae getActionCommand equals 工资查询 wageQuery wq new wageQuery wq show if ae getActionCommand equals 添加工资信息 addWage aw new addWage 实例化对应的对象 为函数调用建立接口 aw show if ae getActionCommand equals 部门信息 dtmtInfoQue diq new dtmtInfoQue diq show if ae getActionCommand equals 添加部门信息 addDtmt ad new addDtmt ad show if ae getActionCommand equals 关于 about ab new about ab show if ae getActionCommand equals 注销 logFrame logf1 new logFrame dispose 21 54 5 2 用户管理功能实现 用户管理功能是管理员对登录用户进行管理 包括对用户账号的添加 修 改 删除等功能 登录用户信息的添加 输入要添加的账号和密码 按添加按 钮就可以成功添加 例如 添加账户为 liuquan 密码为 123 如图 5 3 所 示 图 5 3 添加用户信息 修改用户信息 将账户为 liuquan 的密码改为 liuquan 如图 5 4 所示 22 54 图 5 4 修改用户信息 删除用户 liuquan 的信息 弹出确认对话框 按 是 确认后即删除 如图 5 5 所示 图 5 5 删除用户信息 用户管理信息的功能实现的核心代码如下 public userInfo super 系统用户管理 setSize 410 250 setResizable false this setLocationRelativeTo this getParent 设置显示的位置 setLayout null public void initChoice try conn new sqlconn 连接数据库 sql select name from users sql 语句 rs conn getRs sql while rs next userChoice addItem rs getString name conn dbClose rs conn null 23 54 catch Exception e public void actionPerformed ActionEvent ee if ee getActionCommand equals 退出 dispose if ee getActionCommand equals 增加 sql select from users where name nameTxt getText conn new sqlconn try rs conn getRs sql if rs ne
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 初中九年级数学教案教学设计一元二次方程地根与系数关系
- 《普通动物学》总结模版
- 建筑施工事故安全管理体系
- 抗肿瘤药物临床应用指导原则全文
- 园林法律法规试题及答案
- 银行社招ai面试题库及答案
- 艺术类国企面试题目及答案
- 区域生态循环农业项目可行性研究报告
- 修路公务员面试题及答案
- 影视器材运输保险服务与定制保险箱租赁协议
- (完整版)农业主要知识点
- 体育科研方法试卷试题答案
- 《国家电网公司十八项电网反事故措施(试行)》实施细则
- 射线检测操作指导书
- 中国民主同盟入盟申请表(样表)
- 国家标准色卡电子版(WORD版图片)
- 9种基坑坍塌案例
- 《呼吸机的使用管理》PPT课件.ppt
- 《手机摄影》全套课件(完整版)
- 年产10万吨甲醇低压羰基化合成醋酸精制工段工艺设计(共56页)
- 儿童相声剧本43286
评论
0/150
提交评论