基于S2SH框架的毕业生就业管理平台的设计与实现
2013-03-23吕太之李春春
吕太之 李春春 刘 畅
(江苏海事职业技术学院,江苏 南京 211170)
1.引言
面对当前毕业生严峻的就业形势,进行毕业生情况分析显得非常有必要。而随着计算机网络与信息化的发展,社会中的各项事物也向信息化推进。与此同时,信息化在社会各行业的发展与提高上也起到了巨大推动作用。将信息化引入到毕业生就业分析具有实际意义,开发毕业生就业管理平台为就业工作的分析和改进提供了重要手段。
本文设计的毕业生就业管理平台由4大功能模块组成:前台显示,后台管理,数据建模,后台服务模块。系统的开发是基于Java EE平台,采用S2SH框架来实现的。
2.S2SH框架
MVC架构是"Model-View-Controller"的缩写,中文翻译为"模型-视图-控制器"。MVC应用程序总是由这三个部分组成。S2SH是一种优秀的MVC应用框架,它是由Struts2、Spring和Hibernate三种轻量级框架技术集成的一种新的MVC应用框架。系统采用S2SH框架实现MVC分层模式。
3.Spring+Hibernate实现模型层
模型层处理的是与业务相关的逻辑请求。平台中该层主要包含实体类和数据库操作部分。数据库操作主要由Spring和JPA集成的持久层来完成。
3.1 Hibernate实体类映射
实体类是对数据库某张表的映射,数据库的每一张表都有对应的实体类。系统通过Hibernate的注解来完成实体类和关系表之间的映射。@Entity注解将一个类声明为实体Bean,通过table属性关联到数据库表。@Id注解声明了该实体Bean的标识属性。@Column声明了该实体类的属性,通过name属性关联表中字段。OneToMany和ManyToOne注解声明了实体类之间的关系。
3.2 数据库连接池
本系统采用了DBCP来完成连接池的实现,DBCP是一个依赖Jakarta commons-pool对象池机制的数据库连接池。它可以在spring,iBatis,hibernate中调用dbcp完成数据库连接,tomcat中也提供了dbcp的jndi设置方法。高校毕业生就业情况分析系统采用了Spring框架中的集成使用,只需要导入对应的jar,并且修改application-context配置文件中的datasouce配置。
3.3 数据操作包
数据库的操作通过spring+JPA的集成来实现。系统中,所有数据库的操作都封装到相应的Dao类中,本系统封装了BaseDao类,该类过继承org.springframework.orm.hibernate3.support.JPADaoSupport来简化操作,提供了基本的 CRUD(create,retrive,update,delete)功能,系统中其它Dao通过继承该类,简化了对数据库的操作。
4.Spring+Struts2实现控制层
该层由与业务逻辑对应的action和平台拦截器共同实现。
4.1 控制Action
平台采用struts2框架,业务逻辑由核心控制器FilterDispatcher和用户编写的业务控制器组成。核心控制器FilterDispatcher是Struts2框架的基础,包含了框架内部的控制流程和处理机制。业务控制器Action和业务逻辑组件是需要用户自己来实现的。对于每个业务除了编写相应的Action、业务逻辑和相应的Dao包的同时,还需要编写相关的配置文件来提供给核心控制器FilterDispatcher来调用。
4.2 拦截器
拦截器主要实现用户权限判断、日志记录等工作,其机制是使用AOP(面向切面编程)来简化Web开发中的某些应用。平台采用拦截器来实现平台中的权限检查。
5.Struts2+JSP实现视图层
系统开发使用Struts2+JSP实现视图层。Struts2标签库提供了主题、模板支持,极大地简化了视图页面的编写,而且,Struts2的主题、模板都提供了很好的扩展性,实现了更好的代码复用。Struts2允许在页面中使用自定义组件,完全满足了本校系统开发中页面显示复杂、多变的需求。
系统开发中使用的标签库主要包括表单标签、逻辑标签、国际化标签等。通过这些标签的综合运用,代码中没有任何业务逻辑代码,便于后期界面的调整和多语言版本的实现。Struts2里的标签却没有分类,在每个jsp文件头上需要加上<%@taglib prefix="s"uri="/struts-tags"%>就可以使用Struts2标签。
以增加院系为例来说明JSP的视图层的实现以及与控制层的交互。增加院系是系统管理模块的基本功能,增加系部的页面是/dep/add.jsp,该页面包含了收集系部信息的表单,需要用到 s:form,s:filed,s:properties等标签。当系部信息输入完毕后,s:from的action属性表示表单的请求地址,该地址被DepManage!add.action,请求对应的Action负责系部管理的请求。如果增加成功返回Success,Success对应的jsp是/dep/list.jsp页面;如果增加失败,返回failure,failure对应的页面仍然是/dep/add.jsp页面,通过Struts标签提示错误信息。
6.结束语
本文介绍如何使用S2SH框架实现毕业生就业管理平台。S2SH框架可以很好地将web系统分为三层,使得程序开发人员更清楚地掌握项目的进度从而对系统进行更好的管理,保证了系统的稳定性、灵活性、易维护性。
[1]李容.基于M V C模式的W eb应用研究[J].软件导刊,2010,(01):19-21.
[2]袁嘉.基于S truts+S pring+H ibernate的W eb开发框架[J]. 网络安全技术与应用2008,04:210-214.
[3]潘峰.宋扬.基于S truts框架的商务网站平台设计[J]. 商场现代化,2008,09:172-176.
[4]李歆.基于J2EE的网上交易系统的开发[J].咸宁学院学报,2007,06:54-58.
[5]田小波,陈蜀宇.M V C设计模式在J2EE架构下的研究与应用[J]. 西华大学学报(自然科学版),2007,02:27-31.