[计算机软件及应用]基于Ajax实现异步交互的OA系统.doc

上传人:音乐台 文档编号:1991892 上传时间:2019-01-29 格式:DOC 页数:42 大小:1.01MB
返回 下载 相关 举报
[计算机软件及应用]基于Ajax实现异步交互的OA系统.doc_第1页
第1页 / 共42页
[计算机软件及应用]基于Ajax实现异步交互的OA系统.doc_第2页
第2页 / 共42页
[计算机软件及应用]基于Ajax实现异步交互的OA系统.doc_第3页
第3页 / 共42页
亲,该文档总共42页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《[计算机软件及应用]基于Ajax实现异步交互的OA系统.doc》由会员分享,可在线阅读,更多相关《[计算机软件及应用]基于Ajax实现异步交互的OA系统.doc(42页珍藏版)》请在三一文库上搜索。

1、 编号: 本科生毕业设计论文 题题 目目 名名 称称 基于基于 AjaxAjax 实现异步交互的实现异步交互的 OAOA 系统系统 的设计与实现的设计与实现 学学 生生 姓姓 名名 学学 号号 学学 院院 专专 业业 年年 级级 指指 导导 教教 师师 职职 称称 填填 写写 时时 间间 2012-5-182012-5-18 吉首大学教务处制吉首大学教务处制 I 基于 Ajax 实现异步交互的 OA 系统 摘 要 随着信息技术的发展,在办公过程中,传统的工作方式和审批模式己经难以满 足新的需求。实现办公自动化已经是提高企业单位办公效率,规范化管理的必然趋 势。因此开发办公自动化 OA 是非常有

2、前景的。本次毕业设计是基于 Ajax 实现异 步交互的 OA 系统,使用 J2EE +MySQL5.0 开发。采用 B/S 构架进行开发,使用了 MVC 模式和 J2EE 四层结构(web 视图层、service 业务逻辑层、dao 数据访问层、持 久层),使用 Struts+Hibernate 框架进行集成。系统目前已经实现的模块有:员工管 理、日程管理、签到管理、短消息管理、部门管理、公告管理、文件管理、权限管 理等模块。 关键词:OA;MVC 模式;Ajax;J2EE;B/S 架构 Based on Ajax Asynchronous Interaction of OA System A

3、bstract Along with the development of information technology, the traditional way of working and approval of the model has been difficult to satisfy the new demands in office process. Achieve the office automation is to improve the enterprise unit office efficiency and inevitable trend of standardiz

4、edmanagement. So development office automation OA is very prospect. This Graduation Project is based on Ajax asynchronous interaction of OA system, use the J2EE + MySQL5.0 to develop. The B/S structure to develop, using MVC pattern and J2EE four layers structure (the web view layer, the service busi

5、ness logic layer, the dao data access layer and the lasting layer), use Struts + Hibernate framework integrated. The system has realized module at present: employee management, schedule management, signed in management, short newsmanagement, department management, public announcement management, fil

6、e management, rights management module etc. Key words:OA; MVC mode; Ajax; J2EE; B/S structure II 目 录 摘要I ABSTRACTI 第一章 绪 论.1 1.1 系统开发背景.1 1.2 系统开目的与意义.1 1.3 系统开发环境.1 1.4 系统开发技术 .2 第二章 需求分析和可行性分析.4 2.1 需求分析.4 2.1.1 引言4 2.1.2 任务概述4 2.1.3 系统角色设置4 2.1.4 系统实现目标4 2.1.5 完善和改进5 2.2 可行性分析.5 2.2.1 经济可行性5 2.2.

7、2 技术可行性5 第三章 概要设计.7 3.1 系统体系结构设计.7 3.2 系统功能模块图.7 3.3 系统模块设计.8 3.3.1 消息管理模块8 3.3.2 签到管理模块8 3.3.3 部门管理模块8 3.3.4 员工管理模块8 3.3.5 文件管理模块8 3.3.6 通讯录模块8 3.3.7 权限管理模块8 3.3.8 日程管理模块8 3.3.9 反馈信息模块8 3.4 系统流程图.9 3.4.1 登录流程图9 3.4.4 菜单显示流程图9 3.4.3 数据查询流程图10 3.4.4 添加或修改据数据流程图10 第四章 数据库的设计与实现.11 4.1 数据分析.11 III 4.2

