办公自动化系统文档管理子系统的设计与实现本科论文(编辑修改稿)内容摘要:

该对象由 ActionServlet转发给 Action, Action根据ActionForm里面的请求参数处理用户的请求。 JavaBean封装了底层业务逻辑。 Struts对应的 View部分大多采用 JSP实现,通过使用标签库可以减少脚本的使用。 Struts支持自定义标签库,可以实现与 Model的有效交互,并增加了实现功能。 Struts对应的 Controller部分主要由两部分组成:系统核心控制器和业务逻辑控制器。 其中系统核心控制器对应的是 ActionServlet,负责拦截所有的 HTTP 请求,然后根据用户请求决定是否要转给业务逻辑控制器。 业务逻辑控制器负责处理用户请求,通过调用 Model来处理,本身并不具备处理能力。 Struts框架的工作流程: 1 读 取 配置 (初始化 ModuleConfig对象 ) Struts框架总控制器 (ActionServlet)是一个 Servlet,在 置 成自动启动的 Servlet。 读取配置文件 ()的配置信息,为不同的 Struts模块初始化相应的 ModuleConfig 对名: ActionConfig, ControlConfig, FormBeanConfig, MessageResourcesConfig 2 发送请求 请求上传 WEB服务器(处理 .do的请求) 3 填充 FORM(实例化,复位,填充数据,校验,保存 ) (*.do请求 )从 ActionConfig中找出对应该请求的 Action子类,如没有对应的Action,控制器直接转发给 JSP或静态页面。 如有对应的 Action且 这个 Action有一个相应的 ActionForm. 南京大学软件学院本科毕业论文 8 ActionForm被实例化并用 请求的数据填充其属性,并且保存在ServletContext中 (request或 session中 ), 这样它们就可以被其它 Action对象或者 JSP调用。 4 派发请求 控制器根据配置信息 ActionConfig将请求派发到具体的 Action,相应的FormBean一并传给这个 Action的 execute()方法 . 5 处理业务 Action一般只包含一个 execute方法 ,它负责执行相应的业务逻辑 (调用其它业务模块 ).完毕返回一个 ActionForward 对象 , 控制器通过该 ActionForward对象来进行转发工作 6 返回响应 Action根据业务处理的不同结果返回一个目标响应对象给总控制器 ,该目标响应对象对应一个具体的 JSP页面或另一 Action. 7 查找响应 (可以是一个 Action) 8 响应用户 Spring 框架 Spring也是基于 MVC 结构的框架。 Spring Framework 是一个开源的 Java/Java EE全功能栈( fullstack)的应用程序框架,以 Apache许可证形 式发布,也有 .NET平台上的移植版本。 Spring Framework 提供了一个简易的开发方式,这种开发方式,将避免那些可能致使底层代码变得繁杂混乱的大量的属性文件和帮助类。 组成 Spring 框架的每个模块(或组件)都可以单独存在,或者与其他一个或多个模块联合实现。 每个模块的功能如下: 核心容器:核心容器提供 Spring 框架的基本功能。 核心容器的主要组件是 BeanFactory,它是工厂模式的实现。 BeanFactory 使用控制反转 ( IOC)模式将应用程序的配置和依赖性规范与实际的应用程序代 码分开。 南京大学软件学院本科毕业论文 9 Spring上下文 : Spring 上下文是一个配置文件,向 Spring 框架提供上下文信息。 Spring 上下文包括企业服务,例如 JNDI、 EJB、电子邮件、国际化、校验和调度功能。 Spring AOP: 通过配置管理特性, Spring AOP 模块直接将面向方面的编程功能集成到了 Spring框架中。 所以,可以很容易地使 Spring框架管理的任何对象支持 AOP。 Spring AOP 模块为基于 Spring的应用程序中的对象提供了事务管理服务。 通过使用 Spring AOP,不用依赖 EJB 组 件 , 就可以将声明性事务管理集成到应用程序中。 Spring DAO: JDBC DAO 抽象层提供了有意义的异常层次结构,可用该结构来管理异常处理和不同数据库供应商抛出的错误消息。 异常层次结构简化了错误处理,并且极大地降低了需要编写的异常代码数量(例如打开和关闭连接)。 Spring DAO 的面向 JDBC 的异常遵从通用的 DAO 异常层次结构。 Spring ORM: Spring 框架插入了若干个 ORM框架 , 从而提供 了 ORM的对象关系工具,其中包括 JDO、 Hibernate和 iBatis SQL Map。 所有这些 都遵从 Spring 的通用事务和 DAO 异常层次结构。 Spring Web模块: Web上下文模块建立在应用程序上下文模块之上,为基于 Web 的应用程序提供了上下文。 所以, Spring框架支持与 Jakarta Struts的集成。 Web模块还简化了处理多部分请求以及将请求参数绑定到域对象的工作。 Spring MVC 框架: MVC 框架是一个全功能的构建 Web应用程序的 MVC 实现。 通过策略接口, MVC 框架变成为高度可配置的, MVC 容纳了大量视图技术,其中包括 JSP、 Velocity、 Tiles、 iText和 POI。 Spring 框架的功能可以用在任何 Java EE服务器中,大多数功能也适用于不受管理的环境。 Spring 的核心要点是:支持不绑定到特定 Java EE服务的可重用业务和数据访问对象。 毫无疑问,这样的对象可以在不同 Java EE环境( Web或EJB)、独立应用程序、测试环境之间重用。 [8] Hibernate 框架 Hibernate是一个面向 Java环境的对象 /关系型数据库映射工具。 对象 /关系型数据库映射 object/relational mapping, ORM)这个术语表示一种 技术,用来把对南京大学软件学院本科毕业论文 10 象模型表示的对象映射到基于 SQL的关系模型数据结构中去。 Hibernate不仅管理 Java 类到数据库表的映射(包括 Java数据类型到 SQL数据类型的映射 ) ,还提供数据查询和获取数据的方法,可以大幅度减少开发时对人工使用 SQL和JDBC 处理数据的时间。 Hibernate的核心接口一共有五个,分别为: Session、 SessionFactory、Transaction、 Query和 Configuration。 这 5个核心接口在任何开发中都会用到。 通过这些接口 ,不仅可以对持久化对象进行存取,还能够 进行事务控制。 Session接口 负责执行很多常见的 SQL语句。 这里的 Session指的是HttpSession。 SessionFactory接口负责初始化 Hibernate,并负责创建 Session对象 ,使用了常用的工厂模式。 Configuration接口 负责配置并启动 Hibernate,创建 SessionFactory对象。 在Hibernate的启动的过程中, Configuration类的实例首先定位映射文档位置、读取配置,然后创建 SessionFactory对象。 Transaction接口负责事 务相关的操作。 Query和 Criteria接口负责执行各种数据库查询。 Hibernate基础代码包括 POJO 和 Hibernate映射文件。 POJO 在 Hibernate语义中理解为数据库表所对应的 Domain Object,可以简单地理解为一个不包含逻辑代码的值对象 (VO)。 Hibernate从本质上来讲是一种“对象 关系型数据映射”。 POJO 在这里体现的就是 ORM(对象关系映射 )的 Object层的语义,而映射文件则是将对象与关系型数据相关联的纽带,在 Hibernate中,映射文件通常以“ .”作为后缀。 [9] Hibernate的优点: 对象 /关系数据映射 (ORM),使用时只需要操纵对象,使开发对象化,抛弃了以数据库为中心的思想,完全的面向对象思想。 透明持久化 (persistent), 带有持久化状态的、具有业务功能的单线程对象,此对象生存期很短。 这些对象可能是普通的 JavaBeans/POJO,这个对象没有实现南京大学软件学院本科毕业论文 11 第三方框架或者接口,唯一特殊的是他们正与(仅仅一个) Session相关联。 一旦这个 Session被关闭,这些对象就会脱离持久化状态,这样就可被应用程序的任何层自由使用。 事务 Transaction, 应用程序用来指定原子操作单元范围的对象,它是单线程的,生命周期很短。 它通过抽象将应用从底层具体的 JDBC、 JTA以及 CORBA事务隔离开。 某些情况下,一个 Session之内可能包含多个 Transaction对象。 尽管是否使用该对象是可选的,但无论是使用底层的 API还是使用 Transaction对象,事务边界的开启与关闭是必不可少的。 此外, Hibernate是轻量级框架 ,移植性很好,并且提供缓存机制, HQL编程也非常简单。 AJAX技术 AJAX AJAX是一种用于创建更 好更快以及交互性更强的 Web应用程序的技术。 通过 JavaScript的 XMLHttpRequest对象来直接与服务器进行通信 ,在与 Web服务器交换数据时页面不用重载。 AJAX可以使因特网应用程序更小、更快、更友好。 AJAX包含的主要技术有 XHTML、 CSS、 DOM、 XML与 XSLT、 XMLHttpRequest对象、基本 Javascript和服务器端技术。 XMLHttpRequest对象是 AJAX技术的核心。 XMLHttpRequest对象在大部分浏览器上已经实现而且拥有一个简单的接口允许数据从客户端传递 到服务端,但并不会打断用户当前的操作。 使用 XMLHttpRequest传送的数据可以是任何格式,虽然从名字上建议是 XML格式的数据。 开发人员应该已经熟悉了许多其他 XML相关的技术。 XPath可以访问 XML文档中的数据,但理解 XML DOM是必须的。 类似的, XSLT是最简单而快速的从 XML数据生成 HTML或 XML的方式。 许多开发人员已经熟悉 XPath和 XSLT,因此 AJAX选择 XML作为数据交换格式是有意义的。 XSLT可以被用在客户端和服务端,它能够减少大量的用 JavaScript编写的应用逻辑。 南京大学软件学院本科毕业论文 12 ExtJS框架 Ajax的主流框架之一就是 ExtJS。 ExtJS最开始基于 YUI 技术,由开发人员JackSlocum开发,通过参考 JavaSwing等机制来组织可视化组件。 ExtJS可以用来开发 RIA也即富客户端的 AJAX应用,是一个用 Javascript写的,主要用于创建前端用户界面,是一个与后台技术无关的前端 AJAX框架。 ExtJs初期仅是对Yahoo! UI的对话框扩展,后来逐渐有了自己的特色,深受网友的喜爱。 发展至今 , Ext除 YUI 外还支持 Jquery、 Prototype等的多种 JS 底层库,让大 家自由地选择。 该框架完全基于纯 HTML/CSS+JS 技术,提供丰富的跨浏览器 UI 组件,灵活采用 JSON/XML数据源开发,使得服务端表示层的负荷真正减轻,从而达到客户端的 MVC 应用。 本项目使用了 ExtJS的日历组件、树形结构组件等等,使得客户端 更加丰富、更加友好。 [10] 南京大学软件学院本科毕业论文 13 第三章 办公自动化系统 项目概述 系统 概述 本项目完成的产品 完全基于浏览器 操作模式,安装简单( B/S架构,不必安装或者只要安装很小的插件),操作方便,具有良好的系统扩充能力的办公自动化系统,提供: 1) 文档管理平台 通过本平台,实现 文档管理、回收站管理、文件搜索管理、日志管理等功能。 各部门在服务器有自己的共享文件夹,在浏览器中模拟实现操作系统中的文件夹树形结构,可以在文件夹下创建某个文档,可以查询、修改、删除文档;实现回收站管理,可还原、彻底删除文件;实现文件搜索功能;记录文档操作的日志。 2) 消息管理平台 通过本平台,实现消息管理、邮箱管理、信息提示等功能。 用户可以对自己未发布的消息进行增删改查;可以指定消息接收者、消息的有效时间等;管理员可以查询所有已发布的消息;用户可以进行邮箱管理,主要有收件箱、发件箱、草稿箱、废件箱的管理;用 户登录系统后,在首页显示新消息,可以点击链接直接查看。 3) 考勤管理平台 通过本平台,实现签到 /签退管理、考勤历史查询、考勤统计、工作日管理、工作时间管理等功能。 用户如果是当天第一次操作,只能签到,当天第一次以后操作,只可以签退,记录签卡备注、签卡时间;管理员可以通过平台按照时间段、部门、姓名等信息查询考勤信息;管理员可以通过平台统计一段时间内指定部门所有员工的迟到、早退、旷工次数等,可以导出 Excel表格;管理。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。