【PHP开源代码栏目提醒】:本文主要为网学会员提供“硕士论文-基于轻量级J2EE的网络游戏虚拟物品交易系统 - 其它论文”,希望对需要硕士论文-基于轻量级J2EE的网络游戏虚拟物品交易系统 - 其它论文网友有所帮助,学习一下!
北京邮电大学硕士学位
论文基于轻量级J2EE的网络游戏虚拟物品交易系统:硕士专业:软件工程指导教师:杨文川20070501!基士墼重堡』2量墨筮型垫鲎螫虞型塑丛童星墨堡曲亟过皇塞趣±基于轻量级J2EE的网络游戏虚拟物品交易系统的设计与开发摘要随着数字娱乐产业的不断发展,网络游戏、动漫、影视、音乐等内容产品逐一呈现,打造一个全方位的娱乐平台和一种健康向上的数字娱乐文化品牌,已成为国内外数字娱乐产业一个全新目标,其中网络游戏已成为此产业的重要组成部分,并占领主流娱乐市场。
近年网络游戏发展迅猛,网络游戏用户也不断的增长,当游戏玩家进入游戏世界中,他们花大量的时间与精力培养自己游戏中的虚拟角色,获得虚拟物品,如虚拟“货币”、“装备”、“宠物”、“道具”等等,而这些虚拟物品越来越具有了自身的价值,从而应运而生的,便是这些虚拟物品与虚拟货币间的交易。
为了满足市场需求,全方位地支持网络游戏用户进行网络游戏虚拟物品的买卖交易活动是本文的重点。
本文主要描述如何为某娱乐公司构建一个稳定、灵活、安全的网络游戏虚拟物品交易系统,不对搭建整个系统的详细过程作过多的描述,而是将重点放在如何用分层的设计思想简化系统的设计和开发及如何设计系统中的订单管理和投诉管理两方面。
本文主要特色如下:1)采用当今主流的轻量级J2EE框架Struts+Spring+Hibernate,实现了一个基于分层结构及解耦编程思想的交易系统;2)
设计了一个合适的方案来解决网络游戏虚拟物品交易系统中,买卖双方较为复杂的订单状态转换过程。
本文论述的系统在某数字娱乐公司的虚拟物品交易系统一期建设中得到应用,并正常运行。
该应用经验将为其他网上交易系统应用提供借鉴作用。
关键词:虚拟物品轻量级框架J2EE一一!堡±笪量堡蟹妄星盟|竺!笪鲎丛堡塑塑丑窑璺垂塑笪壁吐生塞堕》THEDESIGNANDIMPLEMENlⅨr10N0FONLINEGAMESⅥ删ALGOODSTRADINGSYSTEMBASEDONLIGHT-WEIGHTJ2EEFRAMEWORKABSTRACTWiththedevelopmentofdigitalrecreationindustry,andtheoutCO—ruingofthosedigitalproductswhichincludeonlinegames,cartoons,mo—vies,musicetc,structuringarecreationplatformandbuildingahealthydigitalrecreationculturehasbecomingthebrandnewtargetofdigitalin—dustrybothdomesticandabroad.Actuallyonlinegameshasbecometheimportantpartofdigitalindustryandalsotakentheleadingroleofdigitalrecreationmarket.Inthepastfewyearsonlinegameshavedevelopedincredibly,moreandmoreplayershavejoinedintotheeverinterestingdigitalgamesworld,andtheyspentmoreandmoretimeandenergytobuildtheirrolesinthevirtualworldtinordertohavemorefunintheonlinegamestheyneedgetthosevirtualequipmentstohelpthem,suchasvirtualmoney,weapons,tools,petsetc,butinordertogetthosevirtualequipmentstheyneedtoextratimeandmoney,thusthosevirtualequipmentsformedtheirvalueandbecomingmoreandmorevaluablebecausemoreandmoreonlinegameplayersneedthem.Bythemeanstimes,onlinevirtualgoodstradecameintobeingaccordingtotheeverincreasingdemand,thusinordertosatisfythedemandingofthemarketallonlinevirtualgoodstradingsystemneededtobebuilt.TheaimofmypaperistoconstructaStable,flexible,andsecurevirtualgoodstradingsystem.ThepapermainlydescribedhowtobuildaconvenientplatfoITnfortheonlinegamesplayerstoexchangewhattheyneedonitfreelyand111l蕉王筮量堡』2至垦曲型塑鲎堂虐塑塑昌奎曼垂缝啦丝盐兰薹业safely,thispaperwillnotgiveouttoomuchdetailsofhowthesystemwasbuilt,infactweemphasizeonhowtousethelayeringtheorytosimplifythesystemdesigninganddevelopmentandhowtodesignthesystemtodealwiththeuser’sorderandcomplaints.Themaincharacteristicsofthissystemareasfollows:I.Thissystemadoptedthemostpopularlight-weightJ2EEframeworkandusedtheStruts+Spring+Hibernatemodel,bydoingthisthesystembuildsupavirtualgoodstradingsystemforonlinegameswhichwasbasedonthelayeringstructureandthedecouplingprogrammingtheory.II.Havingdesignedapropersolutiontodealwiththosecomplexchangesbetweenthesellersandbuyersinthevirtualgoodstradingsystemforonlinegames.Thesystemmentionedinthispaperhasfunctionedproperlyinthefirststageofvirtualgoodstradingsystemofonedigitalrecreationcompany,andtheSuccessexperienceofthissystemcangivereferencestoothersimilaronlinegoodstradingsystem.KEYWORDS:VirtualgoodsLight-weightFrameworkJ2EEl垫士墅重塑望至旦笪型缝煎鸾鏖型塑显銮墨垂堕趁丝生生塞逊±独创性(或创新性)声明本人声明所呈交的
论文是本人在导师指导下进行的研究工作及取得的研究成果。
尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,
论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得北京邮电大学或其他教育机构的学位或证书而使用过的材料。
与我一同工作的同志对本研究所做的任何贡献均已在
论文中作了明确的说明并表示了谢意。
申请学位
论文与资料若有不实之处,本人承担一切相关责任。
本人签名:砖降日期力、参、以关于
论文使用授权的说明学位
论文作者完全了解北京邮电大学有关保留和使用学位
论文的规定,即:研究生在校攻读学位期间
论文工作的知识产权单位属北京邮电大学。
学校有权保留并向国家有关部门或机构送交
论文的复印件和磁盘,允许学位
论文被查阅和借阅;学校可以公布学位
论文的全部或部分内容,可以允许采用影印、缩印或其它复制手段保存、汇编学位
论文。
本学位
论文不属于保密范围适用本授权书。
刁、‘.‖∽j‘?-z/——————P7‘————————————————一1.1背景第一章绪论随着数字娱乐产业的不断发展,网络游戏、动漫、影视、音乐等内容产品逐一呈现,打造一个全方位的娱乐平台和一种健康向上的数字娱乐文化品牌,已成为国内外数字娱乐产业一个全新目标,其中
网络游戏已成为此产业的重要组成部分,并占领主流娱乐市场。
现在全球网游产值达70多亿美元,占整个电子娱乐产值的24.7%。
根据中国游戏工委与IDC统计,2005年中国网络游戏市场实际销售收入已达37.7亿元人民币,网游用户达2634万:预计到2007年将达67亿元人民币,用户将达4180万。
而现今。
大部分的网络游戏采用收费运营,作为玩家进入游戏当中,并且通过花时间、精力培养自己的角色,获得虚拟物品,如虚拟人物、虚拟道具等,这些虚拟物品,其实越来越具有了自身的价值,应运而生的,便是这些虚拟物品与虚拟货币阆的交易。
在当今一款网络游戏{SecondLife>>更让人震惊。
其是美国旧金山Linden研究室2003年首发的模拟现实游戏巨作,该游戏不仅完全模拟人类生活,而且还为参与者提供了更为奇幻和富于想象的延展空间。
{SecondLifc》自诞生以来,人们越来越不视之为一款游戏,而是把它当作一个独立于自己现实生活以外的第二生命来参与。
玩家在{SecondLife>>中可以像正常人那样生活,购物、去夜总会、体育馆、图书馆、娶妻、生子、研究哲学、传授技能、经营生意等;参与者可以在{SecondLife)>中组织聚会,时装秀,艺术展,化装舞会等:还可以建造房屋,设计家具,缝制衣服,做首饰,艺术品等;只要你想得到,在游戏中都能创造出来。
{(SecondLife).)中建立了一套完整的经济系统和社会系统,所有玩家创造的房屋,物品等,玩家都拥有物权,玩家可以随意将它们出售,转让或者租赁出去,私有财产不容侵犯。
{SecondLife>>中的货币Linden币和美元之间以一种类似联系汇率的机制可以方便地进行双向兑换。
从中我们可以发现,虚拟物品涉及的更加广泛了,虚拟的世界中有现实世界的物品,当今虚拟世界盼机制,已经成了互联网时代一个全新的经营业态。
1.2课题来源深刻理解并顺应了互联网和虚拟经济的发展规律,某数字娱乐产业基地建设了Dotman产业支撑平台,并希望以Dotman平台为核心,系统地、有组织地、高效率地推进中国数字娱乐产业和虚拟
经济的发展。
该数字娱乐产业示范基地是科技部“国家数字媒体技术产业化基地”和新闻出版总署“国家网络游戏动漫产业发展基地”的重要组成部分,同时也是中华全国体育总会授牌的唯一一家“中国电子竞技运动发展中心”。
目前,已经聚集超过100家从事文化创意、数字娱乐的企业入驻基地并推出包括网络游戏、动漫画、手机游戏、3G新业务、数字音乐、数字出版、新媒体影视等在内的数百项具有自主知识产权的民族精品内容,数字娱乐产业链已经形成,产业集聚效应日渐体现。
Dotman是数字化生活及数字化人类的代名词,意即网上新人类,它代表一种新的、健康的、数字化生活方式。
它通过解决人的交流、工作、娱乐、生活的基本意识行为,满足了服务与被服务的需求,为互联网用户(Dotman人群)呈现精彩的数字娱乐体验,为企业提供完整的产品测试、营销、支付结算等“直达式”服务,全方位实现了人们的数字化生活。
Dotman平台包含四大支撑系统,即:Dotbank、Dotmall、Dotgame及Dotmedia。
本文课题直接来源于Dotmall系统。
Dotbank是Dotman平台的支付结算系统,它整合了电信运营商、商业银行、数字娱乐内容开发运营商以及其他合作商家,支持网络娱乐(影视、音乐、彩信彩铃等)、网络游戏、软件注册、虚拟社区、电子商务等协议服务商定范围内的任何支付结算,是一种方便快捷的线上线下消费支付通道。
Dotmall是一个开放的内容整合平台,汇聚手机游戏、动漫画、网络文学、IPlV、彩信彩铃等众多互联网CP、SP的内容,吸引用户在一个平台上享受全方位的互联网应用,并与线下商家达成合作,为消费者提供酒店、购物等各种现实消费。
Dotgame网游测试推广平台,为网游开发及运营企业提供机房、带宽、软硬件环境以及一流的工作环境,为网络游戏企业提供从产品研发、封测、内测、公测、业务推广、客户服务等全产业链服务,促进网络游戏企业快速商业化。
Dotmedia是一个跨媒体的互动媒体传播平台,它将现场活动、网络媒体、平面媒体、电视媒体、电信业务有机结合,相互激发,相互交叉,形成全新的互动娱乐传播平台。
在任何一种媒体上的新闻、事件、活动依托此平台都可迅速的2推送到各种终端,并产生激发效应。
Dotbank、Dotmall、Dotgame与Dotmedia是相互支撑,共同构成Dotman平台,为个人、企业提供支付、消费、内容营销、软硬件配套设施等完善的数字娱乐内容解决
方案。
其中Dotman平台中的Dotmall子系统是一套基于Web的内容交易系统为游戏用户提供完整、快捷、安全、专业的个人虚拟物品的交易服务,本文就是围绕该系统进行探讨。
1.3本人所做的
工作本人参与了网络游戏虚拟物品交易系统的开发工作,详细介绍了系统设计时所选用的轻量级J2EE的框架,及选择此框架的充足理由,通过对系统的需求分析与设计,开发了基于轻量级J2EE框架的实现方案,采用B/S三层框架,Struts实现Web层,Spring实现业务逻辑层,Hibernate实现持久层,在业务层与持久层之间利用数据访问对象(m旧)模式,运用清晰的分层结构及解藕编程思想。
由于采用了轻量级的J2EE架构,更好的实现系统在信息共享,安全,稳定性方面的要求。
本文在介绍软件总体结构设计的基础上,以订单管理中订单状态转换模块、投诉管理模块及发送电子邮件模块为例,详细讨论了软件。
32.1需求分析第二章系统需求分析为构建一个完整、快捷、安全、专业的个人网络游戏虚拟物品交易服务,本系统分为前台交易系统与后台
管理系统,由于是Dotman平台的一个子系统,用户首先是登陆Dotman平台,然后再进入虚拟交易系统。
前台交易系统如同一个“交易大厅”的Web网页展示。
交易大厅分为顶层菜单、中心区和外围服务区。
中心区位于页面中部绝大部分面积内,提供商品显示是页面的核心。
外围服务区分布于页面周边边缘部分,提供小面积功能区域。
外围服务区包括:公告板、求购留言板、智能搜索、销售排行、新品速递、促销商品、开店交易注册快速通道、用户登陆、用户收藏夹和快速购买等。
●系统功能需求系统由如下三个功能模块组成:1)交易所模块一一为用户提供最新商品的展示服务、搜索以及所有商品的展现。
21用户专区模块一一用户专区是为用户提供创建个人店铺、销售商品上架申请、销售及购买记录查询、信用查询、问题投诉等功能。
3)系统管理模块一一为系统提供后台管理功能。
??功能角色参与系统互动的角色主要包括普通用户(即是买家,又是卖家)、系统管理员。
1)买家角色首先必须是Dotman
注册用户(认证等级不限),是Dotmal|系统中的最终消费者,可以通过登陆Dotman平台后访问Dotmall。
买家在Dotmall中购买的商品4必须通过其Dotman账户进行支付。
买家的实际支付功能及其账户结算功能不包含在本系统中。
劲卖家角色首先必须是Dotman注册用户(认证等级不限),是Dotmall系统中的最终消费者,可以通过
登陆Dotman平台后访问Dotmall。
买家在Dotmall中购买的商品必须通过其Dotman账户进行支付。
买家的实际支付功能及其账户结算功能不包含在本系统中。
31系统管理员角色系统管理员通过系统管理界面管理买卖双方的信息,包括对卖家店铺审核、虚拟物品上架管理等功能,此外还包括订单管理、商品管理、销售明细查询、用户消费策略、用户投诉处理等功能。
2.2具体功能分析2.2.1
系统用例图首先,根据需求分析,现在描述系统的用例图,如图2-1、2-2及2-3所示。
o用户虚拟物品上架管理图2-1系统管理员用例图5更新代理进度图2-2作为卖家用例图管理正在交易中的商品管理图2-3作为买家用例图62.2.2功能需求分析接着,我们对主要用例功能需求进行分析。
●虚拟物品搜索虚拟物品
搜索功能是为用户选购所需物品最快的方法,它是通过选择目标物品的分类、输入目标物品的关键字等信息,搜索与之相关的物品出售信息。
●个人创建虚拟店铺用户可以创建属于自己的个人虚拟店铺出售物品。
如果用户不是Dotman平台用户,那么同时会为该用户创建Dotman平台用户。
如果用户已经是Dotman平台用户,则需要对用户的认证级别进行验证。
一个用户想要开设自己的虚拟店铺,必须通过身份证验证,身份证信息不光要求输入其身份证号码,同时还需要用户提交身份证复印件或者是扫描件,经过1)otman平台系统管理员审查后,该用户的虚拟商铺才能J下式创建成功,并且可以正式提交商品发布请求。
??虚拟物品上架申请用户创建完属于自己的虚拟店铺以后,可以提交虚拟物品的上架请求。
用户专区服务要提供用户提交商品名称、图片、分类、价格等相关说明。
●虚拟物品上架审批Dotman平台系统管理员对其提交的虚拟物品上架申请进行审批,同时给出审批结果,如果是拒绝通过还要给出拒绝通过的原因。
审批通过以后,用户可以正式提交商品信息到发布平台;如果审批被拒绝,用户可以修改提交说明后重新提交申请。
●物品交易管理买家提交购买申请并进行支付后,系统向卖家通过邮件、站内消息、手机短信等方式发出订单通知。
买卖双方可以通过邮件、站内消息、电话等方式沟通好虚拟物品的交货方式。
交易成功后,买卖双方要对本次交易进行确认,系统根据确认情况进行交易是否成功的判断,如果交易成功,系统会自动将交易货款从Dotmall账户上转账到卖家账户上。
交易失败或卖家无法证实交易成功,系统将把买家支付的货款从Dotmall账户退还到买家账户上。
●订单管理当买家选购了物品,系统将生成交易订单,同时根据交易状态(订购、支付、收货、确认、评价等)修改订单的状态,并能及时跟踪订单流程。
●收银台收银台是买家购买商品的结算中心,提供用户若干支付选择。
收银台分两个部分:所购商品确认信息和支付方式。
7所购商品确认信息显示买家选择所商品的详细信息,让买家确认是否结算这些商品。
支付方式可以选择直接账户支付、手机银行支付、网上银行支付。
用户确认商品和支付方式后,系统以屏幕显示方式或以电子邮件方式发给用户订单信息,即完成了购物的结算。
●用户专区服务用户可以通过专区服务模块实现个人账户信息查询、收藏夹的维护、购物历史
查询(买家)、发布个人求购信息(买家)、个人求购信息的查询及管理(买家)、个人虚拟物品销售清单(卖家)、个人虚拟店铺维护(卖家)等功能。
●商品类别属性管理该功能是为Dotmall交易所系统管理员使用,负责对商品类别属性进行增加、查询、修改、冻结、解冻商品大类及子类(商品分类级别可以继续细分)。
●系统策略由系统管理员设定系统策略,主要包括用户日消费上限、系统参数等功能。
●用户信誉度管理根据买卖交易记录,对买卖双方的信誉度进行等级评定。
系统要求提供信誉度计算参数的设置。
系统能自动根据交易记录对用户的买卖信誉度进行更新。
●客户投诉管理投诉管理提供用户投诉通道,投诉是针对没有达成网上交易,或一些违反交易规则的行为所做出的一种举措。
用户在物品交易过程中,如产生对对方不满意可以提交投诉信息后,系统应该通过邮件等手段通知对方和系统管理员,然后系统管理员对投诉信息进行处理,并给出答复。
用户和管理员都可以对投诉信息进行查询。
2.3.主要功能流程2.3.1主要功能流程介绍以下我们对主要功能流程进行介绍,其中包括:一般开店流程、出售流程、购买流程、支付流程、投诉流程。
●一般开店流程8登陆一->我的专区…>
免费开店…>输入店名以及基本信息…一>开店完成●一般出售流程店主上架商品一一>买方选购某一商品—一>店主修改价格-一>买方付款一>店主发货—一>买方确认收货—一>评价对方信用一一>交易完成●一般购买流程买方登陆…->搜索商品—一≯选择某一商品…>购买~一>确认购买信息…>付款…>店主发货一->收货确认…->评价对方信用…->交易完成。
●支付流程(三种不同方式)1)Dotman账户支付:付款…>选择支付方式…>账户支付一??>确认支付密码…->支付成功2)手机银行支付:付款一一>选择支付方式…一>手机银行支付~一>确认账户绑定的手机号码一??>确认账户绑定的银行卡号…一>确认支付金额…一>确认手机银行支付短信验证码…??>支付成功3)网上银行支付:付款一>选择支付方式…>网上银行支付—一>选择银行…一>确认支付金额…>支付成功●投诉流程登陆一>投诉…->选择投诉类别一一>客服人员受理,并将交易订单挂起一一>联系双方,协调解决…>解决后放下挂起交易订单一>继续交易或退款2.3.2支付漉程详述在虚拟物品交易过程中,一般出售流程、一般购买流程与支付流程它们又是相辅相成的。
买卖双方通过以上流程来共同完成物品的交易。
如下我们来分析一次成功的Dotman账户支付的流程如图2—4所示。
在现有很多的虚拟交易系统中,一般支付流程是买家先付款,待卖家收到钱后,再将货发给买家。
由于这种方式让买家购物很不放心,甚至害怕被对方欺骗。
为了保证买卖双方的利益,提供更安全、更放心的网上交易,系统设置了一个中间账号,买家付款不是直接给卖家,而是给系统的一个固定的中间账号,然后系统通知卖家对方已付款,卖家获知后发货,买家确定收到货后,卖家才能够收到中间账号划给的货款,简单地,也可以称作货到付款。
9…货oi…’…‘。
。
…。
…。
’。
…。
…。
…。
。
。
…’’。
…‘……‘。
…。
…。
…。
。
。
;J●一……………④一石……………“图2-4成功账号支付流程图现在,具体来描述图2-4成功账号支付步骤:第一步:买家付款第二步:从买家支付账号划账给系统的固定中间账号。
第三步:卖家发货第四步:买家收到货确认第五步:从系统的固定中间账号划账给卖家收货账号。
通过以上的过程完成整个一次成功支付流程。
另外,还有另一种情况,交易取消的情况下,如果其中有一方取消了交易,只要对方同意取消交易,那就要将订单金额从系统固定中间账号退还给买家。
10第三章系统框架分析3.1系统框架选择原则本文涉及的系统定位为中小型Web应用系统,没有复杂的分布式需求,由于项目目前市场竞争激烈,价格非常低,系统平台方面就要求尽量降低成本。
根据项目的具体需求,技术框架选择有以下几个原则:1)技术合理性技术合理性是最基本的要求,并不是最先进、最豪华的技术在适合项目,要选择适合项目的技术框架,对于中小型Web应用软件开发,更适合相对简单的技术路线。
2)生产力考虑软件行业是竞争激烈的行业,
软件开发效率是商业软件公司必须关注的事情,选择相对简单的轻量级框架,适合项目组进行开发培训和日后的维护,也能够使软件产品更快的推向市场。
好的生产力不仅包括要求开发的生产力,而且包括测试方面的生产力要求。
3)经济性原则应用软件开发平台包括操作系统、应用服务器、数据库等,商用的企业级平台是非常昂贵的,对于预算相对比较低的软件来说,技术框架选择轻量级框架相对比较合适。
4)可扩展性强技术框架的扩展性要求比较高,这样,开发人员可以不断增加新的应用组件。
5)有利于开发组人员分配技术框架应用适合进行开发人员分工,好的技术框架各个层次相对独立,在同一框架下通过全局接口联系,各个层次之间既存在关联,又存在项目独立,适合根据层次分配开发人员,这样有利于开发效率的提高。
3.2系统框架选择分析接下来,我们来分析框架选择,分析的同时,我们要考虑到上述所描述到的系统框架选择原则。
近年来,随着互联网技术的不断发展完善和普及,人们开始习惯通过互联网来获得信息、进行电子商务活动,这使传统的C/S应用逐渐退出市场,而使Web应用成为当今主流。
对开发人员来讲,带来的好处之一是不必维护客户端软件了。
对于Web应用开发来讲,脚本为主的语言如ASP/PHP/JSP等,主要优点是语言单一、容易上手,一般的程序员能软容易掌握;但是缺点也是显而易见的,如加密问题、
代码混合问题、结构不清晰、不容易维护等,所以Web应用开发目前主流技术是J2EE和Microsoft的.Net,虽然.Net框架提供了一个颇具灵活性和扩展性,而且开发速度相当快,但它是基于Windows平台的,因此不具备跨平台移植的特点,根据本系统的需求搭建在Linux/Unix平台。
所以本系统暂不考虑Microsoft的.Net框架,主要考虑J2EE框架。
典型的企业级J2EE架构主要由JSP+Servlet+EJB组成,在大型分布式系统往往采用这种方式,但是在中小型Web应用中,采用EIB为中心的J2EE框架,主要有以下几个问题:1)价格成本昂贵EJB要求有支持EJB的应用服务器支持,
常用的商业应用服务器有IBM的We-bSphere和BEA公司的WcbLogic等,但商用的应用服务器系统价格也比较高:并且使用不同的应用服务器,需要重新书写不同的部署描述,使得在不同应用服务器下移植企业级应用会带来一些困难。
∞过于复杂EJB是一种功能齐全、复杂性很高的重量级企业级组件,开发人员很难在短时间内掌握精通,如果水平不够的开发人员采用EJB技术,会给系统带来性能等方面严重的
问题:尤其是传统的C/S开发人员不断抱怨,转向J2EE后,要关注太多的技术细节,层次太多,而且各层之间的关系复杂,把精力过多的耗在技术实现上,而用户的业务需求分析方面反而有些忽略了。
31性能问题由于复杂的体系结构和技术细节,使得实际的应用系统会因为设计缺陷和应用服务器配置等问题,而使性能受到了很大影响,有~个极端的例子,政府某部门的系统采用EJB技术开发,单单启动应用就需要几个小时,这样的情况对于实时非常高的部门,肯定无法满足需要。
们测试复杂严格的单元测试和测试驱动式开发日益得到认可和流行,由于EJB的复杂性使测试也变得复杂,开发EIB应用
程序使测试工作要做更多的工作,容器管理的EJB对容器的依赖,使测试工作更加复杂和困难。
为了解决项目中遇到的上述问题,最近轻量级框架开始流行,所谓的轻量级是和以EIB为核心技术的复杂框架对比而言。
轻量级框架致力于提供最简单的组件来构筑Web应用系统,Spnng是典型的一种轻量级架构,越来越多的开发人员开始关注并使用这种架构。
通过Spring组合其他专一的
开源产品如表示层的Str-uts、持久对象层的Hibernate,来构建应用系统,实现了J2EE简单化编程。
采用Struts+Spdng+Hibernate轻量级框架和组件。
这也无非满足了我们选择框架的原则。
3.3为什么选择轻量级J2EE框架为什么选择轻量级J2EE框架Struts+Spring+Hibernate,以下我们来对其核心轻量级容器做简要介绍,从而发现他们整合的强大的优势,坚定我们的选择。
3.3.1核心容器框架的核心就是s州ng容器,其是一个
开源的J2EE框架项目,目前非常活跃,既是全面的也是模块化的。
以控制反转(Ioc)原则和面向方面编程(AOP)思想为基础,提供管理业务联系对象服务。
它不强迫必须在每一层中使用,因它是模块化的,所以可以根据自己的需要选择使用它的某一个模块。
体系结构如图3一l所示。
下面依次对这七个模块做简要介绍。
1)核心容器Spring的核心容器提供了Spring框架的基本功能。
在这个模块中你会发现Spring的BeanFactory,任何Spring应用的核心。
BeanFactory是工厂模式的一个实现,它使用loc将你的应用配置与依赖说明从实际的应用
代码中分离出来。
2)应用上下文模块核心模块的BeanFactory使Spring成为一个容器,而上下文模块使它成为一个框架。
这个模块扩展了BeanFaetory的概念,增加了对国际化信息、应用生命周期事件以及验证的支持。
另外,这个模块提供了许多企业服务,例如电子邮件、JNDI访闯、EJB集成、远程以及调度服务。
也包括了对与模板框架例如Velocity和FreeMarker集成的支持。
3)DAO模块使用JDBC经常导致大量的重复
代码,取得连接、创建语句、处理结果集,然后关闭连接。
s删ng的JDBC和DAO模块抽取了这些重复
代码,因此你可以保持你的数据库
代码干净简洁,并且可以防止因关闭数据库资源失败而引起的问题。
这个模块还在几种数据库服务器给出的错误消息之上建立了一个有意义的异常层。
使你不用再试图破译神秘的私有的SQL错误消息!另外,这个模块.