基于HRMS在线管理系统.doc

上传人:文库蛋蛋多 文档编号:3795243 上传时间:2023-03-22 格式:DOC 页数:21 大小:305.50KB
返回 下载 相关 举报
基于HRMS在线管理系统.doc_第1页
第1页 / 共21页
基于HRMS在线管理系统.doc_第2页
第2页 / 共21页
基于HRMS在线管理系统.doc_第3页
第3页 / 共21页
基于HRMS在线管理系统.doc_第4页
第4页 / 共21页
基于HRMS在线管理系统.doc_第5页
第5页 / 共21页
点击查看更多>>
资源描述

《基于HRMS在线管理系统.doc》由会员分享,可在线阅读,更多相关《基于HRMS在线管理系统.doc(21页珍藏版)》请在三一办公上搜索。

1、HRMS在线管理系统【摘要】:HRMS是一种软件系统,也是一种系统软件的标准称谓,是Human Resource Manage System的缩写,即人力资源管理系统。人力资源管理就是预测组织人力资源需求并作出人力需求计划、招聘选择人员并进行有效组织、考核绩效支付报酬并进行有效激励、结合组织与个人需要进行有效开发以便实现最优组织绩效的全过程。即运用现代化的科学方法,对与一定物力相结合的人力进行合理的培训、组织和调配,使人力、物力经常保持最佳比例,同时对人的思想、心理和行为进行恰当的诱导、控制和协调,充分发挥人的主观能动性,使人尽其才,事得其人,人事相宜,以实现组织目标。【关键词】:在线、管理、

2、人力、资源第一章引言HRMSHuman Resource Manage System 人力资源管理系统,是指建立在信息技术基础上,以系统化的管理思想,为企业人事管理提供高效工作的管理平台。HRMS系统集中信息技术与先进的管理思想於一身,成为现代企业的运行模式,反映时代对企业合理调配人事资源,最大化地创造社会财富的要求,成为企业在信息时代生存、发展的基石。 在中国经济连接世界各地的同时,中国的人力资源管理也面临着考验。经济活动的全球化带来了人才市场的全球化,要求着全球化的人力资源视野;东西方文化在全球化的经济活动中相互融合,冲击着企业内部的高效沟通;企业的人力资源管理的价值在于为业务经营的开展提

3、供强有力的支撑,当前的市场竞争环境要求着人力资源部门提供一流的人力资源服务支持,要求内部的人力资源管理体系的进一步优化、改进并高效运转。目前,随着国内经济的迅猛发展,在经历了重组、整合及流程再造之后,越来越多企业的规模日益壮大。为了应对成长过程中必然会引发的大量人员流动、技能培训、效能评估、资源共享及分类分级化管理等难题,许多企业纷纷引进先进的人力资源管理系统(HRMS),以期能提高人力资源管理的效能并降低运营成本。然而,在人力资源管理系统的实施和使用中,却经常出现诸如项目成功率偏低、项目实施超时超支严重、系统应用水平低下、员工抵触情绪日增等棘手问题,使得本来应该为企业增值的系统最终沦为企业无

4、法消受的鸡肋。因此,如何能够结合人力资源管理的实际情况,综合考虑相关因素,针对典型的实施及应用环境探索和研究人力资源管理系统在企业中的采纳问题就显得非常重要和迫切了。第二章 开发环境2.1 硬件要求CPU: Intel Pentium() 2.0GHZHDD:80GRAM:512M2.2 软件要求操作系统:Windows XP/ Windows 2000。数据库:SQL Server 2005。开发工具:Microsoft Visaul Studio 2008。辅助开发工具:Photoshop CS2。浏览器:IE7.0,推荐使用IE8.0。Web服务器:IIS5.1。分辨率:最佳效果1024