8、数据库逻辑设计.11 4.2.1 数据库实体关系图11 4.2.2 数库总 E-R 图 .13 4.2.3 数据库表结构14 4.2.4 数据库表详细设计14 第五章 系统详细设计.19 5.1 系统详细设计概述.19 5.2 系统各模块的实现.19 5.2.1 签到管理模块的实现19 5.2.2 文件管理模块的实现20 5.2.3 权限管理模块的实现21 5.2.4 部门管理模块的实现24 5.2.5 员工管理模块的实现25 5.2.6 通讯录模块的实现27 5.2.7 信息反馈模块的实现27 5.2.8 日程管理模块的实现27 5.2.9 消息管理模块的实现28 5.2.10 公告管理模块

9、的实现29 5.2.11 分页查询的实现29 第六章 系统测试.33 6.1 模块测试.33 6.2 整体测试.33 6.3 登录测试.33 6.4 新增测试.34 结束语.35 参考文献.36 致谢.37 基于 AJAX 实现异步交互的 OA 系统 绪论 1 第一章 绪 论 1.1 系统开发背景 办公自动化(Office Automation 即 OA)是 20 世纪 70 年代中期在发达国家迅速 发展起来的一门综合性技术,我国从 20 世纪 80 年代开始,尤其是进入 90 年代, 办公自动化发展迅猛。随着全球信息化的迅猛发展,传统的办公方式已经落后于信 息化发展的要求,必将被全新的办公方

10、式取代。构建内部企业信息网(Intranet),实 现办公自动化(OA)已经成为一种迫切的要求。本系统借助计算机网络实现了协同 办公,共享资源,信息高效传输等功能9。 OA 带给我们的不仅仅是办公事务上的轻松应对,实现办公流程的全程计算机 化。更是一种全新的办公理念,是信息化社会发展的必然要求,是我们思维触角的 无限延伸;时间和距离不再是我们获取信息的障碍,将会成为我们生活中的一个重 要组成部分。 1.2 系统开目的与意义 在传统的办公模式中,由于缺少重要的信息传递和工作流程环节,办公的各个 部门之间无法实现信息共享和信息集成,从而难以实现各个部门之间的高效协作。 在日常的办公过程中,比较容易

11、出现以下的差错:一是各部门的信息传递和事务交 接仍然由人工完成,容易出现差错;二是上下级和部门之间无法实现协同工作,难 以及时沟通;三是信息和工作流程相互分离,缺少至关重要的随时记录,使工作监 控和评估困难重重。可以想象,掺杂着如此大量的人工操作过程的事务处理方式根 本无法适应现代化办公模式的需要。 随着信息技术的发展和国内信息技术应用水平的提高,在办公过程中,传统的 工作方式和审批模式己经难以满足新的需求,实现办公自动化已经是提高政府机关 和企事业单位办公效率,规范化管理的必然趋势。因此开发办公自动化 OA 来提高 企业的办公效率是非常有前景的,企业需求量很大。 1.3 系统开发环境 (1)

12、 JDK环境JDK 1.6 (2) 数据库软件 MySQL5.2 (3) Web 服务器 Tomcat6.0。 基于 AJAX 实现异步交互的 OA 系统 绪论 2 (4) 集成开发工具 MyEclipse8.5。 1.4 系统开发技术 自从 Servlet 技术产生以来,J2EE 的 Web 开发技术与开发框架便层出不穷。这 些技术和框架的产生,给我们的开发带来方便,此系统就是通过使用 Struts2.0+ Hibernate3.2 +AJAX 等当前流利的框架技术实现的一个 OA 办公自动化系统。 (1) AJAX 技术 AJAX 全称为“Asynchronous JavaScript a

13、nd XML”(异步 JavaScript 和 XML) , 是指一种创建交互式网页应用的网页开发技术。Ajax 不是一个技术,它实际上是几 种技术,每种技术都有其独特这处,合在一起就成了一个功能强大的新技术异步 传输数据。它由下列技术组合而成:使用 CSS 和 XHTML 来表示;使用 DOM 模型 来交互和动态显示;使用 XMLHttpRequest 来和服务器进行异步通信;使用 javascript 来绑定和调用。Ajax 的原理简单来说通过 XmlHttpRequest 对象来向服务 器发异步请求,从服务器获得数据,然后用 javascript 来操作 DOM 而更新页面。这 其中最关

