1、 本科毕业论文 (科研训练、毕业设计 ) 题 目:基于 spring、 struts 组织结构与通用树形下拉组件的开发 姓 名: 学 院:软件学院 系: 专 业:软件工程 年 级: 学 号: 指导教师(校内): 职称: 指导教师(校外): 职称: 年 月厦门大学软件学院本科毕业论文 I 摘 要 Spring、 Struts 框架是目前非常 实用 的两个 J2EE 框架, 电信障碍管理系统就是基于这两个框架开发, 本文 主要 涉及到 的 是该系统的 组 织结构模型 、 树形组件 的设计和开发 。 设计组织结构的目的是为了有效地 、 更合理地把组织成员组织起来, 更好地完成工作 。 电信 障碍管理
2、系统的 组织结构包括行政组织结构和业务组织结构,其中 行政组织结构指 电信 公司的部门编制,与实际中存在的部门相吻合 ; 而 业务组织结构指业务部门在使用电信障碍系统时,为了提高工作效率根据部门职能类型规划出的虚拟组织,该组织在实际中可能不存在, 也可能很快就会消失。业务组织模块的要素包括员工、权限、角色、组织部门、地区以及它们彼此的关联 。 树形 组件 广泛地用来显示层次型数据 ,它 具有独特的扩展和折叠分支的能 力,能够以较小的空间显示出大量的信息,一目了然地传达出数据之间的层次关系 。本文通过开发树形组件,并应用在障碍管理系统的多个模块中,使系统页面更加简洁,操作更加方便 。 关键词 :
3、 Spring 框架 Struts 框架 J2EE 开发 组织结构 树形组件 厦门大学软件学院本科毕业论文 II Abstract Spring and Struts Framework is very practical J2EE frameworks, which are barriers of telecommunications management system is based on. My paper is related to the design and development of organizational structure and the tree componen
4、t. Organizational structure is designed to organize the member and complete the work efficiently. The organizational structure of that system include administrative organizational structure and business organizational structure.The administrative structure refers to the actual departments of telecom
5、munications establishment, while the departments of business organizational structure are fictitious and may be lost soon. The business organizational structure can improve the efficiency of the functions of the actual departments, which include staff, powers, role, the organization departments, are
6、a and their mutual relationship. The tree component is used to show hierarchical data widely. The folding and extensible make it has the ability to show a lot of information in the smaller space clearly. Through the use of tree components, the management system becomes more concise and more convenie
7、nt. Key words: Spring Struts J2EE Organizational Structure Tree Components 厦门大学软件学院本科毕业论文 III 目 录 第 1章 引言 . 1 1.1 介绍 Struts 相关知识 . 1 1.2 介绍 Spring 相关知识 . 1 1.3 组织结构模型 . 2 1.4 树形下拉组件概述 . 2 第 2章 系统总体设计 . 3 2.1 系统 web 框架 . 3 2.2 组织结构模型 . 4 2.2.1 概述 . 4 2.2.2 环境说明 . 5 2.2.3 子模块 . 5 2.2.4 主要的实体类 . 5 2.3
8、树形下拉控件的总体设计 . 6 2.3.1 概述 . 6 2.3.2 环境说明 . 6 2.3.3 子模块 . 6 第 3章 系统的详细设计 . 7 3.1 组织结构模型 . 7 3.1.1 数据库设计 . 7 3.1.2 其它类的建立和说明 . 9 3.1.3 action 类开发(以组织设置模块为例) . 10 3.1.4 配置及相关技术 . 11 3.1.5 系统应用事务管理 . 15 3.2 树形下拉控件的详细设计 . 16 3.2.1 JavaScript 开发: . 16 3.2.2 与系统交互的开发 . 17 3.2.3 应用树形组件 . 18 第 4章 系统的运行结果 . 20
9、 4.1 组织结构模型运行 . 20 4.1.1 组织部门设置 . 20 4.1.2 职能类型与角色设置 . 20 4.1.3 员工设置 . 23 4.2 树形下拉组件应用的运行 . 24 第 5章 总结 . 26 致谢 . 27 参考文献 . 28 附 录 . 29 厦门大学软件学院本科毕业论文 IV Contents Chapter 1 Introduction . 1 1.1 Knowledge of Struts . 1 1.2 Knowledge of Spring . 1 1.3 Structure Model . 2 1.4 Tree Drop-down Components.
10、2 Chapter 2 System Design . 3 2.1 System Web Framework . 3 2.2 Structure Model . 4 2.2.1 Summarize . 4 2.2.2 Euthenics . 5 2.2.3 Subschema . 5 2.2.4 Categories of Entities. 5 2.3 Tree Drop-down Components. 6 2.3.1 Summarize . 6 2.3.2 Euthenics . 6 2.3.3 Subschema . 6 Chapter 3 Particular Design . 7
11、3.1 Structure Model . 7 3.1.1 Database Design . 7 3.1.2 Other Class . 9 3.1.3 Action Class.10 3.1.4 Configure and Technique . 11 3.1.5 Management .15 3.2 Tree Drop-down Components.16 3.2.1 JavaScript development .16 3.2.2 development of interactive systems .17 3.2.3 The Use of Components .18 Chapter
12、 4 The running result .20 4.1 Structure Model .20 4.1.1 set up of Organization .20 4.1.2 set up of Role and Fuctions .20 4.1.3 set up of Staff .23 4.2 Tree Drop-down Components.24 Chapter 5 Summary .26 Acknowledgement .27 References .28 Appendix .29 厦门大学软件学院本科毕业论文 1 第 1章 引言 1.1 介绍 Struts 相关知识 Struts
13、 是一个为开发基于模型视图控制器 (MVC)模式的应用架构的开源框架,是利用 Java Servlet 和 JSP 构建 Web 应用的一项非常有用的技术。由于 Struts 能充分满足应用开发的需求,简单易用,敏捷迅速,因而吸引了众多的开发人员的关注。 事件是指从客户端页面(浏览器)由用户操作触发的事件, Struts 使用 Action 来接受浏 览器表单提交的事件,每个继承 Action 的子类都必须实现一个方法 execute。在 struts中,实际是一个表单 Form 对应一个 Action 类。 Struts 把 Servlet、 JSP、自定义标签和信息资源 (message
14、resources)整合到一个统一的框架中,开发人员利用其进行开发时不用再自己编码实现全套 MVC 模式,极大的节省了时间,所以说 Struts 是一个非常不错的应用框架。 1.2 介绍 Spring 相关知识 Spring 是一个开源框架,是为了解决企业应用程序开发复杂性而创建的。该框架的主要优势是其良好的 设计和分层架构, 这意味着你能选择仅仅使用它任何一个独立的部分,而它的架构又是内部一致 ,软件开发人员可以只选择 Spring 提供的某项技术,例如 AOP,而不需要使用它提供的其他技术,也 可能选择仅仅使用 Spring 来简单化 JDBC 的使用,或用来管理所有的业务对象 。 Spr
15、ing 还提供了和其他开源软件的无缝结合,为 J2EE 应用程序开发提供集成的框架 。它的设计从一开始就是要帮助你编写易于测试的代码 , 是使用测试驱动开发的工程的理想框架 , 不会给工程添加对其他的框架依赖 。 Spring 的 核 心 是 IoC ( Inversion of Control 反 向 控 制 ) , 又称 依 赖 注 入DI(Dependency Injection),是面向对象领域新兴的编程思想,也是 Spring 的精髓所在。简单地说; IoC 就是指程序之间的关系由容器来控制;而不是传统实现中由程序代码直接操控。这也就是所谓“控制反转”的概念所在:控制权由应用代码转到
16、外部容器,控制权的转移,也就是所谓的反转。 IoC 将控制创建的职责搬进了框架中;并把它从应用代码脱离开厦门大学软件学院本科毕业论文 2 来。当使用 Spring 的 IoC 容器时只需指出组件需要的对象,在运行时 Spring 的 IoC 容器会根据 XML 配置数据提供给它 。 1.3 组织结构模型 组织具有整体性,任何组织都是由许多要素、部分、成员,按照一定的联结形式排列组合而成的。组织结构是反映组织成员之间的分工协作关系。设计组织结构的目的是为了更有效地和更合理地把组织成员组织起来,即把一个个组织成员为组织贡献的力量有效地形成组织的合力,让他们有可能为实现组织的目标而协同努力。每个社会
17、组织内部都有一套自身的组织结构,它们既是组织存在的形式,本身还是组织内部分工与合作关系的集中体现。所有组织成员都将在此结构中充当一定的角色,承接一定的工作,否则就没有资格待在组织之中。 本文所开发的 组织结构应用于福建省电信障碍管理系统,电信部门中的 组织结构包括行政组织结构和业务组织结构,其中 行政组织结构指公司的部门编制,与实际中存在的部门相吻合,由于这些部门已基本完善, 因此 在系统中主要操作是:部门数据导入、员工绑定等,无法对其进行增加、删除、修改操作;业务组织结构指业务部门在使用电信障碍系统时,为了提高工作效率根据部门职能类型规划出的虚拟组织,该组织在实际中可能不存在,也可能存在。
18、开发中 主要涉及的是业务组织模型的建立及相关操作。 1.4 树形下拉组件概述 树形下拉控件 是一种人们熟悉的用户界面控件,广泛地用来 显示层次型数据 ,它 具有独特的扩展和折叠分支的能力,能够以较小的空间显示出大量的信息,一目了然地传达出数据之间的层次关系 , 其直观的表现形式、方便的操作方式 , 确实为界面增色不少 。凡是熟悉图形用户界面的用户,都能够自如地运用 该控件 。 厦门大学软件学院本科毕业论文 3 第 2章 系统总体设计 2.1 系统 web 框架 Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块。使用 Spring 可插入的 MVC 架构,可以选择使用内置的
19、Spring Web 框架还是 Struts 这样的 Web 框架。通过策略接口, Spring 框架是高度可配置的 ,而且包含多种视图技术,例如 JavaServer Pages( JSP)技术、 Velocity、 Tiles、 iText 和 POI。 Spring MVC 框架并不知道使用的视图,所以不会强迫您只使用 JSP 技术。 Spring MVC 分离了控制器、模型对象、分派器以及处理程序对象的角色,这种分离让它们更容易进行定制 ,如图 2-1 所示 。 Spring 的 Web MVC 框架是围绕 DispatcherServlet 设计的,它把请求分派给处理程序,同时带有可
20、配置的处理程序映射、视图解析、本地语言、主题解析以 及上载文件支持。默认的处 理 程 序 是 非 常 简 单 的 Controller 接 口 , 只 有 一 个 方法 ModelAndView handleRequest(request, response)。 Spring 提供了一个控制器层次结构,可以派生子类。如果应用程序需要处理用户输入表单,那么可以继承 AbstractFormController。如果需要把多页输入处理到一个表单,那么可以继承 AbstractWizardFormController。 Spring 框架的特点: ( 1) 清晰的角色划分, Spring 在 Mod
21、el、 View 和 Controller 方面提供了一个非常清晰的划分,这 3 个方面真正是各司其职,各负其责。 ( 2) 灵活的配置功能,因为 Spring 的核心 是 IoC,同样在实现 MVC 上,也可以把各种类当作 Bean 来通过 XML 进行配置。 ( 3) 提供大量的控制器类和实现类,这样开发人员可以使用 Spring 提供的控制器实现类,也可以自己实现控制器接口。 ( 4) Spring MVC 是真正的 View 层的实现无关的,它不会强制开发人员使用 JSP,开发人员可以使用 Velocity、 Xslt 等技术。 ( 5) 国际化支持,前面讲过 Spring 的 App
22、licationContext 提供了对国际化的支持,在这里可以很方便地使用。 ( 6) 面向接口编程,其实这不仅是 Spring MVC 的特点,就整个 Spring 来看,这个厦门大学软件学院本科毕业论文 4 特点都很明显的,因为它使开发人员对程序易于进行测试,并且很方便地进行管理。 ( 7) Spring 提供了 Web 应用开发地一整套流程,而不仅仅是 MVC,并且它们之间可以很方便地结合在一起。 图 2-1 web 框架 2.2 组织结构模型 2.2.1 概述 组织结构是障碍管理系统的一个子模块,主要涉及到员工、组织、权限的相互配置,在厦门大学软件学院本科毕业论文 5 整个设计、开发
23、中涉中应用到 Spring、 Struts 框架,以及 Hibernate 技术。 2.2.2 环境说明 1、 使用环境 : Windows 操作系统。 此操作系统界面友好,且有较成熟的消息传递机制可供利用。 2、 开发环境 : 开发软件: eclipse3.1.2+tomcat5.0.28 jdk1.4 数据库开发: Oracle PL/SQL 工具。 此编译器提供了大量的控件,可用来实现本软件的很多功能,同时可以应用大量插件。 2.2.3 子模块 整个组织结构模块分解成 以下 子模块: 1、 组织部门设置:主要用于业务组织部门的树形展示、增加、修改、删除操作,以及对部门进行职能类型配置。
24、2、角色设置 :主要用于角色列表展示、增加、修改、删除操作,以及对角色进行人员配置、已有角色配置、权限配置。 3、职能类型设置:主要用于职能类型列表展示、增加、修改、删除操作,以及对职能类型进行组织部门配置。 4、用户设置:只要用于组织部门的用户列表展示、用户查询、详细信息展示、修改,以及对用户进行的角色、权限、地区、业务、职能类型配置。 2.2.4 主要的实体类 组织结构模块这要设计以下实体类: 1、员工:障碍系统的使用及相关人员。 2、权限: 权限允许用户访问属于其它用户的对象或执行 某个模块 。 这些权限可以授予给用户 、 角色 。 3、 角色: 对管理权限而言,角色是一个工具,权限能够被授予给一个角色,角色也能被授予给另一个角色或用户。用户可以通过角色继承权限,除了管理权限外角色服务没