5、768像素。第三章 系统分析3.1 可行性分析3.1.1系统实现后对组织机构、管理模式的影响人力资源管理系统是基于先进的软件和高速、大容量的硬件基础上的新的进销存管理模式,通过集中式的信息数据库,将企业人力资源的招、聘、用、存、弃等企业人力资源的管理业务有机的结合起来中,达到资源共享、降低成本、提高效率、改进服务等目的。同时还可以从以下几个方面来提高管理水平:提高管理效率降低人工成本提高人力资源的有效性及时任用优质人才3.1.2、可行性研究1开发系统的必要性随着网络的普及和流行,通过互联网络进行管理操作不仅方便快速,而且经济实惠,还可以吸引更多的顾客,这也是企业看好的地方。从这一点足可以说明开

6、发系统的必要性。2开发系统的经济可行性经济费用方面主要包括:购置并安装软硬件及有关设备的费用;系统开发费用;系统安装、运行和维护费用;人员培训费用。硬件方面,除了服务器要求高一点以外,终端设备可以连接网页就行了。软件方面,当然需要买正版的操作系统。系统开发费用为30万元人民币,不过这个数字与一个公司的发展比起来就显得太渺小了。系统的安装由我们开发人员来完成,费用包括在开发费用之中。运行和维护只需要公司招聘相应的技术人员来完成即可,这也是必不可少的一项开支。本系统操作方便,人机交互友好,易学易懂,所以培训时间会很短,费用也不会太高。总之,这几项加起来与本系统所带来的经济效益和社会效益比起来,可以

7、说是微不足道。3开发系统的技术可行性通过对公司业务流程各个环节的分析,确定出了新系统的管理结构。我开发小组人员利用现有的开发工具和开发技术完全可以在规定的时间,规定的资金范围内实现新系统的全部功能。4开发系统的法律可行性开发本系统是为了实现公司的高效管理,并实现对决策的支持。在开发的过程中完全自主开发,不会出现侵权问题。另外也会使用正版的软件来开发系统和运行系统。5组织管理上的可行性系统会使公司的人事管理更加科学化,也会更方便、高效,更人性化。同时也可以优化组织结构,提高企业的竞争力。6社会条件上的可行性网络的普及,网络也越来越受到人们的喜爱,这也为系统实现后的运行提供了一个大的环境。3.2

8、需求分析3.2.1 系统功能需求分析人力资源管理系统是一个典型的数据库开发应用程序,由系统管理模块、组织规划模块、员工管理模块、招聘管理模块、培训管理模块、薪酬管理模块、调动管理模块、统计报表等部分组成,规划系统功能模块如下:系统管理模块该模块主要角色管理、菜单管理。(2) 组织规划模块该模块主要包括公司信息管理,部门管理、职位管理。(3) 员工管理模块该模块主要包括在职员工管理、离职员工管理、档案回收站。(4) 招聘管理模块该块主要包括职位发布管理、简历管理、面试管理、考试管理、录用管理、考试题库管理、后备人才库(5) 培训管理模块该模块主要包括培训项目管理、培训记录管理。薪酬管理模块该模块

9、主要包括薪酬标准管理、薪酬发放管理。调动管理模块该模块主要包括调动记录管理。统计报表该模块主要包括人员基本信息管理。3.2.2 系统设计结构分析人力资源管理系统采用的是浏览器/服务器系统(Browser/Server简称B/S)结构。(1)B/S介绍BS结构,即BrowserServer(浏览器服务器)结构,就是只安装维护一个服务器(Server),而客户端采用浏览器(Browse)运行软件。它是随着Internet技术的兴起,对CS结构的一种变化和改进。主要利用了不断成熟的WWW浏览器技术,结合多种Script语言(VBScript、JavaScript)和ActiveX技术,是一种全新的软

10、件系统构造技术。BS三层体系结构采用三层浏览器服务器结构,在数据管理层(DAL)和用户界面层(VIEW)增加了一层结构,称为业务逻辑层(BLL),使整个体系结构成为三层。三层结构是伴随着中间件技术的成熟而兴起的,核心概念是利用中间件,将应用分为表示层、业务逻辑层和数据存储层三个不同的处理层次,如图2所示。三个层次的划分是从逻辑上分的,具体的物理分法可以有多种组合。中间件作为构造三层结构应用系统的基础平台,提供了以下主要功能:负责客户机与服务器、服务器与服务器间的连接和通信;实现应用与数据库的高效连接;提供一个三层结构应用的开发、运行、部署和管理的平台。这种三层结构在层与层之间相互独立,任何一层

