基于ssh框架的公司考勤管理系统的设计与实现毕业论文(编辑修改稿)内容摘要:

数的数据库连接模块处都提供了统一的接口以便访问和操作。 也就是说, JDBC 通过统一的程序访问模块用一个连接即可以完成访问 MySQL 数据库,也可以访问 ORACLE 数据库,只需要修改不同数据库类型的设置即可。 这样方便了连接不同数据库的烦恼。 JDBC 是一个数据库与程序的接口程序,它提供了如下四种类型的驱动程序: JDBC— ODBC 桥,通过原有的 ODBC 连接数据库以后, JDBC 再从 ODBC 处提供对数据库的访问; 平顶山工业职业技术学院毕业设计说明书 第 5 页 本地 API 准 Java 驱动程序,该类驱动程序是使用 Java 语言直接使用本地 IP 与数据源系统进行通信,从数据源系统中调用执行数据库 API 函数; 网络协议准 Java 驱动程序,该类型驱动程序将 Java 数据库连接调用转换成 DBMS 的独立网络协议,然后再由服务器转换为 DBMS 协议; 本地协议准 Java 驱动程序,该类型驱动程序是一个本地的协议,是采用 Java 语言开发的协议,允许 Java 客户程序直接调用数据库服务器进行操作。 SSH 技术 SSH 技术的概述 “ SSH 组合框架”是 Struts + Spring + Hibernate 的缩写,“ SSH 组合框架”体现的是“强强联手、各司其职、协调互补”的团队协作精神,为大型 Java Web 应用程序的开发提供了强有力的解决方案。 Struts 最原始的 Java Web 程序全部使用 JSP 实现, JSP 页面既包含 HTML 标签,又包含 Java 业务逻辑代码,使得整个 JSP 页面臃肿而难于维护。 SUN 公司为规范 Java Web 应用的开发,相继推出 Model 1 和 Model 2 模式。 在 Model 1 模式中引入 JavaBean 技术,使用 JavaBean 封装业务逻辑代码,使业务 逻辑代码与 JSP页面进行有效的分离,对于流程控制 JavaBean 却无能为力,直到 Model 2 模式引入 Servlet 技术才真正实现视图层、模型层和控制层的彻底分离,从此, Java Web 应用开发进入了一个规范化的时代。 Struts 2 作为 Model 2 模式的经典实现,具有组件的模块化、灵活性和重用性的优点,同时简化了基于 MVC 的 Java Web 应用程序的开发。 采用 Struts 2 通过核心控制器 FilterDispatcher 与拦截器Interceptor 更好地遵循 MV C 模式来实现了后台 控制维护、前台表现和业务逻辑处理的 Model 2 架构。 Spring 由于应用服务器厂商对各种技术的支持并没有真正统一,导致 J2EE 的应用没有真正实现平台无关性部署及开发的效率底下。 Spring 作为开源的中间件,独立于各种应用服务器,甚至无须应用服务器的支持,也能提供应用服务器的功能,如声明式事务等。 Spring 致力于 Java EE 应用的各层的解决方案,而不是仅仅专注于某一层的方案。 可以说 Spring 是公司应用开发的“一站式”选择,并贯穿表现层、业务层及持久层。 然而, Spring 并不想取 代已有的框架,而与它们无缝地整合。 Spring 平顶山工业职业技术学院毕业设计说明书 第 6 页 使用基本的 JavaBean 来完成以前只可能由 EJB 完成的事情,其核心技术是控制反转 IOC 与 AOP 代理机制。 然而, Spring 的用途不仅限于服务器端的开发,从简单性、可测试性和松耦合的角度而言,任何 Java 应用都可以从 Spring 中受益。 Hibernate 在当今多层体系结构的软件开发中,使用 JDBC 很难将持久层进行分离,负责业务逻辑代码编写的程序员必须密切关注数据库各表的结构关系,以确保其 SQL 语句工作的正常。 如果引入 Hibernate 这样的持久层中间件的话,业务逻辑层的开发人员整天面对的就是一个又一个的对象而不必关心数据表,既有利于团队分工协作,又提高了软件产品的可移植性。 Hibernate 可以应用在任何使用 JDBC 的场合,既可以在 Java Application 中使用,也可以在 Servlet/JSP 的 Web 应用中使用。 整合 Struts 2 标签库处理视图层, Struts 2 的核心控制器与业务控制充当控制层, Hibernate 与各业务逻辑组件处理业务层事务,最后由 Spring 统管 Bean 资源,对整个应用的 JavaBean 实例资源进行统一管理与调度。 这样使三个开源框架有机地整合起来并更好地发挥它们的优势,实现了系统多层开发的低耦合,提高了 J2 EE 应用开发的效率。 模型 视图 控制器 (modelviewcontroller, MVC) 是 XeroxPARC 于 20 世纪 80 年代为编程语言 Smalltalk80 发明的一种软件设计模式,广泛应用于交互式应用程序,如客户机 /服务器、分布和 Inter 架构等体系结构。 模型表示数据或信息,以及数据存取的业务逻辑;视图用于显示模型的内容;控制器负责定义 应用程序的行为。 MVC 将表示逻辑、业务逻辑和数据分开,以便最小化对象之间的耦合度,它基于以下 3 方面的考虑: (1)划分责任可以减少代码重复度; (2)模型及视图变化不会太多影响控制; (3)应用程序维护简单。 MVC 设计模式图如图21 所示: ( 控 制 器 )接 受 用 户 请 求调 用 模 型 响 应 用 户 请 求选 择 视 图 显 示 响 应 结 果 ( 视 图 )显 示 模 型 状 态接 受 数 据 更 新 请 求发 送 用 户 输 入 数 据 传 输 给控 制 器允 许 控 制 器 选 择 视 图 ( 模 型 )封 装 应 用 程 序 状 态响 应 状 态 查 询处 理 业 务 流 程通 知 视 图 业 务 状 态 更 新通 知 数 据 更 新状 态 查 询选 择 视 图业 务 处 理用 户 请 求事 件方 法 调 用 图 21 MVC 设计模式图 平顶山工业职业技术学院毕业设计说明书 第 7 页 SSH 体系结构 一个典型的 Web 应用系统,按职责一般分为三层,即表示层,业务逻辑层和数据持久层,每一层次都有其独特的职责,不能把各自的功能与其他层次相混合. 采用 Struts、 Spring 和 Hibernate 框架技术可以分别实现这三层的整合处理。 即利用 Struts 框架作为系统整体基础架构,负责 MVC 的分离,在 Struts 架构的 Model 部分,利用 Spring 支持业务逻辑,用 Hibernate 支持数据持久层,具体整合架构如图 22 所示: 浏览器S t r u t s A c t i o nJ S P , X M L 等表 示 层S t r u t s M V CA c t i o n S e r v l e t业 务 逻 辑 层S p r i n g 事 务 处 理H i b e r n a t eS e s s i o n 管 理业 务 服 务 类数据库S e r v i c s D A O其 他 查 询 语言 支 持 和 其他 H i b e r n a t e服 务数 据 持 久 层H i b e r n a t e数 据 源 / 连 接 池域 模 型 业 务 对 象 ( V a l u e O b j e c t , V a l u e O b j e c t P e r s i s t e n c e O b j e c t )图 22 SSH 框架整合架构示意图 其中, Struts 用于表示层,直接面向用户,响应用户的请求,为显示提供一个模型和一个控制器,并委派调用业务逻辑和其 他上层处理等功能。 利用 Spring 在事务管理和依赖注入方面的独特能力,实现处理应用程序的业务逻辑和业务校验,以及提供与其他层进行相互作用的接口等。 Hibernate 是 ORM 的实现,利用它建立 Java 对象模型的持久化对象,进而以面向对象的方式来方便地操作关系数据库。 这样 Struts、 Spring 和 Hibernate 就能够很好地封装各个层次的程序,如在处理前台表示层时就不会把事务逻辑和持久化逻辑掺杂进来,从而最大限度地实现各层的高内聚低耦合目标。 SSH 整合的业务配置流程介绍 SSH 现 在普遍应用于各个领域,其整合的基本业务配置流程如下。 在表示层中 ,通过 Web页面实现用户和系统之间的信息交互 ,Web页面负责传送用户的请求以及接收系统的响应信息。 Struts 根据 配置文件将 ActionServlet 接收到的请求 (Request)分发给相应的 Action 来处理。 在业务层中 ,管理服务组件的 Spring IoC 容器负责向 Action 提供其指定的业务模型组件平顶山工业职业技术学院毕业设计说明书 第 8 页 和该组件的协作 DAO 类共同完成业务逻辑 ,并提供事务处理、数据缓冲等功能以保证数据的完整性 ,并提升系统性能。 而在 持久层中 ,则利用 Hibernate 的对象映射机制同数据库交互 ,处理 DAO 实现类的数据处理功能 ,并返回相应的处理结果。 具体业务配置流程处理如图 23 所示: 图 23 SSH 框架业务配置流程处理示意图 采用 SSH 开发模型,不仅实现了视图、控制器与模型的彻底分离,而且还实现了业务逻辑层与持久层的分离。 这样无论前端如何变化,模型层都不需要做很大的改动,这样可以大大提高了系统的可复用性,而且由于不同层之间耦合度小,有利于团队成员协同开发,大大提高了开发效率。 Ajax 技术概述 Ajax(Asynchronous JavaScript and XML)是指基于 XML 的异步 JavaScript技术,是一种用于创建更好更快以及交互性更强的 Web 应用程序的技术。 传统的网页如果需要更新内容,必需重载整个网页面,而 AJAX 通过在后台与服务器进行少量数据交换,可以使网页实现异步更新。 这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。 在页面内与服务器通信,给用户更好的体验;同时,使用异步方式与服务器通信,不需要打断用户的操作,具有更加迅速的响应能力;它也可以把以前一些服务器负担的工作转嫁到客户端,利用客户端闲置的能力来处理,减轻服务器和带宽的负担,节约空间和宽带租用成本。 图 1是传统的 Web 应用模型和加入 Ajax 后的 Web 应用模型的对比。 通过这两个图的比较,我们可以更清楚的了解到加入 Ajax 技术后,给传统的Web 应用程序开发所带来的变化。 平顶山工业职业技术学院毕业设计说明书 第 9 页 开发环境 JDK 软件 我们要开发 J2EE 的系统,却需要安装的是 J2SE。 J2SE 的 JDK 是开发任何 Java系统必须安装的工具包,而 J2EE 是指 EJB、 JSF 等这些工具包,在不需要开发这些功能时是不需要安装的。 我们选用 的版本进行开发。 数据库软件 MySQL MySQL 是最受欢迎的开源 SQL 数据库管理系统,它由 MySQL AB 开发、发布和支持。 MySQL 服务器支持关键任务、重负载生产系统的使用,也可以将它嵌入到一个大配置 (massdeployed)的软件中去。 它因为以下优点而广受欢迎。 MySQL 是一个开源的关系数据库管理系统 MySQL 服务器是一个快捷的、可靠的和易于使用的数据库服务器 MySQL 服务器工作在客户/服务器或嵌入系统中 有大量的 MySQL 软件可以使用 在此系统中我们选用 MySQL 进行开发。 Web 服务器 Tomcat Tomcat 是 ApacheJarkarta 的一个子项目,是一个免费的、开放源码的、支持 JSP 和 Servlet 技术的容器,它同时又是一个 Web 服务器软件。 Tomcat 很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能。 Tomcat 是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试 JSP 程序的首选。 在本系统中我们选用稳定版本 Tomcat 进行开发。 集成开发工具 MyEclipse MyEclipse 是目前最流行的 Java 集成开发工具。 MyEclipse 公司级工作平台是对 Eclipse IDE 的扩展 ,其主要的属性有快速的性能、重构性能、快速修复错误、调整/组织导入包、弹出窗口进行代码自动装配。 它能够很好地与 MySQL、Tomcat 进行集成。 本系统中我们选用 作为系统的开发工具。 平顶山工业职业技术学院毕业设计说明书 第 10 页 第 3 章 考勤管理 系统 的 可行性 研究 可行性研究的前提 系统功能要求: 本系统根据公司的需求,并按照权限划分,管理员角色需要的基本功能包括了。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。