2022年办公自动化系统的考勤管理模块的研究与设计开发与实现本科.docx
本 科 毕 业 论 文(设计)院 系软件学院题 目办公自动化系统的考勤治理模块的设计与实现同学姓名刘瑄学 号 071251092年 级 2007 级专 业 软件工程指导老师职 称论文提交日期摘 要随着运算机的普及和运算机技术的飞速进展,越来越多的企业利用运算机解决实际中遇到的问题;相伴着数字商业的到来,企业的治理意识和环境都发生了巨大的变化,企业的治理结构由多层次结构向扁平化治理结构转化;数字时代企业的信息量和沟通数量巨大,为了提高企业的治理效率,必需提升沟通的质量,要求企业办公高效率、自动化,办公自动化系统应运而生;办公自动化系统跨过系统治理、日程治理、考勤治理、消息治理、文档治理等五个领 域;SSH 在 J2EE 工程中表示了 3 种框架,即 Spring + Struts + Hibernate;Struts 由于版本差异, Struts1.x 和 Struts2.x 几乎是不同的框架;经过综合考虑,相对于现在的企业来说Struts1.x 的技术成熟,便于爱护;故本OA 系统使用的 SSH 版本为 Spring2.5 + Struts1.3 + Hibernate3.3;总体完成一个完全基于浏览器的操作模式,安装简洁(B/S 架构,不必安装或者只要安装很小的插件),操作便利,具有良好的系统扩充才能的办公自动化系统,供应:文档治理平台、消息治理平台、考勤治理平台、日程治理平台、系统治理平台;关键词:办公自动化系统, OA,SSH,J2EEAbstractWith the popularization of computer and the rapid development of computer technology, more and more companies use computers to solve practical problems. With the arrival of the digital business, enterprise management consciousness and the environmentareallundergone tremendous changes, enterprise's management structure by multi-levelstructure to flating management structure transformation;Digital era enterprise information and communication a huge number, in order to improve the enterprise management efficiency, must enhance communication quality,high efficiency and automation request enterprise office, office automation system came into being. Office automation system across system management, schedule management, attendance management, news management, document management five fields.SSH said in J2EE project in three framework, namely Spring + Struts + Hibernate.Struts1.x and Struts2.x are almost different framework. After a comprehensive consideration, Struts1.xis relative to the enterprise. NowStruts1.xis easy to maintain for the mature technology. So the OA system use SSH version for Spring2.5 + Struts1.3 + Hibernate3.3.Overall finish a completely based on the browser's operating mode, installation simple B/S structure, need not installed or installing small plugin, convenient operation,good system expansion abilityofficeautomation system, provide: documentmanagementplatform,newsmanagementplatform,attendance management platform, schedule management platform, system management platform.Keywords:Office Automation System,OA,SSH,J2EE目 录目录 II第一章概述 /绪论 11.1 工程背景 11.2 国内外办公自动化现状 11.3 解决方案比较 31.3.1 J2EE和.net31.3.2 JSP、ASP 和 PHP31.3.3 SSH和 JSP+servlet+JavaBea5n1.4 论文主要工作 /组织结构 5其次章 Web开发技术概述2.1 J2EE62.1.1 JSP72.1.2 JDBC72.1.3 JavaBean72.2 SSH82.2.1 Struts82.2.2 Spring102.2.3 Hibernate11摘要 I AbstractI62.3 DHTML 122.4 EXTJS123.1 工程目标 13第三章办公自动化系统工程概述133.2 一般性需求 133.3 功能性需求 143.3.1 角色说明 143.3.2 整体业务流程描述 143.4 具体功能点需求 143.4.1 系统治理子系统 143.4.2 日程治理子系统 153.4.3 考勤治理子系统 153.4.4 消息治理子系统 163.4.5 文档治理子系统 163.5 整体设计和实现 163.5.1 后台掌握层和模块层173.5.2 前台表示层 173.5.3 配置文件 173.6 工程环境 183.6.1 Tomca1t 83.6.2 Oracle18第四章考勤治理子系统的分析、设计与实现194.1 考勤治理需求分析 194.1.1 签到/签退治理 194.1.2 考勤历史查询 204.1.3 考勤统计 214.1.4 工作日治理 224.1.5 工作时间治理 234.1.6 出差/请假治理 24 4.1.7补签治理子模块 254.2 考勤治理具体设计 264.2.1 整体类图 264.2.2 actionform 层 274.2.3 action层 274.2.5 service层 284.2.6 dao层 284.2.7 database层 294.2.8 各模块时序图 294.2.9 数据库设计 294.3 考勤治理运行界面 314.4 Web开发技术在考勤治理中的应用4.4.1 J2EE的应用 334.4.2 SSH的应用 344.4.3 DHTML 的应用 374.4.4 EXTJS的应用 3733第五章总结与展望参考文献 38致谢 394.2.4 filter 层 2738第一章 概述 /绪论1.1 工程背景办公自动化( Office Automation, 简称 OA)是将现代化办公和运算机网络功能结合起来的一种新型的办公方式,是当前新技术革命中一个技术应用领域,属于信息化社会的产物;随着运算机的普及和运算机技术的飞速进展,越来越多的企业利用运算机解决实际中遇到的问题;相伴着数字商业的到来,企业的治理意识和环境都发生了巨大的变化,企业的治理结构由多层次结构向扁平化治理结构转化;数字时代企业的信息量和沟通数量巨大,为了提高企业的治理效率,必需提升沟通的质量,要求企业办公高效率、自动化,办公自动化系统应运而生;办公自动化系统跨过系统治理、日程治理、考勤治理、消息治理、文档治理等五个领 域;随着治理水平的提高, Internet 技术的显现,单单实现文档治理和流转已经不能满意要求, OA 的重心开头由文档的处理转入了数据的分析,即所说的决策系统,这时显现了以信息交换平台和数据库结合作为后台,数据处理及分析程序作为中间层,浏览器作为前台(三层次结构)的OA 模式,这种模式下, 可以将 OA 系统纳入由业务处理系统等系统构成的单位整体系统内,可以通过OA 系统看到、分析、得到更全面的信息;基于B/S 结构的办公自动化系统, 适用于施工企业的办公自动化,它涵盖日常办公治理的基本流,具有较强的通用性;11.2 国内外办公自动化现状办公自动化建设的本质是提高决策效能为目的的;通过实现办公自动化, 或者说实现数字化办公,可以优化现有的治理组织结构,调整治理体制;在提高效率的基础上,增加协同办公才能,强化决策的一样性,最终实现提高决策效能的目的;办公自动化建设与现阶段政府上网工程之间的关系;政府上网工程始终是 近一两年业界炒作和关注的热点之一,政府上网工程是由于互连网的普及,政 府部门把一些政务信息发布到Intemet 上,进而在网上建立与老百姓沟通的渠道,以实现政务公开和政府行为接受监督的目的;从实际成效来看,很多政府部门只是在网上存放一些静态的政府信息,实质性的工作却特别少;并且,在很多情形下,很多人将办公自动化和政府上网混为一谈;这种现象导致很多部门重上网工程轻办公自动化工程;甚至把上网工程误认为是办公自动化工程;实际上,从网络划分的角度,政府上网工程是外网建设,办公自动化工程是内网建设,办公自动化工程是政府信息化的基础,政府上网工程是政府信息化的对外表现形式,办公自动化工程在政府信息化建设中所占的比重远高于政府上网工程;只有办公自动化工程的建设并运转胜利,政府上网才会有源源不断的信息发布,政府上网才有意义,否就政府上网工程就会变成无源之水;当然, 政府上网工程的宣扬对我国信息化建设也起了肯定的推动作用;办公自动化应当是尽快向数字化办公进展;所谓数字化办公即几乎全部的办公业务都在网络环境下实现;从技术进展角度来看,特殊是互连网技术的进展,安全技术的进展和软件理论的进展,实现数字化办公是可能的;从治理体制和工作习惯的角度来看,;全面的数字化办公仍有一段距离;第一数字化办公必定冲击现有的治理体制,使现有治理体制发生变革,而治理体制的变革意味着权益和利益的重新安排;另外治理人员原有的工作习惯、工作方式和法律体系有很强的惯性,短时间内转变尚需时日;尽管如此,全面实现数字化办公是办公自动化进展的必定趋势;实现数字化办公既不同于传统的OA,也不同于 MIS 的建设,它的结构是Intranet 网的结构,它的构建思路是自上而下的,即第一把整个内部网看成是一个整体,这个整体的对象是网上全部用户,它必需有一个基础,我们称这个基础为内网平台;就好象PC 必需有一个操作系统为基础一样;内网平台负责全部用户对象的治理、负责全部网络资源 含网络应用 的治理、网络资源的分层授权、网络资源的开放标准和供应常用的网络服务如邮件、论坛、导航、检索和公告等 ;在平台的基础之上,插接各种业务应用可懂得为传统的 MIS ,这些应用都是网络资源;用户通过统一的浏览器界面入网,网络依据用户的权限供应相应的信息、功能和服务,使用户在网络环境下办公;办公自动化于 50 岁月在美国和日本第一兴起,最初只是具有电子数据处理EDP的簿记功能, 60 岁月被治理信息系统 MIS 取代,直到 70 岁月后期才形成涉及多种技术的新型综合学科一办公自动化 OA ;80 岁月,国外办公自动化得到了飞速进展,很多闻名的运算机软硬件公司都跻身于这一巨大的市场;进入 90 岁月以来,办公自动化在世界主要发达国家得到蓬勃进展;我国办公自动化是 80 岁月中期才进展起来的; 1985 年全国召开了第一次办公自动化规划会议,对我国办公自动化建设进行了规划;1986 年 5 月在国务院电子振兴领导小组办公自动化专家组第一次专家会议上,定义了办公自动化系统功能层次和结构模式;随后国务院领先开发了 ”中南海办公自动化系统 ”;我国 OA 的应用和进展历程,可以分为以下三个阶段:(1)第一代 OA 系统,是从 20 世纪 80 岁月中期到 90 岁月中期以个人电脑、办公套件为主要标志,实现了数据统计和文档写作电子化,即将办公信息载体从原始纸介质方式转向比特方式;( 2)其次代 OA 系统, 是从 90 岁月中期开头的以网络技术和协同工作技术为主要特点,实现了工作流程自动化,即将收发文从传统的手工方式转向工作流自动化方式;( 3)第三代 OA 系统, 是融信息处理、业务流程和学问治理于一体的应用系统; 21.3 解决方案比较1.3.1 J2EE 和.net目前国内外 Web开发的主流架构有 J2EE和.net,经过综合考虑,本 OA 系统采纳 J2EE 体系架构,利用 J2EE 体系架构的优势,实现了业务数据和业务规律的分别;J2EE 是一套全然不同于传统应用开发的技术架构,包含很多组件,主要可简化且规范应用系统的开发与部署,进而提高可移植性、安全与再用价值;J2EE是一种利用 Java 2 平台来简化企业解决方案的开发、部署和治理相关的复杂问题的体系结构; J2EE 技术的基础就是核心 Java 平台或 Java 2 平台的标准版, J2EE 不仅巩固了标准版中的很多优点,例如 " 编写一次、随处运行 " 的特性、便利存取数据库的 JDBC API、CORBA 技术以及能够在 Internet 应用中爱护数据的安全模式等等,同时仍供应了对 EJB(Enterprise JavaBeans)、JavaServlets API、JSP( Java Server Page)s 以及 XML 技术的全面支持;其最终目的就是成为一个能够使企业开发者大幅缩短投放市场时间的体系结构;3.NET 是 Microsoft XML Web services平台; XML Web services 答应应用程序通过 Internet 进行通讯和共享数据,而不管所采纳的是哪种操作系统、设备或编程语言; Microsoft .NET平台供应创建 XML Web services 并将这些服务集成在一起之所需;对个人用户的好处是无缝的、吸引人的体验;41.3.2 JSP、 ASP 和 PHP目前国内外的动态网页技术主要有JSP、ASP 和 PHP,由于本 OA 系统是基于 J2EE体系架构,故使用 JSP技术;JSPJava Server Pages是 由 Sun Microsystems 公司提倡、很多公司参加一起建立的一种动态网页技术标准; JSP 技术有点类似 ASP 技术,它是在传统的网页 HTML 文件 *.htm,*.html 中插入 Java程序段 Scriptlet 和 JSP标记tag,从而形成 JSP文件*.jsp ; 用 JSP开发的 Web 应用是跨平台的,既能在 Linux 下运行,也能在其他操作系统上运行;JSP特性:(1) 一次编写,处处运行;除了系统之外,代码不用做任何更换;系统的多平台支持;基本上可以在全部平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展;相比ASP/.net的局限性是显而易见的;(2) 强大的可伸缩性;从只有一个小的Jar 文件就可以运行Servlet/JSP, 到由多台服务器进行集群和负载均衡,到多台Application 进行事务处理,消息处理,一台服务器到很多台服务器, Java显示了一个巨大的生命力;(3) 多样化和功能强大的开发工具支持;这一点与ASP 很像, Java 已经有了很多特别优秀的开发工具,而且很多可以免费得到,并且其中很多已经可以顺当的运行于多种平台之下;(4) 支持服务器端组件; web 应用需要强大的服务器端组件来支持,开发人员需要利用其他工具设计实现复杂功能的组件供web 页面调用,以增强系统性能; JSP可以使用成熟的 JAVA BEANS 组件来实现复杂商务功能; 5ASP 是 Active Server Page的缩写,意为 “动态服务器页面 ”;ASP 是微软公司开发的代替 CGI 脚本程序的一种应用 ,它可以与数据库和其它程序进行交互, 是一种简洁、便利的编程工具;ASP 的网页文件的格式是 .asp,现在常用于各种动态网站中; ASP 是一种服务器端脚本编写环境,可以用来创建和运行动态网页或 Web应用程序; ASP 网页可以包含 HTML 标记、一般文本、脚本命令以及 COM 组建等;利用 ASP 可以向网页中添加交互式内容(如在线表单),也可以创建使用 HTML 网页作为用户界面的 web 应用程序; 6PHP,是英文超级文本预处理语言Hypertext Preprocessor的缩写; PHP 是一种 HTML 内嵌式的语言,是一种在服务器端执行的嵌入HTML 文档的脚本语言;PHP 特殊的语法混合了C、Java、Perl 以及 PHP 自创新的语法;它可以比CGI 或者 Perl 更快速的执行动态网页;用PHP 做出的动态页面与其他的变成语言相比, PHP 是将程序嵌入到HTML文档中去执行,执行效率比完全生成HTML 标记的 CGI 要高很多; PHP 仍可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快; PHP 具有特别强大的功能,全部的CGI 的功能 PHP 都能实现,而且支持几乎全部流行的数据库以及操作系统;71.3.3 SSH 和 JSP+servlet+JavaBeanJ2EE 体系架构中可以用 SSH 框架,也可以用 JSP+servlet+JavaBean框架, 本 OA 系统采纳了 SSH 框架; SSH 在 J2EE 工程中表示了 3 种框架 ,即 Spring + Struts + Hibernate;Spring 是一个开源框架,它由Rod Johnson创建;它是为明白决企业应用开发的复杂性而创建的; Spring 使用基本的 JavaBean来完成以前只可能由EJB 完成的事情;然而, Spring 的用途不仅限于服务器端的开发;从简洁性、可测试性和松耦合的角度而言,任何 Java应用都可以从 Spring 中受益;Struts 框架具有组件的模块化,敏捷性和重用性的优点,同时简化了基于MVC 的 web 应用程序的开发; Struts 可以清楚地区分掌握,事务规律和外观, 从而简化了开发应用程序的过程;Hibernate 是一个开放源代码的对象关系映射框架,它对JDBC 进行了特别轻量级的对象封装,使得Java 程序员可以随心所欲的使用对象编程思维来操纵数据库; Hibernate 可以应用在任何使用JDBC 的场合,既可以在 Java的客户端程序使用,也可以在Servlet/JSP 的 Web 应用中使用,最具革命意义的是, Hibernate 可以在应用 EJB 的 J2EE 架构中取代 CMP,完成数据长久化的重任;8JSP+servlet+JavaBean框架适合小规模工程的开发,而SSH 适合企业工程的开发, SSH相对于 JSP+servlet+JavaBean更加规范化;1.4 论文主要工作 /组织结构论文总体是对本人完成办公自动化系统工程的一些总结;第一章,主要描述了本人为何挑选办公自动化工程,同时介绍了它的背景以及办公自动化在国内外的现状和进展,仍有完成该工程的需要采纳的技术的比较;其次章,主要描述了完成办公自动化的一些必要的技术介绍,以便读者能够更好的懂得后面的内容;第三章,主要描述了整个工程的需求,功能,设计和环境等;第四章,主要描述了本人完成子系统的技术运用,以及一些分析、设计和实现;第五章,主要描述了对该工程的总结以及对它的进展期望;其次章 Web 开发技术概述2.1 J2EEJ2EE的简介已经在 1.3.1 中描述过了,下面来具体介绍J2EE 的四层模型与核心组件;J2EE 使用多层的分布式应用模型,应用规律按功能划分为组件,各个应用组件依据他们所在的层分布在不同的机器上;图 2.1 J2EE 四层模型图如图 2.1 所示, J2EE分别有四层:( 1)运行在客户端机器上的客户层,应用客户端程序和 applets是客户层组件;( 2)运行在 J2EE服务器上的 Web层,Java Servlet 和 JavaServerPagesJSP是Web 层组件;( 3)运行在 J2EE 服务器上的业务规律层, Enterprise JavaBeansEJB是 业务层组件;( 4)运行在 EIS 服务器上的企业信息系统 Enterprise information system层;3下面将会具体介绍本 OA 系统用到的 J2EE 中的 4 种技术: JSP、JDBC、JavaBean(代替 EJB)和 Java Servlets(由于 Struts1.x是基于 servlet技术,故该技术不做具体描述) ;2.1.1 JSPJSP的简介已经在 1.3.2 中描述过了,下面来具体介绍JSP 的指令、动作、隐式对象等;JSP的指令包括: page指令、 include 指令、 taglib 指令;JSP 的 动 作 包 括 : <jsp:include> 、 <jsp:forward> 、 <jsp:plugin> 、request客户端恳求,此恳求会包含来自GET/POST 恳求的参数response网页传回客户端的响应pageContext网页的属性是在这里治理session与恳求有关的会话application正在执行的内容out用来传送响应的输出流config代码片段配置对象page代码片段配置对象exception针对错误网页,未捕获的例外<jsp:useBean>、< jsp:setProperty>,、< jsp:getProperty> JSP的隐式对象如表 2.1 所示;表 2.1 JSP 隐式对象表2.1.2 JDBCJDBC(Java Data Base Connectivity,java 数据库连接)是一种用于执行 SQL 语句的 Java API,可以为多种关系数据库供应统一拜访,它由一组用 Java语言编写的类和接口组成; JDBC 为工具 /数据库开发人员供应了一个标准的 API, 据此可以构建更高级的工具和接口,使数据库开发人员能够用纯 Java API 编写数据库应用程序;在本 OA 系统中,并没有实现用 JDBC 直接连接数据库,而是通过Hibernate 操作数据库( Hibernate底层是对 JDBC 的封装); 92.1.3 JavaBeanJavaBean是一种 JAVA 语言写成的可重用组件;为写成JavaBean,类必需是具体的和公共的,并且具有无参数的构造器;JavaBean 通过供应符合一样性设计模式的公共方法将内部域暴露成员属性;用户可以使用 JavaBean将功能、处理、值、数据库拜访和其他任何可以用java 代码制造的对象进行打包,并且其他的开发者可以通过内部的JSP 页面、Servlet、其他 JavaBean、applet 程序或者应用来使用这些对象;用户可以认为JavaBean供应了一种随时随地的复制和粘贴的功能,而不用关怀任何转变;JavaBean 可分 为两 种: 一种 是有用户 界面( UI , User Interface) 的JavaBean;仍有一种是没有用户界面,主要负责处理事务(如数据运算,操纵数据库)的 JavaBean;JSP通常拜访的是后一种 JavaBean;102.2 SSHSSH 在 J2EE 工程中表示了 3 种框架,即 Spring + Struts + Hibernate;Struts 由于版本差异, Struts1.x 和 Struts2.x 几乎是不同的框架;经过综合考虑,相对于现在的企业来说Struts1.x 的技术成熟,便于爱护;故本OA 系统使用的 SSH 版本为 Spring2.5 + Struts1.3 + Hibernate3.3;下面将会具体介绍这三个框架;2.2.1 StrutsStruts 的简介已经在 1.3.3 中描述过了,下面来具体介绍Struts1.x 的构成、组件、运行流程等;Struts1.x 框架主要由两个相对独立的组成部分构成:(1) Struts API ;( 2) Struts 框架表示层中的各种标签库(Html 、Bean、 Logic 、Tiles 等标签库);如图 2.2 所示, Struts1.x 对 Model ,View 和 Controller 都供应了对应的组件;ActionServlet,这个类是 Struts 的核心掌握器,负责拦截来自用户的恳求;Action ,这个类通常由用户供应,该掌握器负责接收来自ActionServlet 的恳求,并依据该恳求调用模型的业务规律方法处理恳求,并将处理结果返回给JSP页面显示;(1) Model 部分:由 JavaBean组成, ActionForm 用于封装用户的恳求参数,封装成 ActionForm 对象,该对象被 ActionServlet 转发给 Action,Action 依据 ActionFrom 里面的恳求参数处理用户的恳求; JavaBean就封装了底层的业务规律,包括数据库拜访等;(2) View 部分:该部分采纳 JSP 实现;Struts 供应了丰富的标签库,通过标签库可以削减脚本的使用,自定义的标签库可以实现与Model 的有效交互, 并增加了现实功能;对应 JSP部分;(3) ) Controller 部分: Controller 组件有两个部分组成 系统核心掌握器,业务规律掌握器;系统核心掌握器,对应ActionServlet;该掌握器由 Struts 框架供应,继承 HttpServlet 类,因此可以配置成标注的Servlet;该掌握器负责拦截全部的 HTTP 恳求,然后依据用户恳求打算是否要转给业务规律掌握器;业务规律掌握器,负责处理用户恳求,本身不具备处理才能,而是调用Model来完成处理;对应 Action 部分;12图 2.2 Struts 各层组件图Struts接受到一个客户恳求时,将执行如下流程:(1) 检索和用户恳求匹配的ActionMapping 实例,假如不存在,就返回用户恳求路径无效信息;(2) 假如 ActionForm 实例不存在,就创建一个ActionForm 对象,把客户提交的表单数据储存到ActionForm 对象中;( 3 ) 根 据 配置 信息 打算 是否需要 表验证; 假如 需要 验证 , 就 调用ActionForm 的 validate方法;( 4 ) 假如 ActionForm 的 validate 方 法返 回 null 或返回一个不包含ActionMessage的 ActionErrors 对象,就表示表单验证胜利;(5) ActionServlet 依据 ActionMapping 实例包含的映射信息打算将恳求转发给那个 Action ;假如响应的 Action 实例不存在,就先创建这个实例,然后调用 Action 的 execute方法;(6) Action 的 execute()方法返回一个 ActionForward 对象, ActionServlet再把客户恳求转发个 ActionForward 对象指向的 jsp 组件;(7) ActionForward 对象指向的 jsp 组件生成动态网页,返回给客户; 112.2.2 SpringSpring 的简介已经在 1.3.3 中描述过了,下面来具体介绍Spring 的其他特性和模块组成;Spring 特性:(1) 轻量:从大小与开销两方面而言Spring 都是轻量的;完整的Spring 框架可以在一个大小只有 1MB 多的 JAR 文件里发布;并且Spring 所需的处理开销也是微不足道的;此外, Spring 是非侵入式的:典型地, Spring 应用中的对象不依靠于 Spring 的特定类;(2) 掌握反转: Spring 通过一种称作掌握反转( IoC)的技术促进了松耦合;当应用了 IoC,一个对象依靠的其它对象会通过被动的方式传递进来,而不是这个对象自己创建或者查找依靠对象;你可以认为IoC 与 JNDI 相反 不是对象淡定器中查找依靠,而是容器在对象初始化时不等对象恳求就主动将依赖传递给它;(3) 面对切面: Spring 供应了面对切面编程的丰富支持,答应通过分别应用的业务规律与系统级服务(例如审计(auditing)和事务( transaction)治理)进行内聚性的开发;应用对象只实现它们应当做的 完成业务规律 仅此而已;它们并不负责(甚至是意识)其它的系统级关注点,例如日志或事务支持;(4) 容器: Spring 包含并治理应用对象的配置和生命周期,在这个意义上它是一种容器,你可以配置你的每个bean 如何被创建 基于一个可配置原型( prototype),你的 bean 可以创建一个单独的实例或者每次需要时都生成一个新的实例 以及它们是如何相互关联的;然而,Spring 不应当被混同于传统的重量级的 EJB 容器,它们常常是巨大与笨重的,难以使用;(5) )框架: Spring 可以将简洁的组件配置、组合成为复杂的应用;在Spring 中,应用对象被声明式地组合,典型地是在一个XML 文件里; Spring 也供应了很多基础功能(事务治理、长久化框架集成等等),将应用规律的开发留给了你; 13图 2.3 Spring 模块图Spring 每个模块功能如图 2.3 所示;2.2.3 HibernateHibernate 的简介已经在1.3.3 中描述过了,下面来具体介绍Hibernate 的核心接口;如图 2.4 所示, Hibernate 的核心接口一共有5 个,分别为 :Session、SessionFactory、Transaction、Query 和 Configuration ;这 5 个核心接口在任何开发中都会用到;通过这些接口,不仅可以对长久化对象进行存取,仍能够进行事务掌握;下面对这五个核心接口分别加以介绍:(1) ) Session 接口: Session 接口负责执行被长久化对象的CRUD 操作CRUD 的任务是完成与数据库的沟通,包含了很多常见的SQL 语句; ;但需要留意的是Session 对象是非线程安全的;同时,Hibernate 的 session 不同于JSP 应用中的HttpSession;这里当使用session 这个术语时,其实指的是Hibernate 中的 session,而以后会将 HttpSesion 对象称为用户 session;(2) SessionFactory接口: SessionFactory接口负责初始化 Hibernate;它充当数据储备源的代理,并负责创建Session对象;这里用到了工厂模式;需要留意的是 SessionFactory并不是轻量级的,由于一般情形下,一个工程通常只需要一个 SessionFactory就够,当需要操作多个数据库时,可以为每个数据库指定一个 SessionFactory;(3) Configuration 接口: Configuration 接口负责配置并启动Hibernate,创建 SessionFactory对象;在 Hibernate 的启动的过程中, Configuration 类的实例第肯定位映射文档位置、读取配置,然后创建SessionFactory对象;(4) Transaction 接口: Transaction 接口负责事务相关的操作;它是可选的,开发人员也可以设计编写自己的底层事务处理代码;(5) Query 和 Criteria 接口: Query 和 Criteria 接口负责执行各种数据库查询;它可以使用 HQL 语言或 SQL 语句两种表达方式; 14图 2.4 Hibernate 图2.3 DHTMLDHTML是 Dynamic HTML 的简称,就是动态的 html ,是相对传统的静态的 html 而言的一种制作网页的概念;所谓动态HTMLDynamicHTML ,简称DHTML ,其实并不是一门新的语言,它只是HTML 、CSS 和客户端脚本的一种集成,即一个页面中包括 html+css+javascript或其它客户端脚本 ;DHTML建 立 在 原 有 技 术 的 基 础 上 , 可 分 为 三 个 方 面 : ( 1 )HTMLXHTML,也就是页面中的各种页面元素对象,它们是被动态操纵的内容;( 2) CSS,CSS 属性也是动态操纵的内容,从而获得动态的格式成效;( 3)客户端脚本 例如 JavaScript,它实际操纵 Web页上的 HTML 和 CSS;152.4 EXTJSExtJS 是一种主要用于创建前端用户界面,是一个与后台技术无关的前端ajax