11、的改变不会影响其它层的功能。图3-1 B/S三层体系结构在BS体系结构系统中,用户通过浏览器向分布在网络上的许多服务器发出请求,服务器对浏览器的请求进行处理,将用户所需信息返回到浏览器。而其余如数据请求、加工、结果返回以及动态网页生成、对数据库的访问和应用程序的执行等工作全部由Web Server完成。随着Windows将浏览器技术植入操作系统内部,这种结构已成为当今应用软件的首选体系结构。显然BS结构应用程序相对于传统的CS结构应用程序是一个非常大的进步。采用该结构软件的优势在于:l 无须开发客户端软件,维护和升级方便;l 可跨平台操作,任何一台机器只要装有WWW浏览器软件,均可作为客户机来

12、访问系统;l 具有良好的开放性和可扩充性;l 可采用防火墙技术来保证系统的安全性,有效地适应了当前用户对管理信息系统的新需求。因此该结构在管理信息系统开发领域中获得飞速发展,成为应用软件研制中一种流行的体系结构。(2)B/S相对于C/S的优势由于传统的客户服务器两层结构存在灵活性差、升级困难、维护工作量大等缺陷,已较难适应当前信息技术与网络技术发展的需要。而Browse/Server(简称B/S)结构已成为取代Client/Server(简称C/S)结构的一种全新技术。它的主要优势有:a.维护和升级方式简单。目前,软件系统的改进和升级越来越频繁,B/S架构的产品明显体现着更为方便的特性。对一个

13、稍微大的单位来说,系统管理人员如果需要在几百甚至上千部电脑之间来回奔跑,效率和工作量是可想而知的,但B/S架构的软件只需要管理服务器就行了,所有的客户端只是浏览器,根本不需要做任何的维护。无论用户的规模有多大,有多少分支机构都不会增加任何维护升级的工作量,所有的操作只需要针对服务器进行;如果是异地,只需要把服务器连接专网即可,实现远程维护、升级和共享。所以客户机越来越“瘦”,而服务器越来越“胖”是将来信息化发展的主流方向。今后,软件升级和维护会越来越容易,而使用起来会越来越简单,这对用户人力、物力、时间、费用的节省是显而易见的,惊人的。因此,维护和升级革命的方式是“瘦”客户机,“胖”服务器。b

14、.成本降低,选择更多。大家都知道windows在桌面电脑上几乎一统天下,浏览器成为了标准配置,但在服务器操作系统上windows并不是处于绝对的统治地位。 现在的趋势是凡使用B/S架构的应用管理软件,只需安装在Linux服务器上即可,而且安全性高。所以服务器操作系统的选择是很多的,不管选用那种操作系统都可以让大部分人使用windows作为桌面操作系统电脑不受影响,这就使的最流行免费的Linux操作系统快速发展起来,Linux除了操作系统是免费的以外,连数据库也是免费的,这种选择非常盛行。比如说很多人每天上“新浪”网,只要安装了浏览器就可以了,并不需要了解“新浪”的服务器用的是什么操作系统,而事

15、实上大部分网站确实没有使用windows操作系统,但用户的电脑本身安装的大部分是windows操作系统。c.应用服务器运行数据负荷较重。由于B/S架构管理软件只安装在服务器端(Server)上,网络管理人员只需要管理服务器就行了,用户界面主要事务逻辑在服务器(Server)端完全通过WWW浏览器实现,极少部分事务逻辑在前端(Browser)实现,所有的客户端只有浏览器,网络管理人员只需要做硬件维护。但是,应用服务器运行数据负荷较重,一旦发生服务器“崩溃”等问题,后果不堪设想。因此,许多单位都备有数据库存储服务器,以防万一。(3)客户/服务器体系结构的综合特点BS结构的主要特点是分布性强、维护方

