《毕业设计(论文)-OA办公自动化系统设计与开发.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)-OA办公自动化系统设计与开发.doc(37页珍藏版)》请在三一文库上搜索。
1、 I 目目 录录 摘 要.III ABSTRACTIV 第 1 章 绪 论.1 1.1 课题背景1 1.2 论文的研究内容.2 1.2.1 新华学院办公自动化系统概述2 1.2.2 用户身份验证模块概述2 1.2.3 系统技术要求及可行性2 1.3 论文的组织结构.3 第 2 章 安徽新华学院办公信息管理系统需求分析.4 2.1 系统概述4 2.1.1 设计目标.4 2.1.2 系统特点.4 2.2 系统运行的环境.5 2.2.1 设备要求.5 2.2.2 支撑软件.5 2.3 系统的用例设计.5 2.3.1 系统用例图.5 2.3.2 用户身份验证子系统用例图6 2.3.3 我的通讯录模块用
2、例图7 2.3.4 日程安排用例图7 2.3.5 工作日志用例图7 2.3.6 短消息管理用例图8 2.3.7 公告管理用例图8 2.3.8 会议管理用例图9 第 3 章 系统设计10 3.1 系统设计10 3.1.1 用户身份验证模块分析10 3.1.2 用户信息管理模块分析10 3.2 设计技术与开发环境11 3.2.1 设计技术.11 3.3 系统数据库设计.12 3.3.1 数据库结构设计13 3.3.2 数据库逻辑设计13 3.3.3 数据库物理设计13 第 4 章 系统实现15 4.1 登陆-功能设计描述(INDEX.JSP)15 4.2 系统主页面(INDEX.JSP)15 4.
3、3 新华学院员工 OA 系统.16 II 4.3.1 通讯录模块主页面(ADDRESS.JSP).17 4.3.2 日程安排模块.18 4.3.3 工作日志模块.19 4.3.4 短消息管理模块20 4.3.5 公告管理模块.21 4.3.6 会议管理模块.23 4.3.7 安全退出模块.25 4.3.8 分页技术的应用26 第 5 章 系统测试及结果28 5.1 测试计划.28 5.2 测试用例.28 5.2.1 对注册功能进行测试.28 5.2.2 对用户登录功能进行测试.28 5.2.3 对通讯录管理功能进行测试28 5.3 测试结果28 第 6 章 系统开发总结.30 参考文献.31
4、谢 辞.32 III 摘 要 办公自动化(Office Automation,简称 OA)是将现代化办公和计算机网络功能 结 合起来的一种新型的办公方式,是当前新技术革命中一个非常活跃和具有很强生命力 的技术应用领域,是信息化社会的产物。 在行政机关、企事业单位工作中,是采用 Internet/Intranet 技术,以计算机为中心, 采用一系列现代化的办公设备和先进的通信技术,广泛、全面、迅速地收集、整理、 加工、存储和使用信息,使企业内部人员方便快捷地共享信息,高效地协同工作;改 变过去复杂、低效的手工办公方式,为科学管理和决策服务,从而达到提高行政效率 的目的。一个企业实现办公自动化的程
5、度也是衡量其实现现代化管理的标准。 我国 专家在第一次全国办公自动化规划讨论会上提出办公自动化的定义为:利用先进的科 学技术,使部分办公业务活动物化于人以外的各种现代化办公设备中,由人与技术设 备构成服务于某种办公业务目的的人一机信息处理系统。 该系统具有如下有点:出色的易用性,访问速度快,简单的客户端,系统成熟稳 定,适应性好,容易维护。 该办公自动化系统,包含模块及功能如下: 通讯录模块:新建,修改,删除联系人,翻页。 日程安排模块:新建,修改,删除日程安排,翻页。 工作日志模块:新建,修改,删除工作日志,翻页。 短消息模块:新建,发送,设置是否已读短消息,翻页。 公告管理模块:新建公告管
6、理,翻页。只有发起者和管理员才有权限删除,普通 用户只能阅读。 会议管理模块:管理员新建,修改会议。 安全退出:所有用户都可以安全退出。 关键词:办公自动化,JSP,MVC,JavaEE,数据库 IV Abstract OA (Office Automation, referred to as OA) is a modern office and computer network that combines features of a new way of office, the new technological revolution is a very active and has a s
7、trong vitality of the area of technology applications, is the information society product. In the administrative organs, enterprises and institutions work, is the use of Internet / Intranet technology, the concept of workflow-based computer as the center, using a range of modern office equipment and
8、 advanced communications technologies, a broad, comprehensive, rapid collection, collation , processing, storage and use of information, so that internal staff to share information easily and quickly and efficiently work together; changes in the last complex, inefficient manual methods of office for
9、 the scientific management and decision-making services, so as to achieve the purpose of improving administrative efficiency. An enterprise to achieve the degree of office automation is also a measure of its achievement of modern management standards. China experts in the first national office autom
10、ation planning to discuss at the office automation is defined as: the use of advanced science and technology, so that part of the operational activities of the office other than physico-chemical in a variety of modern office equipment and technical equipment from the service composition The purpose
11、of a business office of the human- machine information processing system. The system has the following bit: excellent ease of use, access speed, a simple client, mature and stable system, adaptability, and easier to maintain. The office automation system, including modules and functions are as follo
12、ws: Address book module: new, modified, deleted contacts, page. Schedulog module: new, modify, delete schedule page. Work Log modules: new, modified, delete the work log page. SMS module: new, send, settings are read a short news page. Notice management module: new bulletin management page. Only spo
13、nsors and administrators have permissions to delete, ordinary users can only read. Meeting management modules: a new administrator, modify the meeting. Security exit: all users can safely exit. Keywords:Office automation,JSP, MVC, JavaEE,Database 1 第 1 章绪 论 1.1 课题背景 办公自动化,英文 Office Automation,简称 OA,
14、是办公信息处理的自动化,它 利用先进的技术,使人的各种办公业务活动逐步由各种设备、各种人、机信息系统来 协助完成,达到充分利用信息,提高工作效率和工作质量,提高生产率的目的。 办公自动化由 70 年代未 80 年代初在我国的提出,到现在已有了近二十年发展历 史。由于办公自动化技术的不断发展,办公自动化新产品不断的出现,办公自动化的 内涵也不断地丰富和发展1。 1) 传统办公模式 (如图 1.1) 图 1.1 传统办公模式 传统的办公模式主要以纸介质为主,在信息革命的浪潮中,显然已经远远不能满 足高效率、快节奏的现代工作和生活的需要。如何实现信息处理的自动化和办公的无 纸化逐步得到了人们的重视。
15、 2) 网络办公模式 (如图 1.2) 图 1.2 网络化办公模式 现有网络办公自动化系统和大型信息管理系统中,企业业务流程重组或者是文件 流转功能都是核心功能。同时企业办公主要是一个文件流转的过程,所有的办公事务 都可以抽象成一个数据库表单。 2 3) WEB 方式的办公自动化系统 目前办公自动化系统较成熟的模式是客户/服务器方式,而新一代的办公自动化 系统则应是 Internet/Intranet 方式,即 B/S(Browser/Server,B/S)结构2,才更 能适应目前及未来的要求。 1.2论文的研究内容 1.2.1新华学院办公自动化系统概述 安徽新华学院网站的办公自动化系统,是基
16、于安徽新华学院本身内部管理及业务 发展需求,应用计算机技术,Internet 技术,实现企业办公自动化,管理信息化。 该项目的主要内容是办公信息管理系统的设计实现与网络办公的研究。系统主要 应用动态网页设计技术与数据库管理技术相结合,来实现用户登陆、用户验证、通讯 录,日程安排,工作日志,短消息,公告管理,会议管理等功能。 其中网站的数据库的建立是非常重要的。要使系统运行畅通必须要建立一个完善 的支持整个系统运行的数据库。它是保证电子文件正常流转及系统管理功实现的基础。 1.2.2用户身份验证模块概述 安徽新华学院办公自动化系统功能的开发与设计,是完全针对安徽新华学院内部 进行办公管理以及为各
17、部门员工提供便捷的电子化交互平台搭建的。用户身份验证模 块是安徽新华学院办公信息管理系统重要组成部分之一,他主要功能是在系统用户进 入系统时的身份验证以及在不同页面浏览时的身份验证,以防止新华学院的重要资料 的泄露。 1.2.3 系统技术要求及可行性 可行性是系统开发的一项关键步骤,它是通过对整个系统的需求,技术及开发方 法,以及开发人员,所需资金的综合考虑以评估对于该系统的开发是否符合实际。可 行性分析包括:组织和管理上的可行性,技术可行性,经济可行性。 安徽新华学院的办公自动化系统的开发采用了先进成熟并且符合实际应用的开发 方法,广泛应用于网站开发的网页开发工具,动态网页开发技术 JSP,
18、MVC 三成架构, 功能强大的数据库管理工具 MySQL5.1,可以开发出较为完善的网站系统。安徽新华学 院的办公自动化系统主要软件可以从学校的校园网下载,硬件方面主要是计算机,我 们的实际情况可以满足开发任务,所需资料书籍可以到图书馆翻阅或者个人购买,因 此整个系统的所需投资符合我们的支付状况,经济可行性良好。 3 应解决的主要问题及技术要求 1) 收集系统开发所使用的足够的信息。 2) 按实际应用的可行性划分模块,确定模块功能,根据 UML 建 usercase12。 3) 建立完善的数据库支持环境,建立 PDM。 4) 使用 JAVA 语言编程实现与数据库之间的各项操作,并编写高性能的
19、Action。 5) 各模块功能的协调及信息的沟通,耦合度的降低。 1.3论文的组织结构 综上所述,本文围绕办公自动化系统的规划和用户身份验证模块以及员工信息管 理模块的设计与实现展开:第一章为绪论,介绍办会自动化系统的背景,论文的研究 内容及系统的可行性分析。第二章描述了整个系统及用户身份验证模块员工信息管理 模块的开发工具。第三章说明了系统需求分析;第四章说明了系统的详细设计。第五 章为系统的开发实现。第六章为系统开发总结。文章内容充实,图文并茂。 4 第 2 章 安徽新华学院办公信息管理系统需求分析 2.1 系统概述 2.1.1 设计目标 企业办公网络服务是企业管理信息系统的一部分,而正
20、因为这种网路服务,才大 大提高企业信息的沟通,通信的更加便利。这种模式已经逐渐替代到过去的工作模式 以及工作方式。 本系统实现了员工信息的发布和共享,员工交流信息的发布与共享。 2.1.2 系统特点 1)B/S 新华学院办公管理系统是采用 B/S(BROWSER/SERVER)结构,实现整个企业的信息 化管理。这种系统的优势在于系统简单,功能强大,扩展能力良好以及跨地域操作性 能。B/S 模式通过 Internet 进行通信,可以不受地域的限制,但缺点是不能进行联 机事务处理,并且在大量数据处理的过程中,速度较慢。对于“安徽新华学院 OA 系 统” ,目标在于实现企业的信息资源的共享,同时实现
21、不同用户的权限控制。由于系 统数据收集的实时性要求并不高,因此采用 B/S 结构比较合理。 实际上 B/S 体系结构是把二层 C/S 结构的事务处理逻辑模块从客户机的任务中分 离出来,由 Web 服务器单独组成一层来负担其任务,这样客户机的压力减轻了,把负 荷分配给了 Web 服务器。这种三层体系结构(如图 2.1) 。 图 2.1 B/S 三层体系结构图 2)MVC MVC 应用程序结构被应用本信息管理系统,主要因为它可以用来分析分布式应用 程序的特征。这种抽象结构能有利于将应用程序分割成若干逻辑部件,是程序设计变 得更加容易。MVC 结构提供了一种按功能对各种对象的分割方法,其目的是为了将
22、各 种象形化用户交互模型中而设计出来。同时,这三种方式,模板是用来作为对现实世 5 界中一个处理过程的软件近似,系统采用这种方式来建图的建模技术,当模型发生改 变是 就会用到视图,也是第二项方式,视图是用来组织模型的内容。视图负责维持 数据表现的一致性。视图同时将用户要告知给控制器。而控制器定义了应用程序的行 为,它负责对来自视图的用户要求进行解释,并把这些要求映射成相应的行为,本系 统表现层采用最为成熟的 MVC 框架 Struts4,业务逻辑层采用 Spring 降低耦合,数据 访问层采用 Hibernate 封装的数据访问接口.各层之间耦合度很低,有利于系统扩展 和维护。 2.2 系统运
23、行的环境 2.2.1 设备要求 选择系统硬件运行环境配置的时候应该考虑到系统的安全性、开放性、性能价格 比、可扩展性、能保证较高的工作效率等方面。 最终确定的硬件环境配置为: CPU:Intel P4 2.2; 内存:512MB DDR; 硬盘:80GB; 基本的输入、输出设备 2.2.2 支撑软件 系统软件平台的配置,软件是系统开发的灵魂,配备良好的软件开发工具在系统 开发中至关重要: 操作系统:Windows XP SP3; 数据库软件: MySQL5.1; 开发工具:MyEclipse6.0,PowerDesigner12.5 Java 环境:JDK6.0; 服务器:Apache Tom
24、cat 6.0.14。 2.3 系统的用例设计 2.3.1 系统用例图 在用例图中形象的显示整个系统的用例(如图 2.2): 6 图 2.2 系统用例图 2.3.2 用户身份验证子系统用例图 此图显示了用户身份验证子系统的用例(如图 2.3): 图 2.3 用户验证用例图 7 2.3.3 我的通讯录模块用例图 此图显示了员工信息管理子系统的用例(如图 2.4):包括新建联系人,修改, 删除,翻页。 图 2.4 通讯录用例图 2.3.4 日程安排用例图 此图显示了日程安排模块的用例(如图 2.5):新增日程安排,修改日程安排, 删除日程安排等。 图 2.5 日程安排用例图 2.3.5 工作日志用
25、例图 此图显示了工作日志模块的用例(如图 2.6):新增工作日志,修改工作日志, 删除工作日志等。 8 图 2.6 工作日志安排用例图 2.3.6 短消息管理用例图 此图显示了短消息模块的用例(如图 2.7):新增短消息,修改短消息,删除短 消息等。 图 2.7 消息管理用例图 2.3.7 公告管理用例图 此图显示了公告管理模块的用例(如图 2.8):新增公告,修改公告,删除公告 等。 9 图 2.8 公告管理用例图 2.3.8 会议管理用例图 只有管理员才有权限发布,修改,删除会议(如图 2.9) 。 图 2.9 会议管理用例图 10 第 3 章 系统设计 3.1 系统设计 新华学院办公信息
26、管理系统采用结构化与原型法结合方法。这种综合法的优点是 它兼顾了结构化开发方法开发过程控制性强的特点以及原型法开发周期短、见效快的 特点。 采用两者结合的形式进行系统的开发时,是采用了结构化生命周期法的设计 思想,即自顶向下,从总体到部分,合理划分系统的结构,设计数据库模型。在系统 的分析与初步设计上采用原型法做出原始模型,根据实际反应的情况,继续按结构化 生命周期法进行系统的详细设计及其实施与转换、系统维护与评价阶段的工作。合理 采用综合法,使开发过程更具灵活性,往往会取得更好的开发效果。 3.1.1 用户身份验证模块分析 1)业务流程分析: 在用户身份验证模块的总体流程分析中业务流程,是表
27、现个人办公流程的一个主 要图例,用户通过表单提供登陆信息,系统根据用户提供的信息对用户进 行查询鉴别,如果身份合法,则将用户导向系统主页。另外,从系统退出后也进入系 统登陆页面。此时,用户的身份信息都会被清空。 2)用户身份验证模块功能模块分析: 对于系统用户身份验证子系统,只需要一个功能模块。根据系统功能分析,需要 对用户所输入的用户名和密码进行匹配,同时纪录用户的登陆状态,以便在用户浏览 系统的其他页面时进行登陆状态的确认。 3.1.2 用户信息管理模块分析 系统用户通过登陆验证进入新华学院系统主页面,然后选择进入员工信息管理模 块主页面,用户可以通过选择不同的单选按钮,进入相应的用户管理
28、功能。管理员选 择进入系统管理员选项。用户选择相应查询后系统会自动进入操作菜单界面(如图 3.1) 。 11 图 3.1 OA 业务流程图 3.2设计技术与开发环境 3.2.1 设计技术 MyEclipse:主要开发工具。 MySQL5.1:开源,免费,方便的数据库管理软件。 JSP:(Java Server Pages)是目前十分流行的一种技术,主要运行于开发服务 端的脚本程序和动态生成系统的内容。它具有内容的生成和显示进行分离,采用标签 简化页面开发,一次编写,随处运行等很多优越之处。 12 JavaBeans:是一种 java 类,通过封装成为具有某种功能或者处理某个业务的对 象。它将多
29、次使用的功能代码编译成一个包(函数),在多个程序中都可以调用这个包, 而编写却只需一次,大大简化了整个程序的编写,提高了程序编写的安全性,并使程 序编写过程更为规范。 Struts:基于 Struts 1.X 版架构的 Struts 框架技术可以说是目前 Java 开源社区 中最经典的一个 Web MVC 框架,它定义了某个具体的应用体系结构,并清晰地描述了 构成该体系中的各个组成组件之间的依赖关系、职责分配和控制流程,并提高软件系 统的开发质量和软件系统的整体性能。 Spring:是一个解决了许多在 J2EE 开发中常见的问题的强大框架。 Spring 提供 了管理业务对象的一致方法并且鼓励
30、了注入对接口编程而不是对类编程的良好习惯。 Spring 的架构基础是基于使用 JavaBean 属性的 Inversion of Control 容器。然而, 这仅仅是完整图景中的一部分: Spring 的数据访问架构还集成了 Hibernate 和其他 O/R mapping 解决方案。Spring 还提供了唯一的事务管理抽象,它能够在各种底层事 务管理技术,例如 JTA 或者 JDBC 事务提供一个一致的编程模型。 Hibernate:是一个开放源代码的对象关系映射框架,它对 JDBC 进行了非常轻量 级的对象封装,使得 Java 程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hi
31、bernate 可以应用在任何使用 JDBC 的场合,既可以在 Java 的客户端程序实用,也 可以在 Servlet/JSP 的 Web 应用中使用,最具革命意义的是,Hibernate 可以在应用 EJB 的 J2EE 架构中取代 CMP,完成数据持久化的重任。 3.3系统数据库设计 数据库是模块建设中的关键部分,是办公自动化系统设计的核心,大量页面和服 务需要向数据库表写入信息,或更改、提取信息,用户信息等保存到数据库管理系统 中。数据库功能实现的好坏,直接决定了系统功能的实现程度,以及系统实际运行的 安全性。 办公信息管理系统是一个侧重于信息收集及管理的系统,在系统的开发及运行中, 数
32、据库系统占有重要的地位。合理的数据库设计在系统开发中是至关重要的,通过建 立完整的数据表、表与表之间完善的联系,可以存储完备的信息数据等,并方便对数 据库的访问和增、改、查等操作,继而支持并简化系统的整个使用流程、信息浏览功 能等,方便了用户的使用。 13 3.3.1 数据库结构设计 将需求分析得到的用户需求抽象为信息结构及概念模型的过程是概念结构设计。 为了描述数据库结构的概念模式,这里采用 E-R 图来描述数据库的实体关系。 3.3.2 数据库逻辑设计 逻辑结构设计的任务是把概念结构设计阶段设计好的 E-R 图转换成与选用的 DBMS 产品所支持的数据模型相符合的逻辑结构。 3.3.3 数
33、据库物理设计 为一个给定的逻辑数据模型选取一个最适合应用要求的物理结构的过程,就是数 据库的物理设计。使用数据库开发软件 PowerDesigner 建立如下结构的数据库表结 构。 1)用户信息表(如表 3-1) 。 表3-1 系统用户信息数据表 user id user password email admin int(10) varchar(50) varchar(50) varchar(50) varchar(50) 2)会议信息表(如表3-2) 。 表3-2 会议信息数据表 meeting ID sender starttime endtime address title conten
34、t int(10) varchar(50) varchar(20) varchar(20) varchar(100) varchar(100) text 3)公告信息表(如表 3-3) 。 表3-3 公告信息数据表 notice ID sender title content sendtime int(10) varchar(50) varchar(100) text datetime 14 4)日程安排表(如表3-4) 。 表3-4 日程安排数据表 schedule ID username year month day plan scheduleTime int(10) varchar(50
35、) int(4) int(2) int(2) text datetime 5)短消息表(如表 3-5) 。 表3-5 短消息数据表 sms ID username sender message sendtime isRead int(10) varchar(50) varchar(50) text datetime varchar(1) 6)工作日志表(如表3-6) 。 表3-6 工作日志数据表 worklog ID username year month day title description logtime int(10) varchar(50) int(4) int(2) int(2
36、) varchar(100) text datetime 15 第 4 章 系统实现 4.1登陆-功能设计描述(index.jsp) 整个新华学院办公信息管理系统的登录页面(如图 4.1) ,主要用于供用户 选择。 图 4.1 用户登陆选择页面 安徽新华学院 OA 系统登录界面(如图 4.2) 图 4.2 用户登陆页面 4.2系统主页面(index.jsp) 新华学院办公信息管理系统的主目录(如图 4.3) 。主目录上有 7 个主要链接。 分别指向内部办公管理系统的 7 个主要功能模块。 16 图 4.3 系统主页面 用户身份验证进行判断,如果用户通过了系统登录页面验证,那么在服务器 分配给这
37、个用户的会话对象的 ID 字段里,便不会为空。如若不然,则表明用户 没有通过登录,系统便将用户导向系统登录页面。用 SitMesh 插件,通过拦截器 模式,可以避免在每个页面检查用户名。关键代码如下 4.3新华学院员工 OA 系统 新华学院员工 OA 系统主要包括员工信息管理系统主页面(index.jsp) ,我的 通讯录界面(address.jsp),短消息管理页面(sms.jsp),会议管理页面(meet.jsp) , 公告管理页面(notice.jsp) ,工作日志页面(worklog.jsp)和日程安排界面 (schedule.jsp) 。所用到的数据库组件主要是系统用户信息表(use
38、r),通讯录信息 表(address) ,会议信息表(meeting) ,公告管理表(notice) ,日程安排表 (schedule) ,短消息管理表(sms) ,工作日志表(worklog) 。 17 4.3.1 通讯录模块主页面(address.jsp) 整个员工信息管理子系统的主页面(如图 4.4) ,我们可以通过选择不同的单 选按钮,进行相应的用户信息查询或管理功能。查询页面(如图 4.5) ,支持分页。 图 4.4 员工信息管理子系统主页面 18 图 4.5 查询结果页面 代码解释: 首先还是先进行身份鉴别,如果已经登录,将用户名放入 session 中,则可以 浏览此页面,否则重
39、新导向系统登录页面,然后进行数据源连接。关键代码如下: if (this.userService.isValid(username, password) HttpSession session = request.getSession(false); if (session != null) session.invalidate();/废弃该会话 session = request.getSession(true); session.setAttribute(“username“, username);/将用户名放入session中 return mapping.findForward(“su
40、ccess“); 可以对联系人进行修改,删除或者新增联系人等操作。如果编辑成功,则有 提示(如图 4.6、4.7) 。 19 图 4.6 修改前结果页面 图 4.7 修改后结果页面 4.3.2 日程安排模块 该模块主要是用户管理日程安排,主界面(如图 4.8) 。关键代码如下: String username = getUsername(request);/从session中得到用户名 PageForm pageForm = (PageForm)form; Pager pager = this.scheduleDao.findPagerByUsername(username, pageForm
41、.getPageNo(), pageForm.getPageSize(); request.setAttribute(“scheduleList“, pager.getResultList(); List scheduleList = pager.getResultList(); for (Iterator localIterator = scheduleList.iterator(); localIterator.hasNext(); ) Schedule s = (Schedule)localIterator.next(); request.setAttribute(“pager“, pa
42、ger);/将分页放入request范围中 setSession(request, “pager_schedule“, pageForm); ActionForward forward = mapping.findForward(“list“); return forward; 20 图 4.8 日程安排页面 4.3.3 工作日志模块 工作日志模块(如图 4.9)的功能有新增,修改,删除的操作如,关键代码如 下: String username = getUsername(request); PageForm pageForm = (PageForm)form; Pager pager = t
43、his.worklogDao.findPagerByUsername(username, pageForm.getPageNo(), pageForm.getPageSize();/得到分页信息 request.setAttribute(“worklogList“, pager.getResultList(); request.setAttribute(“pager“, pager);/将page放入request范围中 setSession(request, “pager_worklog“, pageForm); ActionForward forward = mapping.findFor
44、ward(“list“); return forward; 21 图 4.9 日程安排页面 4.3.4 短消息管理模块 可以对短消息进行操作,如删除,发送,分页显示,还可以对阅读过的短消息设置 为已读标志(如图 4.10) ,关键代码如下: String username = getUsername(request); PageForm pageForm = (PageForm)form; Pager pager = this.smsDao.findPagerByUsername(username, pageForm.getPageNo(), pageForm.getPageSize(); r
45、equest.setAttribute(“smsList“, pager.getResultList(); request.setAttribute(“pager“, pager);/将page放入request范围中 setSession(request, “pager_sms“, pageForm); ActionForward forward = mapping.findForward(“list“);/页面转向 return forward; 22 图 4.10 日程安排页面 4.3.5 公告管理模块 公告管理模块(如图 4.11)的功能包括:新增、修改、删除公告,关键代码 如下: P
46、ageForm pageForm = (PageForm)form; Pager pager = this.noticeDao.findPager(pageForm.getPageNo(), pageForm.getPageSize(); request.setAttribute(“noticeList“, pager.getResultList(); request.setAttribute(“pager“, pager); setSession(request, “pager_notice“, pageForm); ActionForward forward = mapping.findF
47、orward(“list“); return forward; 23 图 4.11 公告管理页面 如对其他公告人填写的公告进行修改,则出现错误(如图 4.12) ,代码如下: ActionMessages messages = new ActionMessages(); String id = request.getParameter(“id“); String username = getUsername(request); if (id = null) messages.add(“org.apache.struts.action.GLOBAL_MESSAGE“, new ActionMes
48、sage(“notice.message.edit.notexist“);/增加错误消息 saveErrors(request, messages);/保存错误消息 return mapping.findForward(“list“); if (!(username.equals(sender) messages.add(“org.apache.struts.action.GLOBAL_MESSAGE“, new ActionMessage(“notice.message.edit.security“); saveErrors(request, messages); PageForm page
49、Form = (PageForm)getSession(request, “pager_notice“); Pager pager = this.noticeDao.findPager(pageForm.getPageNo(), pageForm.getPageSize(); request.setAttribute(“noticeList“, pager.getResultList(); request.setAttribute(“pager“, pager);/将page放入request范围中 return mapping.findForward(“list“); 24 图 4.12 修改公告页面 4.3.6 会议管理模块 以普通用户 “张明警”身份登录(如图 4.13),操作会议选项时。判断是否是 管理员: private boolean IsAdmin(HttpServletRequest request) boolean flag=false; String username = getUsername(request); User user=userDao.getUse