企业兼职员工管理系统的设计与实现内容摘要:

耦合度,提高应用的可扩展性。 MVC 模式经 历了 Model1 和 Model2 两种模式, Struts 框架主要是由 Model2 模式演变而来。 Struts 的控制层 Controller 部分主要由两个部分组成,系统核心控制器和业务逻 辑控制器。 其中系统的核心控制器主要由 ActionServlet 担当,这个类继承 HttpServlet 类,是一个标准的 Servlet。 ActionServlet 主要负责拦截用户的 HTTP 请求,拦截请 求之后根据配置文件将请求转发给合适的 Action 进行处理,或者直接转向其他的 JSP 等资源。 业务逻辑控制器主要由程序员编写的 Action 来代替,不同的 Action 完成不 同的业务,它们主要负责处理用户请求,这些业务控制器不具有实际的处理能力, 它们大多只是控制方法的执行,而实际的业务方法主要还是通过调用 Model 来 完成 的 [1014]。 Struts 中有 3 个重要的对象: Action、 ActionForm 和 ActionForward,它们构成了 Struts 的核心内容。 一般在运用 Struts 框架的过程中,我们主要在 文件中配置这些 Action、 ActionForm 和 ActionForward。 ActionForm 可以实现的很简 单,比如一个普通的 JavaBean,只需为每个属性提供相应的 setXXX 或 getXXX 方法 即可。 ActionForm 主要用于封装用户请求,比如在前台页面中点击提交后,容器会 将相应的请求参数封装到对应的 ActionForm 中, ActionServlet 转发用户请求时就将 该 ActionForm 一并转发到 Action 中。 所以在 Action 的方法中,我们就可以通过 ActionForm 来获得用户的请求信息 [15]。 在配置文件中配置 Action 时,不仅需要指明该 Action 的实现类,还需要配置相 应的 path,在 Action 中还可以配置有效的 Forward,这是一个局部的 Forward。 配置 5 华 中 科 技 大 学 硕 士 学 位 论 文 ActionForm 时,可以配置局部 Forward 和全局 Forward。 局部 Forward 在 Action 里配 置,仅对该 Action 有效。 全局的 Forward 在 globalforwards 元素中配置。 Hibernate 技术 在 SSH 框架中对于持久化操作主要使用 Hibernate 来完成,与以前访问数据库时 使用 JDBC 来访问相比, Hibernate 采用了一种面向对象的方式来操作关系数据库, 避免了 JDBC 访问数据库那种过程化的编程方式 [16]。 Hibernate 是目前比较流行的 ORM 框架, ORM 是对象关系模型,它是一类框架 的总称。 当前流行的 ORM 框架主要有 Hibernate、 Entity EJB、 iBATIS、 Oracle 的 TopLink。 相比其他几种产品, Hibernate 使用的更广,它将 SQL 操作完全封装成对 象化的操作,同时它也是一个开源框架,用 JAVA 语言完成,是一个面向 Java 环境 的对象 关系映射工具 [1719]。 使用 Hibernate 框架时,需要用到持久化对象 PO( Persistent Object), PO 对象的 主要作用就是来完成数据库的持久化操作,比如通过这些 PO 对象对数据库中的数据 进行查询、添加、删除、修改等操作。 在 Hibernate 框架中需要用到映射文件,比如 hibernatemapping 元素下有多个子 元素 class,这些 class 元素对应不同的 PO 对象,即持久化对象。 通过 property 元素 将 PO 对 象的属性和数据库表中的属性对应起来。 持久化对象只有在 Session 的管理下才能完成数据库的访问,这个 Session 不是 Servlet 或 JSP 中的会话对象,它是一个轻量级的内存区域对象。 根据持久化对象和 Session 的关系,持久化对象 PO 可能有如下三种状态:临时状态、持久化状态、游 离状态 [2022]。 当 PO 是临时对象时,表明它不处于 Session 的缓存中,在数据库中没 有对应的记录。 当 PO 是持久化对象时,表明它位于一个 Session 实例的缓存中,它 和数 据库中某个记录对应,在清理 Session 缓存时,会根据持久化对象的属性来同步 更新数据库。 当 PO 对象是游离对象时,表明它不再位于 Session 的缓存中。 Hibernate 框架来提供了强大的查询功能,主要有以下 4 中查询方法: HQL 查询、 条件查询、 SQL 查询、数据过滤。 大多时候主要运用的是 HQL 查询方法。 HQL 是 6 华 中 科 技 大 学 硕 士 学 位 论 文 Hibernate Query Language 的缩写,和 SQL 语法比较 相似,不过 SQL 是一种面向过 程的查询语言,而 HQL 是一种面向对象的查询语言,它支持继承和多态等特征 [23]。 Spring 技术 Spring 是一个轻量级的框架,在 J2EE 企业开发中提供了一种解决方案,能很好 的整合表现层、业务逻辑层、数据持久层,和 Hibernate、 Struts 做到无缝整合。 Spring 的核心是依赖注入和面向切面编程 [2325]。 Spring 的依赖注入是一种优秀的解耦方式,它通过配置文件将 bean 组织在一起, 而不是通过硬编码 方式。 依赖注入有两种方式,一种是设值注入,另一种是构造注 入。 设值注入就是指将调用者的实例以 set 方法传入,这种方式在 Spring 中大量使用。 构造注入就是指通过构造函数来完成依赖关系的设定。 Spring 中有一个基本概念就是 bean,其中 bean 可以理解成一个 Java 对象,任何 Java 组件都是可以当做 bean 来处理,比如数据源、 SessionFactory 或者事务管理器。 在整个应用中需要用到的各层对象都可以通过 Spring 容器来生成,这些 bean 受 Spring 来管理,我们只需直接使用,不用担心这些对象如何生成或者什么时候以及怎么销 毁。 Spring 容器中有 2 个主要接口,一个是 BeanFactory,另一个是 ApplicationContext, 它们是产生 bean 的工厂,同时来管理 bean 的生命周期。 Spring 能够很好的整合 Hibernate 框架, Spring 提供的依赖注入特征,能够很轻 松通过配置文件注入 SessionFactory 等重要组件。 此外, Spring 的 AOP 特性还提供 了很好的事务处理管理。 Spring 提供了对 DAO 的支持,能够很大程度上简化 DAO 组件的开发。 Spring 提供的 HibernateTemplate 可以将 Hibernate 的持久化操作模板化, 从而使持久化操作简单化。 Spring 能够很好的整合 Struts 框架, Struts 框架是一种 MVC 模式,它里面的一 些 Servlet 类需要随容器一起启动。 由于 Spring 都应该在容器启动时自动加载,所以 Struts 和 Spring 整合中,采用的是让 MVC 框架来复制创建 ApplicationContext,容器 加载应用时自动创建 Spring 容器,然后当需要相应的 Action 时,就根据配置文件中 的设置,由 Spring 容器来生成,最后转发到相应的 path 中。 7 华 中 科 技 大 学 硕 士 学 位 论 文 DWR 框架 DWR 全称是 Direct Web Remoting,它允许 JavaScript 能够以 AJAX 原则调用服 务器中的 Java 方法,获得 Servlet 中的数据。 这样就可以在 JavaScript 中使用 Java 代 码,如同它们就是浏览器本地代码一样。 在前台页面调用的 Java 方法实际上是服务 器端的 Java 类方法,出于安全的理由,开发者必须在配置文件中指明哪些 Java 类或 方法是可以被外部访问的。 DWR 是以一种基于 AJAX 技术的框架,它的目的是以一种简单的方式使用 Ajax 和 XMLHttpRequest 对象。 它允许 WEB 开发者能在 JavaScript 中直接访问服务器端 的 JavaBean 中的方法。 DWR 是一种 Ajax 的 Java 实现,它可以通过 JavaScript 直接调用远程组件的某 些类或方法,这样减少 Web 开发的时间。 对于那些和用户频繁交互的应用程序,可 以使浏览器不用刷新页面而直接从服务器端获得数据并显示出来,因为 Ajax 技术的 出现,改变了传统 HTTP 请求响应的过程。 此外, DWR 能够彻底分离表现层和业务 逻辑,节省网络带宽,加快用户请求的响应时间。 使用 DWR 进行开发时,有如下一些步骤,首先需要配置 DWR 的 servlet,这在 配置文件 里面完成。 然后编写 服务器端的 Java 类,接下里就可以编写 文件了,在该配置文件中指明 JavaScript 可以访问的 Java 类。 最后在前台页面代码 中编写 JavaScript 函数,将所需的 js 文件加入网页文件中。 本章小结 本章主要介绍了系统中用到的一些关键技术,系统主要采用是基于 J2EE 来实现 的,首先介绍了 JSP 技术,主要是展现层用到的页面显示技术,然后介绍了 Struts、 Hibernate、 Spring 框架,最后介绍了一种 Ajax 框架 DWR 技术,系统中主要是将这 些技术整合使用,以达到系统的可维护、可扩展、易修改等特性。 8 华 中 科 技 大 学 硕 士 学 位 论 文 3 企业兼职员工管理系统的分析与总体设计 系统需求分析 系统功能需求 需要建立一个类似于网站的应用系统,在全国各地均可登陆和使用该系统,公 司可以在该系统上发布兼职人员需求信息,进行人事和工作管理,该系统的各种使 用人员或者单位可以登记相关信息,各类使用人员 可以自动注册并发布信息,这些 信息经过积累就成为公司的业务工作资料库。 通过该系统,全国各地的兼职工程师 能够完成各项具体工作。 兼职工程师管理系统具体而言可以划分为 5 个功能模块:招聘管理、入职管理、 考核管理、离职管理、薪酬管理。 具体各个模块的功能如下介绍: 招聘管理:本系统建成后,招聘过程中希望达到登记招聘需求,记录人员面试 情况,记录招聘记录。 入职管理:复试通过后,自动转入入职流程。 系统可以通知后台人员分布工号、 邮箱;兼职人员可以自己填写个人信息。 考核管理:入职考核与入职考试 成绩对应。 日常考核和日常培训考试对应。 离职管理:离职申请、离职审核、离职信息查询。 薪酬管理:根据考核信息核定薪酬,月底薪酬可以根据系统统计个项目各人员 薪酬。 招聘流程具体如下: ( 1)临时发起招聘 /部门正常周期招聘并形成招聘计划,每个招聘计划,均采用 标号形式予以区分。 以邮件形式提醒兼职工程师,开始进行人员招聘。 ( 2)人员招聘首先兼职管理员通过电话面试,了解工程师基本信息,以及是否 满足工作需要,并满足则标注原因,进入人才库储备。 ( 3)兼职管理员将满足工作需要的应聘人员信息填入《 面试评估表》,转管理 员或项目经理面试,面试未通过,则标明原因,进入人才储备库。 9 华 中 科 技 大 学 硕 士 学 位 论 文 ( 4)部门经理对应聘人员进行技能评估和人员担任职位分。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。