16、便、开发简单且共享性强、总体拥有成本低。但数据安全性问题、对服务器要求过高、数据传输速度慢、软件的个性化特点明显降低,这些缺点是有目共睹的,难以实现传统模式下的特殊功能要求。例如通过浏览器进行大量的数据输入或进行报表的应答、专用性打印输出都比较困难和不便。此外,实现复杂的应用构造有较大的困难。虽然可以用ActiveX、Java等技术开发较为复杂的应用,但是相对于发展已非常成熟CS的一系列应用工具来说,这些技术的开发复杂,并没有完全成熟的技术工具供使用。3.2.3 系统功能流程图设计根据上述系统功能的需求分析,按照结构化程序设计的要求,得到如下所示的系统功能模块图,如图3-2图3-2 系统功能结

17、构图第四章 系统设计4.1系统设计要求、目标及命名规则4.1.1 要求(1)由于操作人员的计算机知识普遍较差,要求有良好的人机界面。(2)由于该系统的使用对象多,要求有较好的权限管理。(3)方便的数据查询,支持多条件查询。(4)基础信息管理(包括部门信息、与昂信息、考题信息等)。(5)通过计算机,能够直接“透视”人员简历存储情况。(6)完善的职位招聘信息、人员录用信息进行管理。(7)人事资源分布统计。(8)当外界环境(停电、网络病毒)干扰本系统时,系统可以自动保护原始数据的安全。(9)数据计算自动完成,尽量减少人工干预。(10)系统退出。4.1.2 目标(1)系统采用人机对话方式,界面美观友好

18、、信息查询灵活、方便、快捷、准确、数据存储安全可靠。(2)实现各种查询,如多条件查询、模糊查询等。(3)管理员可以设置操作员的权限。(4)对用户输入的数据,系统进行严格的数据检验,尽可能排除人为的错误。(5)数据保密性强,为每个用户设置权限级别。(6)系统最大限度地实现了易安装性、易维护性和易操作性。(7)系统运行稳定、安全可靠。4.1.3 命名规则(1)项目中命名规则项目中各个子项均以子项功能名称的英文,并且每个单词的第一个字母都要大写,他们对应的三层中的类均以他们的名称加上相应的后缀命名(例如:用户信息,项目名UserInfo,对应数据层中的类是UserInfoDao),类中的方法依据功能

19、而定,项目中的页面命名是项目名为前缀加上相应功能名。(2)数据库命名规则数据库名称与项目名称相同,数据库中表命名规则是表名称的英文,且单词第一个字母大写,表中字段命名与表相同。4.2 系统功能设计4.2.1 系统具体功能(1)系统管理结构图4-1所示:系统管理结构图4-1角色管理:对管理员,人事经理,人事专员三个角色进行管理。菜单管理:对每个角色的操作界面菜单进行管理。(2)组织规划结构图4-2所示:组织规划结构图4-2公司信息管理:对公司信息进行管理。部门管理:对部门信息进行增删改查。职位管理:对各部门的职位信息进行增删改查。 (3) 员工管理结构图4-3所示:员工管理结构图4-3在职员工信

20、息管理:对在职员工的信息进行查看和修改。离职员工信息管理:对离职员工的信息进行查看和修改。档案回收站:存放已删除的人员档案,方便误删后查找。 (4) 招聘管理结构图4-4所示:招聘管理结构图4-4职位发布管理:发布职位招聘广告,在公司官方网站上可见。面试管理:对应聘者进行面试。考试管理:对应聘者进行笔试。后备人才库:存放可能会有用的简历。录用管理:对人员进行录用操作。简历管理:对所有简历进行增删改查。考试题库管理:存放笔试用到的考题,可修改。 (5)培训管理结构图4-5培训管理结构图4-5培训项目管理:对员工培训的项目进行增删改查。培训记录管理:对员工添加培训记录。(6)薪酬管理结构图4-6薪

