基于STRUTS 2框架产品信息Web发布系统的实现_第1页
基于STRUTS 2框架产品信息Web发布系统的实现_第2页
基于STRUTS 2框架产品信息Web发布系统的实现_第3页
基于STRUTS 2框架产品信息Web发布系统的实现_第4页
基于STRUTS 2框架产品信息Web发布系统的实现_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、基于STRUTS 2框架产品信息Web发布系统的实现摘要在对STRUTS2框架和V2模型分析比拟的根底上,研究了STRUTS2框架的施行方法,将STRUTS2框架应用于实际开发,建立了产品信息发布系统模型,并分析了开发中的关键问题。关键词STRUTS2;V2;信息发布系统1引言随着互联网技术的飞速开展,JavaEE以其开放性、扩展性和各大厂商的支持,逐渐成为eb应用软件的开发标准。近几年来,STRUTS框架作为V模型的一个良好实现,使基于JavaEE的eb应用的开发可以获得更好的可扩展性、可重用性、易开发性和易维护性。STRUTS出现至今,其自身也在不断地成熟和完善,STRUTS2(ebrk2

2、)的发布为JavaEEeb应用的开发者提供了更好的V实现和更加简单易用的施行方法。我们综合可扩展性、易使用性等各方面考虑,采用STRUTS2框架,以及JSP、Servlet、JavaBean、JDB等技术开发本产品信息eb发布系统,充分发挥了STRUTS2框架的优势,使得系统层次明晰,保证了系统的稳定高效,并获得了较好的扩展性和易维护性。2STRUTS框架概述STRUTS是ApaheJakarta工程组的一个pen-Sure工程,是V模型的一个良好实现。V(del-Vie-ntrller)模型把一个应用的输入、处理、输出流程按照del、Vie、ntrller的方式进展别离,使得应用程序设计过程

3、更加明晰,进步了系统的灵敏性和可扩展性。V应用于eb便开展出了V2模型,在V2模型中,Vie由JSP来担当,ntrller由Servlet来担当,del由JavaBean/EJB来担当。Servlet先承受客户端的恳求,然后调用相应的Bean进展业务逻辑处理,根据处理结果再调用相应的JSP页面,JSP页面根据存储结果的Bean生成结果页面,返回给客户端。STRUTS框架包括一组互相协作的类(组件)、AtinSerlvet以及JSPTaglib标签库,实现了V2模型中的ntrller和Vie,而V2模型中的del必须由开发者自己来实现,STRUTS提供了抽象类Atin,使开发者可以将del应用于

4、STRUTS框架。3STRUTS2体系构造STRUTS2是STRUTS1的更新版本,对STRUTS1进展了改良和晋级,例如用Atin接口取代了Atin抽象类,为每一个恳求创立一个Atin对象,去掉了AtinFr类,用重新定义的struts.xl替代了struts-nfig.xl,数据校验方法更加灵敏以及采用了分层的国际化方法等等。STRUTS2更好地实现了V2模型。其体系构造图和处理流程如图1所示。图1STRUTS2框架体系构造在HttpServletRequest到达Servlet容器之前要经过一系列过滤器链,包括AtinntextleanUp过滤器等;然后,FileterDispather

5、被调用,FileterDispather参考Atinapper来决定恳求是否与相应Atin相关联。假如Atinapper确定了恳求对一个Atin的调用,它就会将控制权委托给AtinPrxy,AtinPrxy创立对应的Atin实例,然后AtinPrxy参考由struts.xl配置的nfiguratinanager生成AtinInvatin。之后,Atin和Intereptr的执行都由AtinInvatin来控制。在Atin执行前可能会执行多个Intereptr。当Atin执行完毕后,AtinInvatin根据struts.xl中的result配置查找相应的结果页面,并将Atin的执行结果输出到结

6、果页面中。这个页面一般是使用STRUTS提供的标签库编写的JSP页面。接下来,AtinInvatin控制Intereptr以反序执行。最后,HttpServletRespnse根据eb.xl中的配置通过相应的过滤器,返回客户端。4STRUTS2框架的施行1)Atin类的施行在STRUTS1中,必须继承Atin抽象类,才能将应用集成到STRUTS框架,而在STRUTS2中的施行方法更加简单,只需要实现Atin或AtinSupprt接口,甚至可以使用有exute()方法的PJ。而且STRUTS2取消了AtinFr类,直接在Atin类中保存页面提交的输入信息和需要提交给页面的输出信息,对于数据的操作

7、更加简便。在exute()方法中可以直接处理这些信息,并实现对数据库的查询、增加、删除和修改。2)映射关系的配置STRUTS2使用重新定义的关键配置文件struts.xl来代替STRUTS1中的struts-nfig.xl,通过struts.xl控制Atin恳求到Atin类的映射,以及Atin类到JSP页面的映射关系。在struts.xl文件中,主要使用三种标签定义这些映射关系:(1)使用pakagenae=naespae=extends=标签,配置eb应用中用到的Atin类的包的相关属性,nae属性指定Atin类的包名。(2)使用atinnae=lass=标签,配置Atin类的相关属性,其中

