【SQL开源代码栏目提醒】:网学会员在SQL开源代码频道为大家收集整理了“基于APPFUSE开源框架的人力资源管理系统设计与研究 - 经济学奖“提供大家参考,希望对大家有所帮助!
基于AppFuse
开源框架的人力资源管理系统设计与研究理论研讨 高纪文 约3245字 摘要本文围绕人力资源管理系统结合软件工程的开发理论根据部门外聘人力资源管理业务进行系统需求分析在AppFuse
开源框架的基础上对StrutsSpringHibernate的Web开发流程做了深入的研究。
关键词人力资源管理系统MVC模式
开源框架 企业人力资源管理是企业管理的一个重要内容随着时代的进步企业规模也逐渐扩大。
如何管理好企业内部员工的信息成为企业管理中的一个重要问题。
建立一个界面友好、架构设计合理的人力资源管理系统是十分必要的。
它可以为部门进行有效的人力资源管理并为公司节约大量的人力、物力减少工作中容易出现的一些问题。
本系统的主要功能主要实现部门对外聘员工招聘管理、外聘员工薪金管理、项目资源管理、综合信息查询、报表生成等。
使用该系统不仅可以方便部门人力资源的各层管理人员处理日常事务而且方便项目经理采用外聘员工、人力资源秘书计算外聘员工薪金等工作。
使用后期可在此基础上扩展本系统使之涵盖业务管理的各个方面形成更全面更完善的产品。
一、J2EE技术结构 由众多知名厂商共同制定的J2EE平台规范利用了Java2平台的技术优势为企业整体解决方案的开发、部署和管理提供了一套完整的体系结构。
J2EE技术的基础就是Java2平台不仅加强了该平台中的许多优点还提供了对业务逻辑封装的EJB组件技术、支持HTTP访问的Servlets和JSP以及XML的全面支持另外它还定义了关于事务管理的JTA和JTS接口及保证消息传递的JMS服务等。
二、基于MVC系统模型的AppFuse框架 用AppFuse进行开发通常有三种模式“自上而下”、“自下而上”以及“混合模式”。
“自上而下”是由Java对象向数据库对象创建的过程比较符合面向对象的设计思维但是为此要编写大量的XDoclet的tag。
“自下而上”是由数据库对象生成Java对象的过程只需要提供数据库表结构即可。
然而对于较为复杂的系统尤其是类之间具有大量关联的情形仍然需要采用“自上而下”的创建模式。
因此在实际的项目开发中将两种模式进行混合使用比较常见这也就是“混合”模式。
三、基于Struts框架在人力资源管理系统实现中的应用 1.人力资源管理系统的基本框架 本系统采用基于AppFuse的开发模式可以生成60左右的
代码并且不同模块
代码风格一致有利于开发人员快速上手。
系统的各个子模块之间功能独立可根据用户的需要动态进行组合各个子模块之间没有直接耦合而是通过数据库之间的联系由框架进行组合子模块的修改只是模块内的局部修改不会导致修改的蔓延从而使系统的可维护能力大大提高降低了系统开发的风险。
人力资源管理系统是基于AppFuse的三层体系结构采用了StrutsSpringHibernate三种
开源框架使用了基于MVC模式的Struts的框架并使用Hibernate进行数据持久层操作使用Spring对各个组件进行依赖注射。
人力资源管理系统共分三个层次数据持久层、业务逻辑层、Web层。
根据人力资源管理系统需求的相关内容系统总体模块框图如下页图所示。
2.人力资源管理系统的开发过程 人力资源管理系统主要实现对外聘员工所有相关信息的信息化管理和生成报表等功能。
由于篇幅有限这里仅对身份验证、外聘员工招聘管理、综合信息查询和报表生成模块说明系统。
图片 1用户界面设计。
用户界面是Web应用和用户交互的窗口。
用户界面可以向用户输出信息也可以接收用户的输入信息。
根据需求分析可以制定出用户界面包括用户界面的功能、与用户交互的信息以及用户界面之间的相互切换关系。
ActionForm Bean是Struts提供的表单数据传输对象用于在视图层和控制层之间传递HTML表单数据。
控制层可以从ActionForm Bean中读取用户输入的表单数据也可以把来自模型层的数据存放到ActionForm Bean中然后把它返回给视图。
2登录验证模块设计。
人力资源管理系统采用了AppFuse用户管理用到了容器管理的Form认证方式。
采用基于表单的登录验证方式登录请求由login.jsp处理。
通过静态应用login.jsp将登录请求委派给loginForm.jsp处理。
login.jsp 容器启动时调用监听器StartupListener初始化Spring上下文环境设置DAO type通过LookupDAOHibernate.getRoles取得角色信息存于application scope中。
接着调用UserCounterListener监听器记录用户的登录改变然后通过容器Form认证将请求转给login.jspLogin.jsp静态引用loginForm.jsp由其进行主要的权限认证工作。
loginForm.jsp表单提交后将请求转向/authorize/authorize的请求被login servlet处理。
3外聘员工招聘模块设计。
在人力资源管理系统中外聘员工招聘管理模块是系统的重要组成部分它提供了软件开发经理录用外聘员工的相关功能。
当部门需要招聘外聘员工时派遣公司会提供外聘人员简历首先由部门人力资源秘书将外聘人员简历录入至外聘员工简历库。
软件开发经理根据部门招聘员工的具体要求来筛选简历并进行首轮面试。
通过面试的外聘员工正式进入部门报到部门为其申请办公资源员工等待进入项目。
项目经理根据项目需求进行二次面试。
符合项目组要求的外聘员工正式进入部门项目组不满足要求的外聘员工等待其他项目。
系统利用Spring声明式的事务管理机制系统的所有service类都声明在applicationContext-service.xml中该文件中包含有一个“txProxyTemplate”bean的声明它定义了基本事务策略。
其他的service类从“txProxyTemplate”继承并可以“重写”事务策略。
4综合信息查询模块设计。
系统在综合信息查询中主要完成以下模块的查询工作外聘员工查询条件、人力资源秘书查询条件、项目经理查询条件、软件开发经理查询条件。
这个查询条件涉及多表关联在系统数据量非常大的情况下为了提高系统性能必须对
SQL语句进行优化其中not in与not exists的用法就显得格外重要。
因为在子查询中not in对子查询中的表执行了一个全表遍历。
为了避免使用not in在开发过程中通常采用外连接Outer Joins或not exists。
系统采用的是Hibernate2进行数据持久层操作由于Hibernate2不支持外连接以及一些复杂的
SQL语句对于这种情况系统采用创建视图View将复杂的查询条件写入视图中在DAO层的相关对象中向视图传入查询条件中指定的参数视图返回查询结果并由系统表示层将查询结果展示给用户。
5报表生成模块设计。
人力资源管理系统相关的主要有“部门面试名单一览表”、“外聘员工月度薪资支付表”、“外聘员工年度薪资支付表”、“外聘员工一览表”、“外聘员工当前状态一览表”、“项目资源一览表”、“派遣公司一览表”等报表。
考虑到部门相关职员的需求系统报表提供多种导出选项CSV文件、Excel文件、XML文件、PDF文件。
系统通过在JSP页面调用AppFuse 提供的Display tag标签库来完成对页面表单的分页、数据导出、分组、队列排序等功能。
四、结束语 该人力资源管理系统实现了基于B/S结构的员工信息管理开发了用户身份验证、外聘员工招聘管理、外聘员工薪金管理、部门项目资源管理、报表生成、综合信息查询等功能。
建立了各个操作人员的使用权限对数据和流程严格控制保证数据的安全性加强数据的完整性实现了人力资源管理工作的网络化、信息化管理。
作者单位上海电机学院 参考文献 1孙卫琴.精通Struts:基于MVC的Java Web设计与开发M.北京:电子工业出版社2004:36-58. 2夏昕曹晓钢唐勇.深入浅出HibernateM.北京:电子工业出版社2005:47-69. 3林信良.Spring技术手册M.北京:电子工业出版社2006:66-75.
上一篇:
Domain
下一篇:
法律专业开题报告范文