21、酬管理结构图4-6薪酬标准管理:对各种职位,职称的薪酬标准进行增删改查。薪酬发放管理:向员工发放工资。(7)调动管理结构图4-7调动管理结构图4-7调动记录管理:对员工进行岗位调动。(8)统计报表结构图4-8统计报表结构图4-8人员基本信息:对员工信息进行查看或者到处到Excel电子表格。(9)退出4.3 数据库设计本系统数据库采用SQL Server 2005数据库,系统数据库名称为HRMSDB。数据库HRMSDB中包含21张表。4.3.1 数据库概要结构设计(1)系统角色表,包括的数据项有角色编号、角色名称、角色描述等。(2)系统菜单表,包括的数据项有:菜单编号、根菜单编号、菜单名称、菜单

22、地址、菜单图片等。(3)用户表,包括的数据项有:用户编号、用户名、密码、真实姓名、角色、备注信息等。(4)权限表,包括的数据项有:权限编号、角色编号、菜单编号等。(5)公司信息表,包括的数据项有公司编号、公司名称、负责人、法人代表、所属行业、公司地址、邮政编码、传真、公司网址、公司邮箱、公司电话、公司简介等。(6)部门信息表,包括的数据项有:部门编号、部门名称、负责人、部门电话、传真、部门简述等。(7)职位信息表,包括的数据项有:职位编号、职位名称、所属部门、职位描述等。(8)员工档案表,包括的数据项有:档案编号、员工姓名、照片、所在部门、所属职位、性别、出生年月、学历、专业、身份证号、籍贯、