14、键的一步就是从服务器获得请求数据。要清楚这个过程和原理,我们必须 对 XMLHttpRequest 有所了解。XMLHttpRequest 是 ajax 的核心机制,它是在 IE5 中首先引入的,是一种支持异步请求的技术。简单的说,也就是 javascript 可以及 时向服务器提出请求和处理响应,而不阻塞用户。达到无刷新的效果5。 (2) Struts 页面技术 Struts 1 框架以 ActionServlet 作为核心控制器,整个应用由客户端请求驱动。 当客户端向 Web 应用发送请求时,请求将被 Struts 1 的核心控制器 ActionServlet 拦 截,ActionServ

15、let 根据请求决定是否需要调用业务逻辑控制器处理用户请求,当用 户请求处理完成后,其处理结果通过 JSP 呈现给用户。对于整个 Struts 1 框架而言, 控制器就是它的核心,Struts 1 的控制器由两个部分组成:核心控制器和业务逻辑控 制器。其中核心控制器就是 ActionServlet,由 Struts 1 框架提供;业务逻辑控制就 是用户自定义的 Action,由应用开发者提供。对于大部分用户请求而言,都需要得 到服务器的处理。当用户发送一个需要得到服务器处理的请求时,该请求被 ActionServlet 拦截到,ActionServlet 将该请求转发给对应的业务逻辑控制器,业

16、务 逻辑控制器调用模型来处理用户请求;如果用户请求只是希望得到某个 URL 资源, 则由 ActionServlet 将被请求的资源转发给用户。Struts 2 与 Struts 1 相比,确实有很 多革命性的改进,但它并不是新发布的新框架,而是在另一个赫赫有名的框架: WebWork 基础上发展起来的。从某种程度上来讲,Strut2 没有继承 Struts 1 的血统, 而是继承了 WebWork 的血统。或者说,WebWork 衍生出了 Struts 2,而不是 Struts 1 衍生了 Struts 2。因为 Struts 2 是 WebWork 的升级,而不是一个全新的框架,因此 基于

17、 AJAX 实现异步交互的 OA 系统 绪论 3 稳定性、性能等各方面都有很好的保证;而且吸收了 Struts 1 和 WebWork 两者的优 势4。 (3) JavaScript 技术 JavaScript 是一种基于对象(Object)和事件驱动(Event Driven)并具有安全性能 的脚本语言。使用它的目的是与 HTML 超文本标记语言、Java 脚本语言(Java 小 程序)一起实现在一个 Web 页面中连接多个对象,与 Web 客户交互作用。从而可 以开发客户端的应用程序等。它是通过嵌入或调入到标准的 HTML 语言中实现的。 它的出现弥补了 HTML 语言的缺陷,它是 Jav

