基于jsp的网上招聘系统的设计与实现毕业论文(编辑修改稿)内容摘要:

用来做什么,谁将去使用它。 它们分别是用例和角色,角色是位于系统外的人或其它 系统。 通过 对上面的业务进行分析,画出 网上招聘系统的用例图如图 1 所示: 用 户查 看 公 司 职 位 信 息招 聘 系 统查 看 求 职 者 信 息浏 览 职 场 新 闻创 建 账 户 e x t e n d s 注 册 用 户 e x t e n d s 登 录退 出管 理 账 户个 人 ( 单 位 ) 用 户 e x t e n d s 发 送 邮 件添 加 到 收 藏 夹管 理 邮 件管 理 收 藏 夹网 站 管 理 员发 布 新 闻管 理 新 闻管 理 单 位 用 户管 理 个 人 用 户 e x t e n d s 图 1 网上招聘系统用例图 从以上的用例图可以看出,系统有三类用户,即系统管理员、注册会员、游客。 这三类用户所需具有的功能各不相同,概述如下。 系统管理员需要的功能有:  对 招聘 新闻 进行 的管理,要能进行添加、删除操作;  对 单位注册用户进行 管理,要能进行删除操作;  对 个人注册用户进行 管理,要能进行删除操作; 网站注册会员需要的功能有:  能够登录进入 到自己的主页 ;  能够 查看信 箱里的信件,发送站内信件、管理信箱的 功能;  单位用户能够发布招聘职位信息、把合适的求职者加入到收藏夹的功能 ;  个人注册用户能够在线编写简历,把合适的单位加入到收藏夹的功能; 游客需要的功能有:  能够注册成为会员;  能够浏览网站; 数据流程图 分析 ( DFD) DFD 图 是 组织中信息运动的抽象,是信息系统逻辑功能模型的主要形式。 它是用一种图形及与此相关的注解来表示系统的逻辑功能,即所开发的系统在管理和处理方面要做什么,图中没有任何具体的物理元素,只是描述信息在系统中的流动和处理情况。 在设计数据流图时,只 要考虑系统必须完成的基本逻辑功能,而不需要考虑如何实现这些功能。 DFD 使用四种基本元素来描述系统的行为,过程,实体,数据流和数据存储。 DFD 方法直观易懂,使用者可以方便地得到系统地逻辑模型和物理模型。 经过对 上面用例的分析和功能分析,画出系统的数据流图如图 2 所示: 图 2 用户的数据流图 3 系统设计 系统 总体结构设计 网上 招聘系统使用的 动态网页 技术,网上内容的展示全部是从数据库读取 的数据,一旦,管理员更新了数据库的数据,前台的页 面也就跟着变化了。 同时,网站的用户可以注册成为会员,用户更新了自己的资料或者成为新的用户,站点上也会动态的反应出来。 所以,站点的呈现永远是最新的数据。 客户 端 :提供基于浏览器的客户界面,客户可以 在本地 浏览 来自 Web 服务器传过来的动态页面,客户 也 可以通过 Web 页面和 Web 服务器交互 , 使用标准的 HTTP 协议。 Web 服务器层: Servlet、 JSP、 Hibernate、 Spring 组件运行在 Web 服务器上, Spring Bean 运行在 Spring容器里, Web 服务器负责生成动态 HTML 页面, POJO 负责 访问数据库和事务处理。 在 Web 服务器层还包括一些供 JSP 和 POJO 组件访问的实用类。 数据库层:存放和维护 Web 应用数据信息。 系统的软件结构如图示: 客户端 Sql 2020 数据库 Struts Actions POJO 业务对象 Spring 容器 Web 服务器 普通用户 显示公司 职位信息 用户注册 显示求职 者信息 显示求职 新闻信息 显示公司 信息 查看 查看 查看 查看 注册申请 用户信息 写入信息 校验信息 用户登录 登录系统 读信息 读信息 收藏夹信息 读信息 新闻信息 读信息 更新注册信息 添加和管理收藏夹 管理求职新闻 添加、删除、修改 收件箱信息 添加、删除、修改 注册用户 职位信息 系统管理员 管理用户信息 发送和管理邮件 管理员信息 添加、删除 校验 删除 删除 图 3 系统结构图 其中 , Web 服务器层采用 MVC Model2 设计模式,是目前较流行的一种软件设计模式,它把系统分成为 3 个模块:模型( Model),视图( View)和控制器( Controller)。 各个模块的功能说明如表 3 所示 : 表 3 MVC 功能模块说明 MVC 模块 描述 模型 代表应用程 序的状态和业务逻辑 视图 提供可交互的客户界面,向客户显示模型数据 控制器 响应客户的请求,根据客户的请求来操纵模型,并把模型的响应结果经由视图展现给客户 各个模块间的相互作用如 下 图 所 示,客户可以从视图提供的客户界面上浏览数据或发出请求,客户的请求由控制器处理,它根据客户的请求调用模型的方法,完成数据更新,然后调用视图的方法将响应结果展示给客户。 视图也可以直接访问模型,查询数据信息,当模型中数据发生变化时,它会通知视图刷新界面,显示更新的数据。 图 4 MVC 模块间的关系 本系统采用 Apache JakartaStruts 来实现 MVC 的模式。 Struts 实质上就是在 JSP Model II 的基础上实现了 MVC 模式的框架。 在 Struts 框架中,模型由实现业务逻辑的 JavaBean 或者 EJB 组件构成,控制器由 ActionServlet 和 Action 来实现,视图由一组 JSP 文件构成 , 其结构如图 5 所 示: (控制器 ) 接受用户请求 调用模型响应用户请求 选择视图显示响应结果 (视图 ) 显示模型状态 接受数据更新请求 把用户输入数据传给 控制器 (模型 ) 代表应用程序状态 响应状态查询 处理业务流程 通知视图业务状态更新 方法调用 事件 通知数据更新 状态更新 用户请求 选择视图 业务处理 图 5 Struts 结构图 网上招聘系统中,中央控制器由 ActionServlet 来完成,这个 Servlet 的实例不需要我们生成,而是在 配置文件中配置,在服务器一启动的时候就加载到服务器的容器中,并一直提供服务。 关键代码如下: servlet servletnameaction/servletname servletclass /servletclass initparam paramnameconfig/paramname paramvalue/WEBINF//paramvalue /initparam initparam paramnamedebug/paramname paramvalue3/paramvalue /initparam initparam paramnamedetail/paramname paramvalue3/paramvalue /initparam loadonstartup0/loadonstartup !—服务器一启动即加载的 Servlet /servlet servletmapping servletnameaction/servletname urlpattern*.do/urlpattern /servletmapping /servlet 传统的项目中,如果涉及到数 据 库的操作,开发者必须自己亲自去写与数据库交互的增删改查 (CUID)的 代码 ,本系统则完全交给时下流行的 ORM(Object Relational Mapping)框架 Hibernate 来完成,这样,用户只需关注业务 逻辑 的具体实现,不需要再去写底层的数据库交互代码, Hibernate 框架自动帮我们生成POJO 对象,代码如下: hibernateconfiguration sessionfactory property name=sa/property property name= jdbc: /property property name=dialect /property property name=sql2020/property property name=goodluck/property 客户端浏览器 (模型 ) Spring Bean (控制器 ) ActionServlet Action (视图 ) JSP Action Action Web 服务器 Servlet/JSP 容器 property name= /property property name=show_sqltrue/property mapping resource=/bean/ / mapping resource=/bean/ / mapping resource=/bean/ / mapping resource=/bean/ / mapping resource=/bean/ / mapping resource=/bean/ / mapping resource=/bean/ / mapping resource=/bean/ / mapping resource=/bean/ / /sessionfactory /hibernateconfiguration 本系统是使用了 Spring 框架技术 , Spring 是 一个流行的 轻量级的 J2EE 开源 应用程序框架 ,其核心代码均来自于真实项目,它的目的是要解决企业级应用程序开发的复杂性, 简化 J2EE 的开发, Spring 是一套基础框架,它能很方便的帮助开发人员更加简单和合理的使用 J2EE 服务,使开发人员能够集中精力实现业务逻辑和其它应用功能。 Spring 提供“一站式”的框架整合方案,涵盖了 J2EE 软件开发中的各个分层,包括持久层、业务层、表示层等。 本系统中使用了 Spring 框架的第三种应用,如图 6 所示: 图 6 Spring 框架 第三种应用 系统中,使用 Spring 容器来管理业务 Bean 对象,使用 Spring 倡导的 IOC 模式来生产业务对象,并且这些业务对象统一的由 Spring 容器来管理,并实现了声明式的事务。 所有的事务由 Spring 容器来处理,所以,开发者不需要在代码中去写实现事务的代码,而是由容器提供统一的管理。 所有用到的业务 Bean 对象的配置 代码如下: bean id=sessionFactory class= property name=configLocation value=classpath: /property /bean ! 配置事务管理器 bean id =txManager class= property name=sessionFactory ref=sessionFactory/ /bean ! 配置 advice tx:advice id=txAdvice transactionmanager=txManager tx:attributes tx:method name=*/ /tx:attributes /tx:advice ! 配置 AOP aop:config aop:pointcut id=serviceOperation expression=execution(* .*.*(..))/ aop:advisor adviceref=txAdvice pointcutref=serviceOperation/ /aop:config bean id=CmailboxDAO class=/ bean id=CfavoriteDAO class=/ bean id=PmailboxDAO class=/ bean id=CompanyDAO class=/ bean id=JobDAO class=/ bean id=PersonDAO cla。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。