23、民族、政治面貌、宗教信仰、婚姻状况、进入单位时间、联系电话、家庭地址、邮政编码、个人简介、备注、调动次数、培训次数、登记时间、复核时间、更改时间、离职时间、复职时间、逻辑删除时间、恢复记录时间、复核状态、档案状态、员工工作状态等。(9薪酬标准信息表,包括的数据项有:标准单编号、标准单名称、制定时间、基本工资、交通补贴、通讯补贴、午餐补贴、浮动工资、备注信息等。(10薪酬发放表,包括的数据项有:发放单编号、标准单编号、档案编号、应发总金额、事发总金额、奖励金额、扣除金额、发放时间、备注信息等。(11)培训项目表, 包括的数据项有:培训项目编号、培训项目名、培训课时、培训开始时间、培训结束时间、培

24、训项目描述等。(12)培训记录表, 包括的数据项有:培训记录编号、档案编号、培训项目、培训成绩等级、备注等。(13)调动记录表,包括的数据项有:调动记录编号、档案编号、原部门编号、原部门名称、原职位编号、原职位名称、新部门编号、新部门名称、新职位编号、新职位名称、调动原因、调动时间、复核状态等。(14)职位发布表,包括的数据项有职位发布编号、职位编号、招聘人数、招聘类型、发布时间、截止时间、职位描述、招聘要求、招聘状态等。(15)简历表,包括的数据项有:简历编号、姓名 、申请职位、性别、联系电话、email、籍贯、出生年月、身份证号、学历、专业、薪金要求、教育经历、工作经历、个人履历、简历状态

25、等。(16)面试表,包括的数据项有:面试表编号、简历编号 、形象等级、口才等级、外语、平、应变能力、综合素质、面试时间、面试评价、面试状态等。(17)试题分类表,包括的数据项有:试题分类编号、试题分类名称、描述等。(18)试题题库表,包括的数据项有:试题编号、试题分类编号 、出题时间、题干、答案A、答案B、答案C、答案D、正确答案等。(19)考试记录表,包括的数据项有:考试记录编号、简历编号、试题数量、答对试题数量、考试总分、考试时间、考试状态等。(20)录用记录表,包括的数据项有:录用记录编号、简历编号、录用时间、录用状态等。(21)招聘类型表,包括的数据项有:招聘类型编号、招聘类型名称、备

26、注等。第五章 系统的具体实施5.1母版页5.1.1 母版页的优点母版页系统易于供设计人员使用,因为它基于 ASP.NET 的熟悉的用户控件模型。尽管最终加入了近乎完整的可视化,却不需要编写任何代码。另一方面,母版页的功能强大,因为它们支持多区域、默认内容、嵌套模板、和设备筛选器(用于浏览器依赖性)。母版页也是完全编译的,从而具有最佳性能,同时提供一种强类型编程模型(其中包括母版属性的设计时 IntelliSense),尽管在最后发行之前可能会作一些折衷,以便更好地支持动态母版。5.1.2 母版页的使用.模板页扩展名为Master,内容页引用模板页的方法: .动态改变内容页所引用的模板页通常在I

27、nit事件下改变:protected void Page_PreInit(object sender,EventArgs e)this.MasterPageFile=/ABC.master;.在内容页中使用模板页中的控件Master:内容页:Label lb = (Label)Master.FindControl(LabDemo);/直接在Master中找LabDemoif (lb != null) Response.Write(alert( + lb.Text.ToString() + ); 当控件在Master中的ContentPlaceHolder里的话则需要:ContentPlaceH

28、oldera= (ContentPlaceHolder)Master.FindControl(Content2);/先找到ContentPlaceHolder的ID if(a!= null) TextBox Txt=(TextBox)a.FindControl(TxtDemo); if(Txt != null) Response.write(Txt.text.ToString(); .在内容页中使用模板页中的变量,属性,方法首先在内容页加上:模板页中的变量必须为:Public string WebTitle=welocome to .; /并放在模板页类下定义并初始化.就可以在内容页中:Mas

29、ter.WebTitle进行引用.但如果此变量在网页加载的时候改变了,引用的值还为定义时初始化的值.因为加加载模板页到内容页的事件先后为:(1)母版页-Init(2)内容页-Init(3)内容页-Load(4)母版页-Load(5)内容页-PreRender(6)母版页-PreRender所以,要改变变量的值应放在:母版页中的Init事件中,放在Load事件中是不行的。例: protected void Page_Init(object sender, EventArgs e) if (!IsPostBack) WebConfigSelect();/此方法对变量进行了初始化或者改变! 第六章

30、遇到的问题及解决办法(1)当页面刷新时,数据会丢失,解决办法如下:/保存数据,确保刷新时数据存在 public int Qxbh get if (ViewStateQxbh != null) return (int)ViewStateQxbh; else return -1; set ViewStateQxbh = value; (2)GridView中实现多选,解决办法如下:/实现多选的页面代码 function ckball(ck) var items = document.getElementsByTagName(input);/中的复选框最终生成input的html标签,所有用inpu

31、t for(i=0;iitems.length;i+)/遍历列表 if(itemsi.type = checkbox)/判断是不是checkbox类型 itemsi.checked = ck.checked;/如果是则选中 /多选的后台代码for (int i = 0; i 0)xsddbhs = xsddbhs.Substring(0, xsddbhs.Length - 1);/去掉末尾的逗号 string zt = ddlzt.SelectedValue;/ KcManager.modifyZtByDdbh(zt, xsddbhs, xsddjy);/后台代码的和数据库的操作public

32、static void modifyZtByDdbh(string zt,string ddbh,string flag) 待添加的隐藏文字内容1 DBHelper.ExecuteCommand(update xsdd set zt=+zt+ where xsddbh in(+ddbh+);(3)实现弹出式下拉菜单,解决办法是层div加script函数,如下:/实现下拉列表的页面代码,是对层的使用function divshow(flag)switch(flag)case jcgl: ifelse(flag);document.getElementById(jhgl).style.displa

33、y=none;document.getElementById(xsgl).style.display=none;document.getElementById(kcgl).style.display=none;break;case jhgl: ifelse(flag);document.getElementById(jcgl).style.display=none;document.getElementById(xsgl).style.display=none;document.getElementById(kcgl).style.display=none;break;case xsgl:if

34、else(flag);document.getElementById(jcgl).style.display=none;document.getElementById(jhgl).style.display=none;document.getElementById(kcgl).style.display=none;break;default :ifelse(flag);document.getElementById(jcgl).style.display=none;document.getElementById(jhgl).style.display=none;document.getElem

35、entById(xsgl).style.display=none;break;function ifelse(flag)var divs=document.getElementById(flag).style.display;if(divs=none)document.getElementById(flag).style.display=block;else document.getElementById(flag).style.display=none;参考文献:1.ASP.NET网络编程技术 杨天奇 王文 何朋 李会锋 机械工业出版社 (2007-01出版) 2.ASP.NET Web程序

36、设计 蒋培 王笑梅 清华大学 (2007-06出版) 3.ASP.NET与网站开发实践教程 郝文化等编 清华大学出版社 4.ASP.NET AJAX入门与案例详解 郭磬君,张艳丽,王芳芳,等 编著 机械工业出版社 (2007-08出版) 5.ASP.NET 2.0入门经典 米切尔 人民邮电 (2007-05出版)6.戴维斯著Visual C#.NET 应用编程电子工业出版社,2003年7.赵克立著C#.NET 编程培训教程 清华大学出版社,2003年8.杜亮编著 亲密接触ASP.Net清华大学出版社,2002年9.李明刚 ASP.NET Web站点高级编程范例肖建等编著附录附录一 数据库连接用

37、Hibernate连接数据库可通过直接编写Hibernate的配置文件来实现,由于本网站采用Struts,Hibernate,Spring三者相结合,所以本网站在处理与数据库连接时,直接将Hibernate配置文件中连接数据库的代码注入到Spring的配置文件中,包括需要加载相应的数据库驱动,与所用数据库建立连接的URL,数据库的用户名以及密码。com.mysql.jdbc.Driverjdbc:mysql:/localhost:3306/workinfodb root 1234 将此数据库的连接注入到Spring的操作缓存中,并且通过Spring的配置文件将Hibernate中持久化类所对应

38、的映射文件进行注入。 com/data/hibernate/Admin.hbm.xmlcom/data/hibernate/Company.hbm.xmlcom/data/hibernate/Employee.hbm.xml sessionFactory 在应用程序中通常只需存在一个实例,因而 sessionFactory 底层的 dataSource 可以使用 Spring 的 IoC 注入,之后再将sessionFactory注入相依赖的对象之中。附录二 声明式事务管理Spring 的声明式的事务管理依赖于它的 AOP 框架来完成,使用声明式的事务管理的好处是,事务管理不侵入开发的组件,即

39、事务管理的相关 API 可以不用介入程序之中,DAO 对象不会意识到正在事务管理之中。将事务的管理和业务逻辑相分离,正是我们一直以来想要达到的目标,因为事务管理是属于系统层面的服务,而不是业务逻辑的一部分,在以往的编程过程中,我们要大量的考虑在何种情况下操作有可能不会完全成功,需要对事务进行回滚操作,使数据保存一致状态。而有了Spring的声明式事务管理,如果想要改变事务管理策略的话,只需要在Spring的配置文件中重新配置即可。Spring的声明式的事务管理通过动态代理,针对接口进行管理,那么就首先要求进行指定业务逻辑的类要现实相应的接口,动态代理再通过对接口的管理,现实了对继承该接口的类中的指定方法的事务管理。 com.data.hibernate.IAdminDAO PROPAGATION_REQUIREDPROPAGATION_REQUIRED,readOnly 以对管理员的事务管理为例,对管理员Admin表的增、删、改、查操作存放于AdminDAO中,AdminDAO实现了IAdminDAO这个接口,或者说是IAdminDAO是通过AdminDAO抽象出来的接口,这里利用Spring提供的动态代理对IAdminDAO中的以save开头的方法进行声明式事务管理,以此类推。有了这样的处理,在以后的

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号