8、nae属性指定Atin的类名,lass属性用“包名.类名的格式指定Atin类完好的包名和类名。(3)使用result标签配置某个Atin类的输出页面,在result标签的内容中,以“/开头表示以发布目录作为当前目录。3)标签库和国际化的施行在STRUTS框架中,JSPTaglib标签库和国际化(Internatinalizatin)是对V2模型中Vie模块的实现。通过在JSP页面中使用框架提供的标签库,可以实现显示Atin中动态数据的目的。对于国际化,STRUTS1将所有的资源簇(ResureBundle)保存在一个本地资源文件appliatin.prperties文件中,而STRUTS2提供

9、了分层的本地资源文件,我们可以将用到的资源簇分别存放在这些资源文件中,框架可以通过标签属性和getText()等方法使用资源文件的内容。这些资源文件的搜索顺序是:Atinlass.prpertiesBaselass.prpertiesInterfae.prpertiespakage.prperties。在开发过程中通常使用pakage.prperties保存一个pakage中用到的资源簇。在这些资源文件中,其内容以“关键字=值的形式保存,如“usernae=UserNae。5系统设计实现5.1系统的层次构造本系统的层次构造如图2所示。图2系统层次构造本产品信息发布系统总体上采用“阅读器/eb效

10、劳器/数据库的三层体系构造。eb效劳器承受恳求,STRUTS框架负责恳求的处理,在框架内通过特定的映射关系调用相应的业务逻辑,并将结果以JSP页面的形式返回客户端阅读器,实现与客户端的交互。数据库效劳器用来存储系统用到的所有数据,数据可以由管理员通过数据库管理程序录入,也可以由拥有权限的客户通过客户端进展管理。系统的客户端只需要一个阅读器,不同的用户通过阅读器对数据进展查询、增加、删除、修改操作,对信息进展管理。5.2系统功能构造设计本系统的功能构造如图3所示。图3系统功能构造根据需求分析,用户可分为一般用户、注册用户、商家用户和系统管理员。一般用户进入该网站后,可以阅读该网站的商品内容,查找

11、需要的商品信息和商家信息;注册用户登录后,除了拥有一般用户的全部功能以外,还具有登记缺货,向商家留言,联络商家等功能;商家用户登录后,除了拥有注册用户的全部功能外,还具有查询缺货,发布新产品,产品下架等功能;系统管理员具有系统的全部功能的使用权限,可以查看所有用户资料,核准商家注册,删除用户和商家信息等。5.3数据库设计本系统使用SQLServer2000作为后台数据库,对数据信息标准化后可以得到以下几个数据库表:user:(用户ID,用户名,真实姓名,密码,性别,地址, ,e-ail,地址,密码提示问题,密码问题答案,简介,权限)用来记录用户信息,其中“权限标明该用户的使用权限是注册用户、商

12、家或者是系统管理员。bilePhne:( 编号,品牌,型号,产地,配件,技术指标,上市时间.)用来记录各商家所有 产品的信息。B2Pap(Bss2Prdutap):(商家ID, 编号,上架时间,下架时间,库存,售价)用来记录单个商家发布的 产品的信息。S(utfStk):(编号, 名称,品牌,型号,登记时间,用户ID)用来记录用户登记的缺货信息。5.4系统主要功能模块的实现本产品信息发布系统为众多 销售商家提供了一个统一的信息发布平台,商家用户登录后可以将自家销售的产品信息发布到本系统上供其它用户查看,注册用户可以通过该系统登记缺少的产品,商家可以根据登记的缺货调整自家的上架产品。因此,商家是

13、本系统的主要用户对象,产品信息发布功能是本系统的核心功能。(1)商家发布产品信息的程序文件是Phne_inf_publish.lass,该类实现了AtinSupprt接口,用相应的属性保存了JSP页面提交的产品信息数据,实现了相应属性的getter和setter方法,并在exute()方法中处理这些数据,将产品信息写入数据库,主要代码如下:ntextinittx=neInitialntext();ntexttx=(ntext)inittx.lkup(java:p/env);bjetbj=(bjet)tx.lkup(jdb/PlatfrDB);this.ds=(DataSure)bj;Resul

14、tSet.TYPE_SRLL_SENSITIVE,ResultSet.NUR_UPDATABLE);pakagenae=platfrnaespae=/platfrextends=struts-defaultatinnae=Prdut_inf_publilass=platfr.Prdut_inf_publiresult/platfr/prdutList.jsp/result/atin(3)prdutList.jsp页面使用Taglib显示动态数据,部分代码如下:tablebrder=1trth 编号/thth品牌/thth型号/thth产地/thth配件/th/trlgi:presentnae=resultlgi:iterateid=phnenae=resulttype=platfr.Phnelgi:presentnae=phnetr/tr6完毕语本信息发布系统采用STRUTS以及JSP、servlet

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论