




已阅读5页,还剩54页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
天津师范大学天津师范大学 本科毕业论文 设计 本科毕业论文 设计 题目 基于基于 SSH 框架的人力资源管理系统的设计与实现框架的人力资源管理系统的设计与实现 学院 计算机与信息工程学院学院 计算机与信息工程学院 学生姓名 崔雨哲学生姓名 崔雨哲 学号 学号 专业 软件工程专业 软件工程 年级 年级 2009 级级 完成日期 完成日期 2013 年年 4 月月 指导教师 夏云龙指导教师 夏云龙 基于 SSH 框架的人力资源管理系统的设计与实现 摘要 随着计算机 互联网和电业务的快速发展 企业之间的竞争已经从有 形市场到互联网 人力资源管理系统出现了信息技术在企业管理中的应用 人 力资源管理系统是企业管理平台 EMP 的一个重要功能 它可以提高企业的 管理水平 人力资源管理系统设计的目的是为了实现统一管理 人力资源信息 提供决策支持 人力资源信息 让用户及时与对方沟通 并轻松地与其他系统 合作 在本文中 人力资源管理系统提出了基于 SSH 框架结合现代人力资源管 理理论和企业的事实 人力资源管理的当前状态进行了分析 本文系统有许多 功能 如 员工管理模块 部门管理模块 公告管理模块 工作管理模块 工 资管理模块 HMRS 建立的目的是巩固人力资源管理相关的所有信息 形成一 个统一的数据资源 帮助人力资源系统管理员进行人力资源的管理和布局 关键词 人力资源管理系统 SSH 框架 mysql 数据库 The Design and Implementation of Human Resource Management System Based on SSH Frame Abstract Since the beginning of the information age with the increasing development of computer and network technology e commerce unprecedented development competition among enterprises from the physical market to gradually shift the network While the corresponding enterprise management have gradually entered the information track human resources management system also came into being Human resources management system is an important part of enterprise management platform the design and development of corporate human resources in order to improve the level of corporate human resources management information system The system design goal is to achieve unified management of the enterprise human resources information human resources information to support decision making and timely communication to meet user needs and work with other systems The use of modern human resource management theory combined with the specific circumstances of the corporate status quo points off domestic and international human resources management system combined with the the SSH framework and mysql database technology a web based human resource management system the main contents Staff management bulletin management departmental management job management and payroll management The establishment of the system is designed to unify data and human resource management the formation of a unified data source and can help corporate human resources management human resource management and planning Key words Human Resource Management System SSH frame mysql 目录 1 绪论 6 1 1 开发背景 6 1 1 1 背景介绍 6 1 2 课题的研究意义和主要内容 6 2 系统分析 7 2 1 系统需求分析 7 2 1 1 功能需求 7 2 2 系统可行性分析 7 2 2 1 经济可行性 7 2 2 2 技术可行性 8 3 系统设计 8 3 1 业务目标 8 3 2 系统功能分析 8 3 2 1 系统功能需求设计 8 3 2 2 系统功能结构图 9 3 3 系统用例图 10 3 3 1 普通员工用力图 10 3 3 2 普通部门经理用例图 10 3 3 3 人事部员工用例图 11 3 3 4 人事部经理用例图 12 3 3 5 财务部员工用例图 12 3 3 6 财务部经理用例图 13 3 3 7 总经理用例图 14 3 4 时序图 15 3 4 1 登录时序图 15 3 4 2 个人管理时序图 15 3 4 3 工作管理时序图 16 3 4 4 公告查看时序图 16 3 4 5 工作监督时序图 17 3 4 6 公告管理时序图 17 3 4 7 日志管理时序图 18 3 4 8 薪金管理时序图 18 3 4 9 邮箱管理时序图 19 3 4 10 员工管理时序图 19 3 5 数据库设计 20 3 5 1 E R 图 20 3 5 2 概念模型 21 3 5 3 物理模型 21 3 6 数据字典 22 3 6 1 部门表 dept 22 3 6 2 岗位表 job 22 3 6 3 员工表 emp 22 3 6 4 日志 calendar 23 3 6 5 公告表 bulletin 23 3 6 6 邮件表 mail 23 3 7 数据库 SQL 语句 23 4 技术背景及其实现 26 4 1 SSH 框架 26 4 1 1 SSH 框架的介绍 26 4 1 2 SSH 中的实现 27 4 2 项目实现 39 4 2 1 核心类图 39 5 系统实现 43 5 1 系统界面实现 43 5 1 1 登录界面 43 5 1 2 主界面功能区分 47 5 1 3 公告管理功能 48 5 1 4 个人管理 50 5 1 5 日志管理与批复日志 50 5 1 6 工作和部门管理 52 5 1 7 邮件管理 54 5 1 8 人事管理 55 5 1 9 薪金管理 56 6 致谢 57 1 绪论绪论 1 1 开发背景开发背景 1 1 1 背景介绍背景介绍 人力资源管理已经近百年的历史 传统的人事管理是伴随着组织的出现 现代意义上 的人事管理发展始于工业革命的一代 在发展过程中 它会继续从各种学科 自我升华 从而催生了现代人力资源管理理论体系 现代人力资源管理的强调人力资源和物质资源的 区别 强调人的主观能动性 及时性 智力和社会效应 据西方学者 人力资源管理的发 展可以分为以下四个阶段 第一阶段 20 世纪 30 年代 在此阶段 这个理论来研究如何提高效率为核心的人 类劳动 并且主要集中在两个方面 首先 人体运动和劳动时间研究开发的 标准化 的 工作方法 人类选择 培训和实施 刺激 计件工资 科学管理理论成为一门科学的管理 经验 提高了劳动效率 从而成为人力资源管理的起点 然而 管理的成分将被过分夸大 完全无视工人的心理需求 因此 人力资源管理仍是一个人事管理的工作 主要内容是招 聘和雇用员工 建立工资支付制度 内部分工与合作来 第二阶段 20 世纪 30 年代到 20 世纪 60 年代 在这个阶段 行为科学理论和劳资 关系学校的人力资源管理理论产生了重大影响 其重点从 事 为中心 以 人 为中心 强调充分发挥人的积极性 劳动人事部门 负责招聘的阶段 是负责协调劳动关系 明确 管理人员和工人之间的劳动分工 并开始培训的目的 然后分配适当的工作 根据自己的 特点 实施的差别计件工资制 第三阶段 20 世纪 60 年代到 20 世纪 80 年代 在此期间 劳动经济学产生了重大 影响 人力资源管理理论 该理论认为 必须加强就业保障 通过国家立法 并强调改善 就业关系 提高工人的地位 有效和合法的管理活动的重要性 也开始变得越来越重要 第四阶段 20 世纪 80 年代至今 在这个阶段 在企业人力资源管理的角色发生质 的变化 在人力资源管理的变化从保护和员工选择企业发展的规划者和变化 同时 随着 信息技术日益的成熟和应用 管理者摆脱日常琐碎的工作桎梏中解放出来 专注于科学有 效的管理决策的 人力资源管理的已经成为企业运营非常重要的一环 从企业的长期战略 管理人员的角度来看 随着经济全球化 网络化的发展 数字知识经济时代已经来临 商 业竞争 从竞争中脱颖而出 在财力 物力和物理资源 智力资源和智力资源的竞争 人 力资源的竞争本质的竞争焦点 因此 人力资源管理已成为企业管理的重要组成部分 1 2 课题的研究意义和主要内容课题的研究意义和主要内容 人力资源管理系统 以提高资源的共享 知识管理功能 具有理论和实践意义 人民 群众是该组织最重要的资源 人员的有效管理是企业管理工作中的一个重要功能 以加强 竞争力的有力保障 在人才竞争日益激烈的情况下 需要运用现代信息技术支持经理完成 各种各样的任务 现代人力资源管理系统由一些不同的结构 不同的加工技术子系统 包括人事管理 薪酬管理 公告管理的核心模块 实际应用中 如何合理分配员工调动员工的积极性 改 善工作人员的培训业务 快速发展 已成为最重要的因素 本文介绍了人力资源管理系统 系统需求分析过程中 我们使用的原型用户需求 用 例图 确定模块和系统的结构功能 可根据用户需求 系统进行统一管理的员工 公司的 每一位员工都可以登录到系统中 在人力资源管理方面增加透明度 和人力资源管理人员 从复杂的 重复性的劳动剥离出来 集中时间和精力 整合人力资源规划和决策 并提高 其市场竞争力 2 系统分析系统分析 2 1 系统需求分析系统需求分析 人事管理系统是一个企事业单位不可缺少的部分 它的内容对于单位决策者和管理者 来说都至关重要 所以人事管理系统应该能够为用户提供充足的信息和方便的查询手段 一直以来人们使用传统人工的方式管理文件档案 这种管理方式存在着许多缺点 如 效 率低下 保密性差 容易丢失 另外时间一长 将产生大量的文件和数据 这对于信息的 查找 更新和维护都带来了不少的困难 随着科学技术的不断发展 计算机科学的日渐成熟 作为计算机应用的一部分 使用 计算机对人事信息进行管理 具有手工管理所无法比拟的优点 查找方便 可靠性高 存 储量大 保密性好 成本低等 这些优点能够极大地提高人事管理的效率 也是企业的科 学化 正规化管理重要条件 因此 开发一个运行稳定 功能完善的人力资源管理系统是 十分必要的 2 1 1 功能需求功能需求 人力资源管理系统需要人力资源管理不受地域的限制 只要人员能够上网 通过验证 并登陆系统 便可以随时查看人力资源信息 进行人力资源信息数据的管理和更新 人力 资源管理系统具有人员管理 部门管理 岗位管理 公告管理和薪金管理等功能 人力资 源管理部门负责添加 修改 删除各类信息 领导和人力资源管理部门发布相关公告 查 询员工信心等 员工个人可以查看个人信息 查看公告等 2 2 系统可行性分析系统可行性分析 2 2 1 经济可行性经济可行性 通过网络化的人力资源管理 大大的提高了企业人才的利用率 使之为企业创造了更 大价值 人才利用率的提高 增强了企业的核心竟争力 全面提升了企业的管理能力 从 而企业适应了信息时代的网络化管理要求 2 2 2 技术可行性技术可行性 由于开发此系统需要的环境有操作系统 Windows XP Windows 7 数据库 My sql 开发工具包 JDK Version1 4 2 开发工具 my eclipse9 0 JSP 服务器 Tomcat7 0 编程开发语言 Java 需要操作人员熟练使用 java 语言和 SQL 语言以及 HQL 语 言 需要操作人员熟练使用进行相关数据库的操作 具有一定的数据库开发功底及编程能力 使用的开发工具把 Java 语句 SSH 框架 相结合 优美的界面设计再加上 Windows 稳定 的运行环境的支持和开发人员的过硬技术 从功能和性能上完全都满足系统的要求 因此 从技术方面讲此系统是可行的综合以上两点开发此系统是可行的 3 系统设计系统设计 3 1 业务目标业务目标 人力资源管理系统的使用 应该达到以下目标 1 系统开发符合企业实际需求 切合实际 能够提高企业人力资源管理水平 提高工作 效率 降低成本 2 用户可以根据自己的实际情况做出修改 并有效的查找相关员工等信息 3 系统根据用户实际设计 使用方便 设计统一的人力资源界面 4 系统运行稳定 安全可靠 3 2 系统功能分析系统功能分析 系统需要能够对员工 部门 公告 岗位等信息进行增删改查 3 2 1 系统功能需求设计系统功能需求设计 编号模块名称功能名称功能描述 1部门管理 浏览部门信息查看部门相关信息 添加部门根据公司需要创建新部门 修改部门根据公司需要调整部门信息 2岗位管理 查看岗位信息人事部门查看岗位信息 添加岗位人事部门根据需要添加新岗位 修改岗位人事部门根据需要修改岗位信息 3人事管理 查看员工信息员工查看员工信息 添加新员工人事部门录入新员工信息 修改员工信息人事部门对员工信息进行变更 4通知管理 查看通知查看公司通知 删除通知人事部门对过期的信息进行删除 添加通知 人事部门对需要告知全体的通知进行 添加 5日志管理添加日志员工根据工作内容填写工作日志 删除日志将不用的工作日志删除 日志回复上级批复员工日志 6邮件管理发邮件邮件交流 查看邮件查看收到的邮件 删除邮件对收件箱和发件箱进行清理 7个人管理 修改密码修改个人密码 查看信息查看个人信息 修改信息修改个人基本信息 8登录员工登录公司员工登录 9薪金管理 更改绩效工资 财务部根据员工当月工作表现更改员 工的绩效工资 查看当月薪金查看员工当月薪金 3 2 2 系统功能结构图系统功能结构图 图 1 1 系统功能机构图 3 3 系统用例图系统用例图 3 3 1 普通员工用力图普通员工用力图 普通员工可以正常登录外 还可以使用个人管理 薪金管理 邮件管理 通知管理 日志管理五个基本功能 个人管理可以修改登录时的密码 查看个人信息 对个人信息如 联系方式等进行修改 薪金管理对于普通员工来说 则只能查询自己的基本工资和当月的 绩效工资 邮件管理用于公司员工之间的工作交流 普通员工可以收发邮件 删除已读邮 件 普通员工在通知管理只能查看公司最新发布的相关通知 日志管理用于记录工作相关 的信息 并提交给员工所在部门的上级领导 普通员工可以添加日志 查看日志及其批复 以及删除日志 图图 1 1 普普通通员员工工用用例例图图 3 3 2 普通部门经理用例图普通部门经理用例图 普通部门经理可以正常登录外 还可以使用个人管理 薪金管理 邮件管理 通知管 理 日志管理五个基本功能 除日志管理模块外 其他管理模块的使用与普通员工相同 而普通部门经理在使用日志模块的时候 同普通员工一样 可以添加新的工作日志 删除 日志 查看日志及其批复外 还可以查看所属部门的所有员工需批复的日志 以及对需要 批复的员工日志进行批复 图 1 2 普通经理用例图 3 3 3 人事部员工用例图人事部员工用例图 人事部员工可以使用个人管理 薪金管理 邮件管理 通知管理 日志管理五个基本 功能外 还可以进行人事管理 除人事管理模块和通知模块外 其他的使用同普通员工 而人事模块主要用于处理公司的人事工作 如对于员工除薪金信息外的增删改查 而通知 模块则不同于普通员工 除查看通知外 人事部门有权对公司的公告进行添加和删除 图 1 3 人事部员工用例图 3 3 4 人事部经理用例图人事部经理用例图 人事部经理功能除日志日志模块外和部门管理模块与人事部员工基本相同 而人事经 理的日志模块除了能添加删除查看工作日志外 还要对需要进行批复的日志进行批复 除 此之外 人事部经理还可以对公司部门的信息进行查看和修改 对公司的岗位信息进行增 删改查 图 1 4 人事部经理用例图 3 3 5 财务部员工用例图财务部员工用例图 财务部员工除了薪金管理模块外 其他功能与普通员工相同 而在薪金管理方面 财 务部门的员工除了可以查看自己的薪金外 可以应上级要求或其他相应的工资条例修改员 工绩效工资 图 1 5 财务部员工用例图 3 3 6 财务部经理用例图财务部经理用例图 财务部经理功能除日志日志模块外与财务部员工基本相同 而财务经理的日志模块除 了能添加删除查看工作日志外 还要对需要进行批复的日志进行批复 图 1 6 财务部经理用例图 3 3 7 总经理用例图总经理用例图 总经理相当于一个超级管理员 除了普通经理的可以使用的基本功能外 还可以对薪 金 部门 岗位进行增删改查 图 1 7 总经理用例图 3 4 时序图时序图 3 4 1 登录时序图登录时序图 图 7 1 登录时序图 3 4 2 个人管理时序图个人管理时序图 图 7 2 个人管理时序图 3 4 3 工作管理时序图工作管理时序图 人事部门员工工作管理时序图 图 7 3 工作管理时序图 3 4 4 公告查看时序图公告查看时序图 普通用户查看公告时序图 图 7 4 公告查看时序图 3 4 5 工作监督时序图工作监督时序图 部门经理及总经理工作监督时序图 图 7 5 工作监督时序图 3 4 6 公告管理时序图公告管理时序图 人事部用户公告管理时序图 图 7 6 公告管理时序图 3 4 7 日志管理时序图日志管理时序图 图 7 7 日志管理时序图 3 4 8 薪金管理时序图薪金管理时序图 财务部用户薪金管理 图 7 8 薪金管理时序图 3 4 9 邮箱管理时序图邮箱管理时序图 图 7 9 邮箱管理时序图 3 4 10 员工管理时序图员工管理时序图 人事部用户员工管理 图 7 10 员工管理时序图 3 5 数据库设计数据库设计 3 5 1 E R 图图 图 2 1 E R 图 在人力资源管理系统中 对应的实体 关系图如上图所示 存在的实体 entity 有 部门 工作 员工 公告 日志 邮件 每个实体对应多种 属性 attribute 其中每种属性对应的编号 如员工编号 部门编号等 是对应属性的主 键 即码 key 实体之间存在着联系 一个部门有多个员工 故而部门 员工之间是一个 1 n 的关系 同理 一个岗位工作上有许多人一起共事 所以工作 员工也是一个 1 n 的关系 每个拥 有各自权限的员工都可以写多篇日志 邮件 公告 故而员工和这些实体之间都存在着一 对多的关系 上图所示是按照关系模型对抽象的现实世界经行的概括 3 5 2 概念模型概念模型 图 2 2 概念模型 3 5 3 物理模型物理模型 图 2 3 物理模型 3 6 数据字典数据字典 根据数据模型 每个实体 entity 对应一张数据表 每个实体的属性 attribute 形 成每个数据表的字段 所有码 key 即为主键 所有主键的约束均为主键 非空 自增长 其余属性字段按照现实要求实现各自的约束 3 6 1 部门表 部门表 dept 字段代码字段名称字段类型相关约束 dept id部门编号int主键 自增长 非空 dept name部门名称var char 20 非空 dept desc部门描述text 3 6 2 岗位表 岗位表 job 字段代码字段名称字段类型相关约束 job id工作编号int主键 自增长 非空 job name岗位名称var char 20 非空 job desc岗位描述text 3 6 3 员工表 员工表 emp 字段代码字段名称字段类型相关约束 emp id员工 idint主键 自增长 非空 emp code员工编号int非空 emp pwd员工登录密码var char 6 非空 job id员工岗位编号int外键 job 表 dept id员工部门编号int外键 dept 表 emp joindate员工入职时间date非空 emp name员工姓名var char 20 非空 emp sal员工工资decimal 8 2 非空 emp comm员工绩效工资decimal 8 2 非空 emp mgr员工上级编号int非空 emp tel员工行动电话var char 11 非空 emp birthday员工生日date非空 3 6 4 日志 日志 calendar 字段代码字段名称字段类型相关约束 calendar id日志编码int主键 自增长 非空 emp id写日志员工 idint外键 em id 非空 calendar title日志标题var char 20 非空 calendar content日志内容text非空 calendar time日志创建时间timestamp非空 calendar responseid日志批复人 idint外键 emp mgr calendar response日志批复内容text calendar isresponse日志是否已批复byte 2 缺省 0 3 6 5 公告表 公告表 bulletin 字段代码字段名称字段类型相关约束 bulletin id公告编号int主键 自增长 非空 emp id发表人 idint外键 emp id bulletin title公告标题var char 20 非空 bulletin content公告内容text非空 bulletin buildtime公告发布时间timestamp非空 bulletin filepath公告附件路径text 3 6 6 邮件表 邮件表 mail 字段代码字段名称字段类型相关约束 mail id邮件编码int主键 自增长 非空 emp id发件方 idint外键 emp id mail toid邮件收件方 idint外键 emp id mail title邮件标题var char 20 非空 mail content邮件内容text非空 mail sandtme邮件发送时间timestamp非空 mail isread邮件是否已读byte 2 缺省 0 3 7 数据库数据库 SQL 语句语句 drop table if exists bulletin drop table if exists calendar drop table if exists dept drop table if exists emp drop table if exists job drop table if exists mail create table bulletin bulletin id int not null auto increment emp id int not null bulletin title varchar 20 not null bulletin content text not null bulletin buildtime timestamp not null bulletin filepath text primary key bulletin id create table calendar calendar id int not null auto increment emp id int not null calendar title varchar 20 not null calendar content text not null calendar time timestamp not null calendar responseid int not null calendar response text calendar isresponse tinyint not null primary key calendar id create table dept dept id int not null auto increment dept name varchar 20 not null dept desc text primary key dept id create table emp emp id int not null auto increment dept id int not null job id int not null emp code int not null emp name varchar 20 not null emp pwd varchar 6 not null emp joindate timestamp not null emp sal decimal 8 2 not null emp comm decimal 8 2 not null emp mgr int not null emp tel varchar 11 not null emp sex varchar 4 not null emp birthday date not null primary key emp id create table job job id int not null auto increment job name varchar 20 not null job desc text primary key job id create table mail mail id int not null auto increment emp id int not null mail toid int not null mail title varchar 20 not null mail content text not null mail sendtime timestamp not null mail isread tinyint primary key mail id alter table bulletin add constraint FK emp bulletin foreign key emp id references emp emp id on delete restrict on update restrict alter table calendar add constraint FK emp calendar foreign key emp id references emp emp id on delete restrict on update restrict alter table emp add constraint FK emp dept foreign key dept id references dept dept id on delete restrict on update restrict alter table emp add constraint FK emp job foreign key job id references job job id on delete restrict on update restrict alter table mail add constraint FK emp mail foreign key emp id references emp emp id on delete restrict on update restrict 4 技术背景及其实现 技术背景及其实现 4 1 SSH 框架框架 4 1 1 SSH 框架的介绍框架的介绍 SSH 为 struts spring hibernate 构成的一个开源集成框架 SSH 框架系统从职能上分为 4 个部分 表示层 业务逻辑层 数据持久层和域模块层 其中使用 Struts 作为系统的整体基础架构 负责 MVC Model View Control 的分 离 在 Struts 框架的模型部分 控制业务跳转 利用 Hibernate 框架对持久层提供支持 Spring 做管理 管理 struts 和 hibernate 具体做法是 用面向对象的分析方法根据需求提 出一些模型 将这些模型实现为基本的 Java 对象 然后编写基本的 DAO Data Access Objects 接口 并给出 Hibernate 的 DAO 实现 采用 Hibernate 架构实现的 DAO 类来实现 Java 类与数据库之间的转换和访问 最后由 Spring 做管理 管理 struts 和 hibernate 图 4 1 1 1 经典 MVC 结构 图 4 1 1 2 struts2 web work 对 MVC 的实现 系统的基本业务流程是 在表示层中 首先通过 JSP 页面实现交互界面 负责传送请 求 Request 和接收响应 Response 然后 Struts 根据配置文件 struts config xml 将 Action Servlet 接收到的 Request 委派给相应的 Action 处理 在业务层中 管理服务组件的 Spring LOC 容器负责向 Action 提供业务模型 Model 组件和该组件的协作对象数据处理 DAO 组 件完成业务逻辑 并提供事务处理 缓冲池等容器组件以提升系统性能和保证数据的完整 性 而在持久层中 则依赖于 Hibernate 的对象化映射和数据库交互 处理 DAO 组件请求 的数据 并返回处理结果 Struts2 的 Action 属于 MVC 模型层 Action 中的方法代表业务逻辑 Action 中的属性 代表请求中的参数 当页面请求参数较多的时候 把过多的参数对象的属性定义在 Action 中不太符合 Struts 所倡导的松耦合原则 所以我们推荐单独用 JavaBean 来封装参数 在 Action 中为 JavaBean 赋值 这就是 ModelDriven 的 Action 模型驱动的 Action 要求 Action 实现 ModelDriven 接口 假如登录页面需要传输参数 username 和 userpass 我们把这 2 个 参数封装在一个数据的 JavaBean 中 然后在 Action 中定义该 JavaBean 为 Model 即可 采用上述开发模型 不仅实现了视图 控制器与模型的彻底分离 而且还实现了业务 逻辑层与持久层的分离 这样无论前端如何变化 模型层只需很少的改动 并且数据库的 变化也不会对前端有所影响 大大提高了系统的可复用性 而且由于不同层之间耦合度小 有利于团队成员并行工作 大大提高了开发效率 图 4 1 1 SSH 框架介绍图 4 1 2 SSH 中的实现中的实现 1 struts 的配置文件 的配置文件 image jpeg inputStream jsp login jsp jsp index jsp jsp noticeIndex jsp jsp pwdchange jsp jsp personMan jsp jsp login jsp jsp calendarMan jsp jsp empAdd jsp jsp empMan jsp jsp jobMan jsp jsp deptMan jsp jsp jobMan jsp jsp jobMan jsp jsp jobMan jsp jsp deptMan jsp jsp deptMan jsp jsp deptMan jsp jsp jobMod jsp jsp jobMan jsp jsp deptMod jsp jsp deptMan jsp jsp empMan jsp jsp empMan jsp jsp empMan jsp jsp empMod jsp jsp empMan jsp jsp calendarMan jsp jsp calendarDetail jsp jsp calendarMan jsp jsp calendarReMan jsp jsp calendarReDetail jsp jsp calendarMan jsp jsp bulletinView jsp jsp bulletinMan jsp jsp bulletinMan jsp jsp bulletinMan jsp jsp bulletinDetail jsp jsp mailAdd jsp jsp mailMan jsp jsp mailMan jsp jsp mailMan jsp jsp mailDetail jsp jsp mailRe jsp jsp mailReDetail jsp 2 Spring 配置文件配置文件 applicationContext xml org hibernate dialect MySQLDialect com design po Emp hbm xml com design po Calendar hbm xml com design po Mail hbm xml com design po Dept hbm xml com design po Bulletin hbm xml com design po Job hbm xml 3 hibernate 反向工程生成反向工程生成 po 层 层 emp 为例 为例 4 2 项目实现项目实现 4 2 1 核心类图核心类图 图 4 2 1 核心类图 根据面向对象语言的继承与封装的特性 所有实体类对应的 DAO Data Access Objects 接口 和 DAO 实现 均继承自 IGenericDao 接口和 AGenericHibernateDao 每个实体类中 都包含对对应数据库表格的增删改查 如果单独去写每一个实体对应的 Dao 层 势必造成 大量冗杂的代码类 而利用 java 继承与封装的特性 不仅良好提高了代码的重用率 在节 省时间的同时又保证了每个实体只对自己所属的数据进行操作 良好的保证了数据的安全 性 1 IGenericDao 接口接口 package com design dao base import java io Serializable import java util List import com design vo PageBean public interface IGenericDao public abstract T insert final T entity 插入 public abstract T findById final ID id 根据 id 寻找 public abstract void delete final T entity 删除 public abstract void updata final T entity 修改 public abstract List findAll 全部查询 public abstract List findByHQL final String strHQL final Object params public abstract PageBean findByPage final String strHQL final Object params final int currentPage final int pageSize public abstract List findInfor final String strHQL final Object params public abstract int bulkUpdate final String strHQL final Object params 2 AGenericHibernateDao package com design dao base import java io Serializable import java lang reflect ParameterizedType import java sql SQLException import java util List import org hibernate HibernateException import org hibernate Query import org hibernate Session import org springframework orm hibernate3 HibernateCallback import org springframework orm hibernate3 support HibernateDaoSupport import com design vo PageBean public class AGenericHibernateDao extends HibernateDaoSupport implements IGenericDao private Class persistentClass 利用反射机制得到持久化的类 T SuppressWarnings unchecked public AGenericHibernateDao super this persistentClass Class ParameterizedType this getClass getGenericSuperclass getActualTypeArguments 0 SuppressWarnings unchecked public T insert T entity TODO Auto generated method stub return T this getHibernateTemplate save entity public T findById ID id TODO Auto generated method stub return this getHibernateTemplate get persistentClass id public List findAll TODO Auto generated method stub return this getHibernateTemplate loadAll persistentClass public void updata T entity TODO Auto generated method stub this getHibernateTemplate update entity public void delete T entity TODO Auto generated method stub this getHibernateTemplate delete entity SuppressWarnings unchecked public List findByHQL String strHQL Object params TODO Auto generated method stub return this getHibernateTemplate find strHQL params public PageBean findByPage final String strHQL final Object params final int currentPage final int pageSize TODO Auto generated method stub return this getHibernateTemplate execute new HibernateCallback public PageBean doInHibernate Session session throws HibernateException SQLException TODO Auto generated method stub PageBean pb new PageBean 数据 Query q session createQuery strHQL for int i 0 i params length i q setParameter i params i q setMaxResults pageSize q setFirstResult currentPage 1 pageSize pb setList q list 总记录数 q session createQuery select count strHQL substring strHQL toLowerCase indexOf from for int i 0 i params length i q setParameter i params i pb setTotalrows Integer valueOf q uniqueResult toString pb setCurrentpage currentPage pb setPagesize pageSize return pb SuppressWarnings unchecked public List findInfor String strHQL Object params TODO Auto generated method stub return this getHibernateTemplate find strHQL params public int bulkUpdate String strHQL Object params TODO Auto generated method stub int affectlines this getHibernateTemplate bulkUpdate strHQL params return affectlines 5 系统实现系统实现 5 1 系统界面实现系统界面实现 5 1 1 登录界面登录
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年2月山东领取济宁市份普通话水平测试等级证书考前自测高频考点模拟试题及一套参考答案详解
- 2025年北京师范大学海口附属学校春季面向全国招聘78人考前自测高频考点模拟试题及答案详解(考点梳理)
- 2025年兖矿资本管理有限公司社会招聘(3人)考前自测高频考点模拟试题及答案详解(全优)
- 2025年西安亮丽电力集团有限责任公司招聘(10人)考前自测高频考点模拟试题及答案详解一套
- 2025年芜湖市残疾人综合服务中心编外工作人员招聘2人考前自测高频考点模拟试题及答案详解1套
- 2025年春季广东华兴银行校园招聘模拟试卷(含答案详解)
- 2025广东佛山市第二人民医院服务中心招聘11人考前自测高频考点模拟试题及答案详解(名师系列)
- 2025河北保定幼儿师范高等专科学校选聘教师考前自测高频考点模拟试题附答案详解(完整版)
- 团委书记竞聘演讲稿
- 2025湖北恩施州宣恩县卫生健康局招聘1人模拟试卷及答案详解(名校卷)
- 钢厂设备安全培训课件
- 糖尿病高渗性昏迷护理讲课件
- 微信工作群规定管理制度
- 甲亢疾病案例分享会
- 2025年高校教师资格证之高等教育学通关题库(附答案)
- 电子版实习协议书
- 新华社 校招 笔试题目及答案
- 第十二讲民族危亡与民族意识觉醒(1840-1919)-中华民族共同体概论专家大讲堂课件
- 消防风机房管理制度
- 中华民族共同体概论知到课后答案智慧树章节测试答案2025年春丽水学院
- 石油工程与装备 第三章 我国常用钻机(1)11版学习课件
评论
0/150
提交评论