APP下载

基于Struts2框架的产品序列号管理系统的研究

2015-05-30康英健杨洪雪马蕾

康英健 杨洪雪 马蕾

摘要:Struts2是目前非常流行的基于MVC的Web应用框架,它遵循J2EE规范。本文使用Struts2框架设计产品序列号管理系统。首先介绍Struts2的技术特点和工作机制。然后对产品序列号管理系统分析设计,列出系统主要的功能,对系统实现过程中的关键技术进行说明。最后对Struts框架在Web应用中的作用做出总结。

关键词:MVC Struts2 产品序列号 web应用

【中图分类号】TP311.52

1. 引言

“S/N”码是serial number的缩写,也叫产品序列号。产品的序列号是指用一个唯一的代码,来定义和区分每一个产品。这个序列号可以根据预定义的编码规则自动生成,也可以手工来编制。其代表着产品合法身份。序列号如同人的身份证,人手一个,记录产品的相关信息,主要被用来管理单品,即一物一码的管理。

产品在入库时批量生成序列号,出库时批量指定序列号。产品序列号在生产厂家主要作用于产品生产进程的控制,生产质量管理,产品销售的追踪,产品售后服务多个方向,还可以有效的降低窜货的发生;在商家主要是根据“S/N”码来进行保修确认、保质期管理、召回管理、防窜货管理、防伪管理等应用。通过序列号管理实现序列号在生产、销售及库存业务中的完整流转,还可以加强单品在采购、库存、制造、销售等各个业务环节的追溯。目前是互联网时代,各种软件的需求越来越大。实现产品序列號管理软件在企业中有着广泛的应用空间。本文进行了基于Struts2框架的产品序列号分配系统的研究。

2. Struts2框架简介

Struts是Apache软件基金会赞助的一个开源项目,是在MVC模式基础上构建Web应用程序的一种开发源码框架。

MVC是所有面向对象程序设计语言都要遵守的规范。MVC将一个应用分为3个基础组成部分,模型、视图和控制器。这三个部分以最少的耦合协同工作,从而提高应用的可扩展性和可维护性。视图为JSP页面,它主要负责显示工作,控制器由Servlet来充当,它主要负责数据的收集、业务逻辑的处理及信息的转发,模型由JavaBean来充当。

Struts框架采用Java Servlet、JSP技术,实现了基于Java EE Web应用的MVC设计模式的应用框架。Struts1以ActionServlet为核心控制器,完成对用户请求的接收工作。Struts2不是struts1的升级版,它是在WebWork基础上衍生出来的,以WebWork优秀的设计思想为核心,吸收了Struts1框架的部分优点,提供了一个更加整洁的MVC设计模式实现的Web应用程序框架。Struts2引入了几个新的框架特性:从逻辑中分离出横切关注点的拦截器、减少或者消除配置文件、贯穿整个框架的强大表达式语言、支持可变更和可重用的基于MVC模式的标签API。 Struts2充分利用了从其它MVC框架学到的经验和教训,使得 Struts2框架更加清晰灵活。

3. 系统总体结构设计

该系统在windows环境下,采用J2EE+Jsp+Struts2框架设计,数据库采用SQLServer,数据库连接采用JDBC方式。系统的总体结构图如下图所示。

4. 系统实现的关键技术

Struts2框架的配置文件

Struts2框架开发和运行过程中需要使用一些配置文件,例如经常用到的struts.xml配置文件,这个配置文件的主要功能是建立页面与实现类之间的关系,实现业务控制流程。

Struts2框架的标签库

Struts2框架中提供了控制流程和输入数据等操作的标签库,在程序编写过程中,使用Struts2标签库可以减少代码的编写量。如在调用表单时使用struts2标签库只需要输入就可以了。

Struts2框架的输入校验

在web应用过程中,用户输入的数据是复杂多样的。在实际工程开发中,要求对页面输入数据进行校验,只有符合规定和格式的数据才能进入系统中。Struts2框架提供了一套非常强大的输入校验体系,可以完成绝大部分输入校验,同时还可以完成客户端校验和服务器端校验。它提供了多种校验器,包括:Required必填校验器、Requiredstring必填字符串校验器、Stringlength字符串长度校验器等。通过strtus 2校验器,程序员只需要通过简单的调用操作就可以完成用户注册和用户登录等功能的设计。

Struts2框架的拦截器

Struts2采用拦截器处理用户的请求,允许用户的业务逻辑控制器与Servlet API分离,从而弥补了Struts1的不足和缺陷。Interceptor拦截器是Struts2的核心技术之一,它可以动态拦截Action调用,在Action执行前后执行拦截器本身提供的各种web项目需求。使用拦截器可以把通用的模块从Action中提取出来,供其他Action项目复用。拦截器可以实现权限控制,跟踪日志,跟踪系统的性能瓶颈。Struts2核心功能是在拦截器中实现,将这些公共处理从实际业务处理代码中剥离出来,减少开发工作量和便于程序维护,有利于系统的调用。

在struts 2中允许将多个拦截器组合在一起成为一个拦截器栈,在调用拦截器栈时会按其定义的顺序进行调用拦截器,可以拦截Action中相应的方法和字段。自定义拦截器需要3步,一是定义一个实现Interceptor接口的类,实现拦截器逻辑,二是在struts.xml中配置拦截器,三是在Action中引用拦截器。

5. 结束语

Struts2框架作为一种MVC的实现方式,具有将表现层和后台业务处理分离的特点。十分适合大型Web应用的开发和维护,并且易于扩展。大大降低了系统开发和维护的成本,提高了系统模块的可复用性,在开发中起到了重要的作用。

参考文献:

[1] 蒋晨琛 来学伟 基于Struts架构的在线投票系统的设计与实现 三门峡职业技术学院学报 2014年12月第12卷第4期

[2] 章邺 基于Struts2框架的图书馆内部管理系统的研究 长春大学学报 2011年12月第21卷第12期