18、a 与 HTML 折衷的选择, JavaScript 是 依赖于浏览器本身,与操作环境无关,只要能运行浏览器的计算机,并支持 JavaScript 的浏览器就可正确执行。实际上 JavaScript 最杰出之处在于可以用很小的 程序做大量的事。无须有高性能的电脑,软件仅需一个字处理软件及一浏览器,无 须 WEB 服务器通道,通过自己的电脑即可完成所有的事情10。 (4) Hibernate 技术 在今日的企业环境中,把面向对象的软件和关系数据库一起使用可能是相当麻 烦、浪费时间的。Hibernate 是一个面向 Java 环境的对象/关系数据库映射工具。对 象/关系数据库映射(object/r

19、elational mapping (ORM)这个术语表示一种技术,用来 把对象模型表示的对象映射到基于 SQL 的关系模型数据结构中去。Hibernate 不仅仅 管理 Java 类到数据库表的映射(包括 Java 数据类型到 SQL 数据类型的映射) ,还 提供数据查询和获取数据的方法,可以大幅度减少开发时人工使用 SQL 和 JDBC 处 理数据的时间5。 (5) JSP 技术 JSP 产生于 Servlet 之后,主要是为了解决 Servlet 中输出 HTML 代码效率低的 问题而产生的。JSP 技术比较简单,类似于 ASP、PHP 这些脚本语言。JSP 的技术 主要是由以下两个部分

20、组成:JSP 的基本语法:两个注释、3 个脚本元素、8 个动作 指令。JSP 的九大内置对象:request 请求对象、response 响应对象、pageContext 页 面上下文对象、session 会话对象、application 应用程序对象、out 输出对象、config 配置对象、page 页面对象和 exception 例外对象11。 基于 AJAX 实现异步交互的 OA 系统 需求分析和行性分析 4 第二章 需求分析和可行性分析 需求分析是在系统开发之前完成的,主要是对系统的功能做些简单的分析,系 统可以实现的哪些功能。可行性分析主要包括经济可行性和技术可行性。 2.1 需求

21、分析 保证开发软件产品和软件项目的需求分析在正常的情况下运行,在进行开发前 能够明确的达到开发的目标,对系统目标做出明确的、完整的、清晰的、具体的分 析。给出软件产品的总设计和项目计划。对该系统做出详细的分析它所的需求。和 所要完成的功能。以什么方式来完成他的功能等。 2.1.1 引言 OA 可满足于企事业单位的、综合型的、能够提高单位内部信息交流、共享、 流转处理的和实现办公自动化和提高工作效率的各种信息化设备和应用软件。OA 一般采用网络平台,使企业内部人员方便快捷地共享信息,高效地协同工作;改变 过去复杂、低效的手工办公方式,实现迅速、全方位的信息采集、信息处理,为企 业的管理和决策提供

22、科学的依据。一个企业实现办公自动化的程度也是衡量其实现 现代化管理的标准。OA 从最初的以大规模采用复印机等办公设备为标志的初级阶 段,发展到今天的以运用网络和计算机为标志的现阶段,对企业办公方式的改变和 效率的提高起到了积极的促进作用。 2.1.2 任务概述 本系统围绕着 OA 系统的定义,系统地展开各种常用的辅助功能。系统涵盖日 常常用的功能以及各种辅助实用的功能,可以充分发挥计算机的辅助作用,提交工 作效率。OA 是信息化需求的产物,因为在需求的基础上产生的 OA 系统应该能够 顺利高效的完成相关的任务。而且为了使 OA 在一定程度上提高工作效率,系统本 身也应该具有高效的属性,并且足够

23、健壮稳定,才能胜任需求。工作的需求是不断 发展的,OA 也应当不断发展以适应日益增长的变化,因此,系统必须有足够的可 扩充性。为了增加系统的可扩充性,应当使用 API 技术,尽量使系统的各个模块相 互独立,并通过系统核心相互依存。 2.1.3 系统角色设置 系统共有下列固有角色:系统管理员、总经理、副总经理、部门经理、普通员 工,系统任何用户均应具有普通员工的权限。系统管理员具有所有权限。 2.1.4 系统实现目标 提高办公效率:办公系统充分利用互联网通信技术,改变了传统的办公方式, 基于 AJAX 实现异步交互的 OA 系统 需求分析和行性分析 5 将办公系统建立在互联网上,使办公系统实现移

24、动化、实时化、高效化、无纸化, 用计算机网络技术来推动现代办公效率的提高。节省企业的办公费用:节省支出, 尤其是长途电话、传真、复印、打印和办公用纸费用,真正实现无纸化办公,是企 业实现管理现代化的标志;良好的协同工作环境:在网上各部门之间实现科学、高 效、透明、规范的数字化协同工作环境,让工作组的所有人员都能掌握工作进度, 发挥群体工作的威力,让企业更具活力。实现基于电脑网络的知识管理和网络培训: 通过办公系统提升企业员工的素质;利用公共信息库,共享信息和知识,将所有员 工的智慧积累和发扬。基于浏览器界面、安装方便,客户端只需安装大众的 IE 浏 览器,且操作简单、方便,只要懂上网便能得心应

25、手使用该软件,不需要做额外的 使用培训。具有良好的适应性,客户端零维护,避免了 C/S 模式麻烦的系统维护过 程,系统管理员从此不再需要两头奔波。方便的系统流程和配置管理。提供用户权 限、数据加密、并结合操作系统、数据库的安全管理机制,为系统正常运转提供安 全保障。 良好的系统开放能力和可扩展性,使企业轻松架构 Internet 应用。 2.1.5 完善和改进 因本系统实现的功能较为简单,要实现一个完整的 OA 系统可能在有限的时间 内无法充分完成,而且能力暂时有限,故应先将系统构架充分完善,并组织好系统 API,这样在将来想对系统进行完善和改进的时候比较方便。 2.2 可行性分析 可行性是系

26、统开发的一项关键步骤,它是通过对整个系统的需求,技术及开发 方法,以及开发人员,所需资金的综合考虑以评估对于该系统的开发是否符合实际。 可行性分析包括:经济可行性、技术可行性。 2.2.1 经济可行性 通过网站对企业内部信息进行全面的自动化的管理,大大提高了企业的办公效 率。通过系统对企业生产经营过程中的数据进行全面的管理和统计,避免人为处理 各类数据时所产生的各种问题,提高了企业的经济效益,为企业经营决策提供了大 量的、权威的数据,使企业的管理进行到科学化、系统化的范筹。硬件方面主要是 计算机,我们的实际情况可以满足开发任务,所需资料书籍可以到图书馆翻阅或者 个人购买,因此整个系统的所需投资

27、符合我们的支付状况,经济可行性良好。 2.2.2 技术可行性 基于中小型企业的办公自动化系统的开发采用了先进成熟并且符合实际应用的 开发方法,广泛应用于网站开发的网页开发工具 Dreamweaver,MyEclipse,动态网 页开发技术 JSP,提供用户全新体验的 AJAX 技术,功能强大的数据库管理工具 MySQL,采用最新最流行的框架技术 Struts +Hiberate 等,结合自己的实际开发能力, 可以开发出较为完善的办公自动化系统。应解决的主要问题及技术要求:收集系统 基于 AJAX 实现异步交互的 OA 系统 需求分析和行性分析 6 开发所使用的足够的信息;按实际应用的可行性划分

28、模块,确定模块功能;建立完 善的数据库支持环境;使用 JSP 语言实现前台页面视图,使用 AJAX 技术实现数据 与页面的整体实现,并实现与数据库之间的各项操作;各模块功能的协调及信息的 沟通;各框架之间的整合,尤其是 Struts +Hiberate 框架之间的整合。 基于 AJAX 实现异步交互的 OA 系统 概要设计 7 第三章 概要设计 概要设计是对系统的一个简要的描述,包括系统的结构设计、系统包含哪些功 能模块、各个功能的模块的主要功能以及系统的数据流程图。 3.1 系统体系结构设计 该系统是基于 B/S(Browser/Server)架构的三层体系结构,即浏览器和服务器结 构。它是

29、随着 Internet 技术的兴起,对 C/S 结构的一种变化或者改进的结构。在这 种结构下,用户工作界面是通过浏览器来实现,极少部分事务逻辑在前端(Browser) 实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层结构。这样就大大 简化了客户端电脑载荷,减轻了系统的维护与升级的成本和工作量,降低了用户的 总体成本。特别是在 JAVA 这样的跨平台语言出现之后,B/S 架构管理软件更是方 便、快捷、高效。如果能将该系统划分的用户身份验证模块和其他模块再分解成一 些相互独立、功能简单、易于理解和修改的模块,这样的系统就具备了系统设计首 要考虑的可变更性。由模块组合构成的系统一般

30、称为模块化结构系统。在这样的系 统中,由于各个模块之间基本上是相互独立的,所以每个模块都可以独立的被理解、 编程、调试和修改,使其复杂的系统设计工作变得相对简单。在遵循模块化结构设 计原则的基础上,根据实现的目标,用户身份验证只需要一个模块,而其他模块则 分成了几个不同的子模块,各子模块既相互配合,又各自具有一定的独立功能。这 样就形成了一个树形的结构8。 3.2 系统功能模块图 对系统做出需求分析后,预计准备实现本系统的功能模块如下图 3.1 所示: 基于 AJAX 实现异步交互的 OA 系统 概要设计 8 OA办公自动化系统 消息管理签到管理部门管理文件管理权限管理员工管理反馈信息通讯录日

31、程管理 签 到 上 班 签 到 信 息 签 到 下 班 查 询 部 门 添 加 部 门 设 置 部 门 角 色 权 限 修 改 角 色 权 限 修 改 用 户 权 限 新 增 角 色 用 户 角 色 添 加 员 工 设 置 员 工 查 询 员 工 历 史 反 馈 信 息 发 送 反 馈 信 息 公 共 通 讯 录 个 人 通 讯 录 查 看 日 程 添 加 日 程 图 3.1 系统功能模块图 3.3 系统模块设计 系统设计要实现的模块有:员工管理模块、通讯录模块、日程管理模块、签到 管理模块、短消息管理模块、部门管理模块、公告管理模块、文件管理模块、权限 管理模块、信息反馈模块。 3.3.1

32、消息管理模块 用户登录系统后可以进入点击系统桌面的消息图标和菜单栏的消息管理功能模 块菜单进入消息模块。用户可以使用该模块和公司内部员工进行基于 web 的即时聊 天,该模块中用户分为在线和未上线两种状态,用户可以查看所有人的在线情况, 用户既可以给在线用户发送消息,也可以给未上线用户发送消息,在线用户可以即 时看到对方发送的消息,未上线用户如果有其他用户发送了离线消息,那么在登录 上线后就可以看到对方发送的离线消息。 3.3.2 签到管理模块 用户登录系统后可以进入点击系统桌面的“上班”图片进行签到上班,之后可 以点击“下班”图片进行签到下班。同时还可以点击菜单栏的签到上班和签到下班 菜单进

33、行签到。用户还可以点击菜单栏的签到信息进行签到信息的查看。 3.3.3 部门管理模块 部门管理模块有查询部门、设置部门和添加部门三大功能。系统管理员具有该 模块的所有权限,而其他用户只具有查询部门的权限。查询部门可以查询具体某个 部门的详细信息,设置部门可以修改和删除部门,添加部门可以添加部门。 3.3.4 员工管理模块 员工管理模块有查询员工、设置员工和添加员工三大功能。系统管理员具有该 模块的所有权限,而其他用户只具有查询员工的权限。查询员工可以查询某个员工 的详细信息,设置员工可以修改和删除员工,添加员工可以添加员工。 基于 AJAX 实现异步交互的 OA 系统 概要设计 9 3.3.5

34、 文件管理模块 文件管理模块可以进行文件的上传和下载。 3.3.6 通讯录模块 通讯录模块可以查询和添加通讯录,还可以生成通讯录的报表(excel 文件) 。 3.3.7 权限管理模块 权限管理模块可以查看角色权限和员工角色,修改员工角色和角色权限。系统 管理员才具有该模块的权限。 3.3.8 日程管理模块 用户可以使用该模块进行日程的添加和查看日程,主要用于员工对工作安排的 记录,即记录每天的重要工作内容,以免忘记。 3.3.9 反馈信息模块 反馈信息模块可以发送反馈信息和查看历史反馈信息。反馈信息主要是员工对 一些工作的安排的意见。 3.4 系统流程图 系统流程图主要是用来描述系统在运行过

35、程中数据的传输过程。 3.4.1 登录流程图 用户进入登录页面,输入用户名和密码后,点击登录按钮可以进行系统登录。 如下图 3.2 所示: 输入账号密码 输入正确否 数据库 错误处理 输出 正确 错误 图 3.2 登录流程图 基于 AJAX 实现异步交互的 OA 系统 概要设计 10 3.4.4 菜单显示流程图 用户登录成功后,系统讲当前登录用户的 ID 传递给相应的 action 去查询当前 用户的菜单使用权限,从而显示菜单栏,如下图 3.3 所示: 登录成功 查询用户权限 数据库 输出 图 3.3 菜单显示流程图 3.4.3 数据查询流程图 用户查询使用某个模块的查询功能时,通过 JSP

36、页面提交查询条件给 action,action 在调用查询方法返回查询结果给 JSP 页面,如下图 3.4 所示 输入查询条件 输入正确否 数据库 错误提示 输出查询结 果 正确 错误 图 3.4 查询显示流程图 基于 AJAX 实现异步交互的 OA 系统 概要设计 11 3.4.4 添加或修改据数据流程图 用户查询使用某个模块的添加或修改功能时,通过 JSP 页面提交添加或修改的 信息给 action,action 在调用新增和修改方法返回提示结果给 JSP 页面,添加或修 改是否成功,如下图 3.5 所示: 输入新增或修改 信息 输入正确否 数据库 错误提示 提示成功与 否 正确 错误 图

37、 3.5 新增或修改流程图 基于 AJAX 实现异步交互的 OA 系统 数据库的设计与实现 12 第四章 数据库的设计与实现 数据库的设计是对系统数据库的实现,主要包括表的设计和表与表之间的关系 的设计,本系统采用 MySQL5.0 进行实现的。 4.1 数据分析 根据 OA 系统的需求分析,需要以下的数据表: 用户信息表:存放用户的基本信息。 部门信息表:存放部门信息。 文件信息表:存放文件信息,例如文件位置,文件名称等。 菜单表:存放菜单显示名称,菜单指向位置,以及菜单级别。 消息表:存放发送以及接收的信息。 消息状态表:存放消息的状态。 公告表:存放公告信息。 部门公告表:存放部门的公告

38、信息 用户角色表:存放用户的角色相关信息。 角色表:保存角色等相关信息。 角色权限表:保存角色权限信息表。 日程表:存放添加的日程信息。 签到信息表:存放签到信息。 反馈信息表:存放反馈的信息。 通讯录表:存放通讯录信息。 4.2 数据库逻辑设计 数据库的逻辑设计主要包括数据库的实体关系图,数据库 E-R 图以及数据库表 结构图。主要用来描述实体与属性之间的关系,实体与实体之间的关系以及表与表 直接的关系。 4.2.1 数据库实体关系图 数据库的实体关系 E-R 图主要用来描述实体与属性之间的关系。如下图所示, 给出了本系统所需要的实体及其属性关系图。 基于 AJAX 实现异步交互的 OA 系

39、统 数据库的设计与实现 13 图 4.1 员工实体图 图 4.2 文件实体图 图 4.3 角色权限实体图 图 4.4 日程实体图 基于 AJAX 实现异步交互的 OA 系统 数据库的设计与实现 14 图 4.5 角色实体图 图 4.6 消息实体图 图 4.7 菜单实体图 图 4.8 部门实体图 4.2.2 数库总 E-R 图 描述了数据库实体与实体之间的一对多和多对多的关系,是对系统数据库总体 基于 AJAX 实现异步交互的 OA 系统 数据库的设计与实现 15 关系的一个描述,如下图 4.9 所示: 图 4.9 数据库总 E-R 图 4.2.3 数据库表结构 数据库表结构描述了数据库表与表之

40、间的关系,本系统数据库表结构设计如图 4.10 所示。 图 4.10 OA 办公自动化系统数据库表设计12 4.2.4 数据库表详细设计 数据库表详细设计详细描述了数据库每个表的字段名及说明。 基于 AJAX 实现异步交互的 OA 系统 数据库的设计与实现 16 表 4.1employee(用户表) 列名数据类型空/非空约束条件其他说明 emp_IDInt非空主键用户唯一标识 emp_codeVarchar(50)非空用户编号 emp_nameVarchar(50)非空用户姓名 emp_pwdVarchar(20)非空密码 emp_sexChar(2)非空性别 emp_joindateDate

41、time非空入职时间 emp_birthDatetime非空生日 emp_emailVarchar(50)非空邮箱 emp_addressVarchar(50)非空住址 emp_phoneVarchar(20)非空电话 emp_descripti on Varchar(50)非空描述 dept_IDInt非空外键部门 ID 表 4.2 role(角色表) 列名数据类型空/非空约束条件其他说明 ROLE_IDint非空主键角色 ID ROLE_NAM E Varchar(50) 非空角色名 表 4.3 dept(部门表) 列名数据类型空/非空约束条件其他说明 dept_idint非空主键部门 i

42、d dept_nameVarchar(50)非空部门名称 dept_fidInt非空上级部门 ID dept_descripti on Varchar(50) 非空描述 表 4.4 calendar(日程表) 列名数据类型空/非空约束条件其他说明 CALENDAR_IDint非空主键日程 id CALENDAR_TITLEVarchar(50)非空日程标题 CALENDAR_STARTTIM E datetime 非空开始时间 CALENDAR_ENDTIMEdatetime非空结束时间 CALENDAR_REMINDint非空提前提醒 基于 AJAX 实现异步交互的 OA 系统 数据库的设计

43、与实现 17 时间 CALENDAR_CONTENTVarchar(50)日程内容 EMP_IDInt外键用户 ID CALENDAR_ISREMIDInt默认 0 表 4.5 employeerole(用户角色表) 列名数据类型空/非空约束条件其他说明 ROLE_IDint非空角色权限 id EMP_IDint非空外键用户 id 表 4.6 folder(文件表) 列名数据类型空/非空约束条件其他说明 floder_fileIDint非空主键文件 id floder_filenameVarchar(50)非空文件名 floder_typeVarchar(50)非空文件类型 floder_fi

44、lesizeInt非空文件大小 floder_uploadD ate Datetime 非空上传时间 floder_pathVarchar(200)非空文件保存路径 floder_descripti on Varchar(200) 描述 emp_idInt外键上传者 ID 表 4.7 instantcommunicaterecord(消息表) 列名数据类型空/非空约束条件其他说明 MESSAGE_IDint 非空主键消息 id MESSAGE_SENDERI D Int 非空发送者 ID MESSAGE_ACCEPTE RID Int 非空接受者 ID ESSAGE_CONTENTVarcha

45、r(200) 消息内容 MESSAGE_SENDTIM E Datetime 发送时间 MESSAGE_READST ATE Int 状态 表 4.8 power(功能菜单表) 列名数据类型空/非空约束条件其他说明 POWER_IDint非空主键功能菜单 Id 基于 AJAX 实现异步交互的 OA 系统 数据库的设计与实现 18 POWER_NAM E Varchar(50) 非空功能菜单名称 POWER_ADD RESS Varchar(200) 页面地址 表 4.9 powerrole(功能菜单权限表) 列名数据类型空/非空约束条件其他说明 POWER_IDint非空功能菜单 id ROL

46、E_IDint非空角色 ID 表 4.10 privateaddressbook(个人通讯录) 列名数据类型空/非空约束条件其他说明 PAB_IDint非空主键通讯录 ID PAB_NAMEVarchar(20)非空姓名 PAB_SEXChar(2)非空性别 PAB_BIRTHDAYDatetime非空出生日期 PAB_MOBILETELVarchar(20)非空电话 PAB_EMAILVarchar(20)非空邮件地址 PAB_QQMSNVarchar(200)非空 QQ PAB_ADDRESVarchar(200)地址 PAB_FAMILYTELVarchar(20)家庭电话 PAB_CO

47、MPANYN AME Varchar(50) 公司名称 PAB_COMPANYTE L Varchar(20) 公司电话 PAB_REMARKVarchar(100)备注 EMP_IDint外键用户 ID 表 4.11 bulletin(公告表) 列名数据类型空/非空约束条件其他说明 BULLETIN_IDint非空主键公告 Id BULLETIN_TITLEVarchar(50)非空标题 BULLETIN_CONTE NT Varchar(200) 非空内容 BULLETIN_BUILDT IME Datetime 非空创建时间 表 4.12 deptbulletin(部门公告表) 列名数据

48、类型空/非空约束条件其他说明 基于 AJAX 实现异步交互的 OA 系统 数据库的设计与实现 19 dept_idint非空主键部门 Id BULLETIN_IDInt非空外键公告 ID BULLETIN_BUILDT IME Datetime 非空创建时间 表 4.13 instantcommunicateuserinfo(用户消息表) 列名数据类型空/非空约束条件其他说明 EMP_IDint非空主键消息 Id ICON_IDInt非空消息标题 EMP_STATEint非空消息状态 HISTORYint非空是否已读 HISTORYSAVET IME int 非空消息条数 表 4.14 instantcommunicateiconinfo(图片表) 列名数据类型空/非空约束条件其他说明 ICON_IDint非空主键图片 ID ONLINE_ICONVarch

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

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1