下载

1下载券

加入VIP
  • 专属下载券
  • 上传内容扩展
  • 资料优先审核
  • 免费资料无限下载

上传资料

关闭

关闭

关闭

封号提示

内容

首页 JAVA外文文献翻译

JAVA外文文献翻译.doc

JAVA外文文献翻译

压力下滴男人
2018-09-06 0人阅读 举报 0 0 0 暂无简介

简介:本文档为《JAVA外文文献翻译doc》,可适用于IT/计算机领域

中文翻译基于Java技术的Web应用设计模型的比较研究来源:SchoolofComputerScienceandEngineeringUniversityofNewSouthWalesSydney,NSW,Australia作者:BudiKurniawanandJinglingXue摘要Servlet技术是在建立可扩展性Web应用中被应用最广泛的技术。在运用JAVA技术开发Web应用中有四种模型,分别是:Model、Model、Struts和JavaServerFacesJSF。Model使用一连串的JSP页面Model采用了模型视图控制器MVC模式。Struts是一个采用了Model设计模型的框架JSF是一种支持readytouse组件来进行快速Web应用开发的新技术。Model对于中等和大型的应用来说很难维护所以不推荐使用。本文通过利用Model、Struts和JSF这三种模型分别构建三个不同版本的在线商店应用程序来比较和评价这三种模型在应用程序开发和性能上的差异。绪论当今Web应用是一种展现动态内容的最普遍的方式。构建Web应用有许多种方法其中最流行的是Servlet技术。这种技术的流行是因为它比CGI、PHP等其他技术更具优越性。然而Servlet对于开发来说还是麻烦的因为它在传送HTML标签时需要程序员将他们组合成为一个字符串对象再将这个对象传给浏览器。同样的对于输出的一个很小的改动也要求Servlet被重新编译。基于这个原因SUN公司发明了JavaServerPagesJSP技术。JSP允许HTML标签和Java代码混合在一起每个页面将被转化为一个Servlet一个JSP就是一个Servlet而且编译将在JSP页面第一次被请求时自动进行改变输出也不需要重新编译。另外通过使用JavaBean和定制标签库JSP能够将表示与业务逻辑相分离。现今基于JAVA的Web应用开发标准是将servlets与JSP结合在一起。随后出现了许多种设计模型用来构建servletJSP应用。Model、Model、Struts和JavaServerFacesJSF。Model和Model最早是在JSP规范中被提及的。Model只使用JSP而不使用servletModel则结合了JSP与servlet。Model和Model的使用是有条件的。Model适合与开发原型和非常小的应用比较。如果它比之前读入的文件的时间戳更新则重新构建映射器。这个特性可以在上下文对象的初始化参数中开启或者关闭。从开发的角度来讲这个特性应该开启。在部署时这个特性应该关闭。使用属性文件来存储页面导航规则还可能避免在控制器中的一连串的if语句,它将在每次请求时消耗时间。可以使用一个HashMap,将请求参数作为Key值将跳转页面作为Value值。这个设计模型的另一个缺陷是缺少标准的输入验证组件和用户接口组件而这些将在JSF中得到解决。JSF解决了开发Web应用中的大部分问题比如:页面导航管理、用户接口组件和输入验证组件。然而由于这项技术仍然很年轻还没有太多的用户接口可用强迫了程序员将JSF和非JSF的servletsJSP页面相结合。JSF是事件驱动的JSF程序员通过编写事件监听来决定JSF应用的行为就像Swing应用中的监听器一样。在JSF版本中通常有两类事件能够被触发:ActionEvent和ValueChangedEvent但这已经能在应用和用户之间提供足够好的交互性了。参考文献Burbeck,S,ApplicationsProgramminginSmalltalk:HowtouseModelViewController(MVC),,Cecchet,E,ChandaA,ElniketyS,MargueriteJ,ZwaenepoelW:PerformanceComparisonofMiddlewareArchitecturesforGeneratingDynamicWebContentProceedingofthethInternationalMiddelwareConference,Cecchet,E,Marguerite,J,andZwaenepoel,W:PerformanceandScalabilityofEJBApplicationsProceedingsofOOPSLA’,JavaServletandJavaServerPagesSpecification(JSR),JavaServletSpecification(ProposedFinalDraft),JavaServerFacesTechnology,JBossEJBserver,JMeter,JOnAS:JavaOpenApplicationServer,SunMicrosystems,ComparingMethodsforServerSideDynamicContent,,TheApacheSoftwareFoundation,TheStrutsFramework,Wu,A,Wang,H,andWilkins,D:PerformanceComparisonofAlternativeSolutionsforWebToDatabaseApplicationsProceedingsoftheSouthernConferenceonComputing,theUniversityofSouthernMississippi,英文原文AComparativeStudyofWebApplicationDesignModelsUsingtheJavaTechnologiesBudiKurniawanandJinglingXueSchoolofComputerScienceandEngineeringUniversityofNewSouthWalesSydney,NSW,AustraliaAbstractTheServlettechnologyhasbeenthemostwidelyusedtechnologyforbuildingscalableWebapplicationsIntheevents,therearefourdesignmodelsfordevelopingWebapplicationsusingtheJavatechnologies:Model,Model,Struts,andJavaServerFaces(JSF)ModelemploysaseriesofJSPpagesModeladoptstheModelViewControllerpatternStrutsisaframeworkemployingtheModeldesignmodelandJSFisanewtechnologythatsupportsreadytousecomponentsforrapidWebapplicationdevelopmentModelisnotrecommendedformediumsizedandlargeapplicationsasitintroducesmaintenancenightmareThispapercomparesandevaluatestheeaseofapplicationdevelopmentandtheperformanceofthethreedesignmodels(Model,Struts,andJSF)bybuildingthreeversionsofanonlinestoreapplicationusingeachofthethreedesignmodels,respectivelyIntroductionToday,WebapplicationsarethemostcommonapplicationsforpresentingdynamiccontentsThereareanumberoftechnologiesforbuildingWebapplications,themostpopularofwhichistheServlettechnologyThistechnologygainsitspopularityfromitssuperiorityoverothertechnologiessuchasCGIandPHPServletsarecumbersometodevelop,however,becausesendingHTMLtagsrequirestheprogrammertocomposethemintoaStringobjectandsendthisobjecttothebrowserAlso,aminorchangetotheoutputrequirestheservlettoberecompiledToaddressthisissue,SunMicrosystemsinventedJavaServerPages(JSP)JSPallowsHTMLtagstobeintertwinedwithJavacodeandeachpageistranslatedintoaservletAJSPpageisaservletHowever,compilationoccursautomaticallywhenthepageisfirstrequestedAsaresult,changingtheoutputdoesnotneedrecompilationInaddition,JSPenablestheseparationofpresentationfromthebusinesslogicthroughtheuseofJavaBeansandcustomtaglibrariesThenormnowindevelopingJavabasedWebapplicationsistouseservletsalongwithJavaServerPagesInthelaterdevelopment,thereareanumberofdesignmodelsforbuildingservletJSPapplications:Model,Model,Struts,andJSFModelandModelwerefirstmentionedintheearlyspecificationsofJSPModelstrictlyusesJSPpages,withnoservlets,andModelusesthecombinationofbothservletsandJSPpagesThetermsofModelandModelhavebeenusedeversinceModelissuitableforprototypesandverysmallapplications,andModelistherecommendeddesignmodelformediumsizedandlargeapplicationsAsModelgainedmoreacceptancesintheindustry,anopensourceinitiativetobuildtheStrutsFrameworkwasinitiatedStrutsperfectsModelbyprovidingtheControllerpartoftheModelViewControllerofModelInaddition,StrutsprovidesbetterpagenavigationmanagementandseveralcustomtaglibrariesformorerapiddevelopmentDespiteitssteeplearningcurveandthefactthatitwasneverdefinedinanyspecification,StrutshasbeengainingpopularityasthealternativetoModelJavaServerFacesisbuiltundertheJavaCommunityProcessunderJSRSunMicrosystemsproposedthistechnologyinthehopethatJSFwillbetheultimatemodelforbuildingJavaWebapplicationsThemostimportantfeatureofJSFistheavailabilityofreadytousecomponentssuchasextensibleUIcomponents,easypagenavigation,inputvalidators,dataconvertersandJavaBeansmanagementTheproblemfacingservletJSPprogrammersaretochoosethemostappropriatedesignmodelClearly,JSFprovidesabettersolutioninregardtodevelopmenttimeHowever,somepeoplearenotsanguinetoadoptthistechnologyforfearofperformancepenaltyduetotheoverheadoftheJSFimplementationWebuildthreeversionsofanonlinestoreapplicationnamedBuyDirectusingModel,StrutsandJSFTheparameterscomparedarethenumberoflinesofcode,thenumberofclasses,andtheperformancemeasurementresultsWeinvestigatewhichofthedesignmodelsallowsthemostrapiddevelopmentprocessWeevaluatetheperformancesoftheapplicationsbuiltuponthesemodelsWeprovidesomesuggestionstoperfecttheexistingdesignmodelstomakedevelopmentmorerapidTherestofthepaperisorganisedasfollowsSectiondiscussestheissuesinWebdevelopmentSectionexplainshowthethreedesignmodelsaddressthesedevelopmentissuesSectionprovidesthedetailsofthehardwareandsoftwareusedintheseexperimentsSectionpresentstheexperimentresultsandanalysisSectionreviewstherelatedworkSectionconcludesbyofferingsomesuggestionstoimprovetheexistingdesignmodelsJavaWebDevelopmentIssuesAllJavaWebdevelopmentusestheServlettechnologyastheunderlyingtechnologyAssuch,allJavaWebapplicationshavecertainissuesthatneedtobeaddressed:UserInterfaceTheuserinterfaceiswhattheclientbrowserrendersasHTMLtagsAnyserversidecomponentusedintheapplicationmustbeencodedintothecorrespondingHTMLelementsBesidesfordisplayingthecontentanddata,theuserinterfaceisalsoresponsibleinreceivinginputfromtheuserInputvalidationUserinputneedstobevalidatedTherearetwotypesofinputvalidation,serversideandclientsideAsthenameimplies,theserversideinputvalidationisperformedontheserveraftertheinputreachestheserverClientsideinputvalidationisdoneonthebrowser,usuallybyusingJavaScriptorotherscriptinglanguagesTheadvantagesofusingclientsideinputvalidationarepromptresponseandreducingtheserverworkloadTheserversideinputvalidationshouldalwaysbeperformedregardlessthepresenceofclientsidevalidationbecausethereisnoguaranteetheuserbrowser'sscriptingfeatureisbeingonandmalicioususerscaneasilyworkaroundclientsidevalidationModelObjectsModelobjectsinJavabasedWebapplicationsareintheformsofJavaBeansModelobjectsmakeuptheModelpartoftheMVCbaseddesignmodelAmodelobjectcanbeusedtobindacomponentvaluetobeusedatalaterstageInaddition,itcanencapsulatebusinesslogicrequiredforprocessingPageNavigationAlmostallWebapplicationshavemultiplepagesthattheusercannavigatefromonetoanotherAllMVCbaseddesignmodelsuseaservletastheControllerpartThisservletalsoactsasthesoleentrypointtotheapplicationWhichpagetobedisplayedafterthecurrentrequestisdeterminedbythevalueofaspecifiedrequestparameterManagingpagenavigationiscriticallyimportantWebApplicationDesignModelsTheModeldesignmodelisbasedontheModelViewController(MVC)designpatternAsexplainedbyBurbeck,therearethreemainmodulesinMVC,theController,theView,andtheModelTheControlleractsasthecentralentrypointtotheapplicationAlluserinteractionsgothroughthisControllerTheViewcontainsthepresentationpartoftheapplication,andtheModelstoresdataorencapsulatesbusinesslogicoftheapplicationInthelaterdevelopment,theStrutsFrameworkprovidesacommonframeworktoeasilybuildModelapplicationsThen,thelastinitiativeistheJavaServerFaces,whichalsoemploystheMVCdesignpatternInthefollowingsections,wediscussthesethreedesignmodelsandexplainhoweachdesignmodeladdressesthedevelopmentissuesspecifiedintheprevioussectionModelAJavaWebapplicationthatisbasedontheModeldesignmodelhasoneservlet(calledtheControllerservlet)thatservesastheControllerpartAllrequestsarefirsthandledbythisservlet,whichimmediatelydispatchestherequeststotheappropriateviewsusingRequestDispatcherobjectsViewsintheModeldesignmodelarerepresentedbyJSPpagesTostoredata,aModelapplicationusesJavaBeans,whicharetheModelpartoftheapplicationInadditiontostoringdata,theJavaBeansalsoencapsulatebusinesslogicEachHTTPrequestcarriesanactionparameterthatindicateswhichviewtodispatchthisrequesttoTheprogrammermustcodetheHTMLtagsforuserinterfaceinallJSPpagesintheapplicationandwriteinputvalidationcodeInaddition,themodelobjectsaremanagedbyindividualJSPpagesStrutsTheStrutsFrameworkisanimprovementoftheModeldesignmodelItprovidesadefaultControllerservletsothattheuserdoesnothavetowriteandcompileoneStrutsalleviatesthetaskofpagenavigationbyallowingnavigationrulestobepresentinitsapplicationconfigurationfile(anXMLdocument)ChangestothenavigationrulesdonotrequirerecompilationofaJavaservletclassInadditiontoeasierpagenavigation,StrutsprovidescustomtaglibrariesthatdefinetagsrepresentingHTMLelementsOneofthesetagsisusedforerrorhandlingandStrutsisthereforecapableofdisplayinglocalizederrormessagesinsupportforinternationalizationStrutsapplicationsuseJavaBeansastheirmodels,justliketheModeldesignmodelInaddition,StrutsprogrammershavetowritetheirowninputvalidationcodeJSFJSFalsoemploysaControllerservletthatiscalledFacesServletThisservletistheonlyentrypointtoaJSFapplicationJSFalsousesJSPpagesasitsviewsandJavaBeansasitsmodelobjectsUnlikeModelandStruts,however,JSFprovidesreadytouseuserinterfacecomponentsthatcanbewrittenonJSPpagesUponaninvocationofapageofaJSFapplication,theFacesServletconstructsacomponenttreethatrepresentstheJSPpagebeingrequestedSomeofthecomponentscanalsotriggerevents,makingJSFeventdrivenForpagenavigation,JSFusesanapproachsimilartoStruts,ie,byallowingnavigationrulestobedefinedinanapplicationconfigurationfile(again,anXMLdocument)WhatdistinguishesaJSFapplicationfromnonJSFservletJSPapplicationisthatJSFapplicationsareeventdrivenTheuserinterfaceofaJSFapplicationisoneormanyJSPpagesthathostWebcomponentssuchasformsandinputboxesThesecomponentsarerepresentedbyJSFcustomtagsandcanholddataAcomponentcanbenestedinsideanother,anditispossibletodrawatreeofcomponentsJustasinnormalservletJSPapplications,youuseJavaBeanstostorethedatatheuserenteredExperimentalSetupThesoftwareandhardwaredetailsforourexperimentsaredescribedbelowTheOnlineStoreApplicationTheonlinestoreapplicationinthisresearchcomesinthreeversions:Model,Struts,andJSFAllofthemarenamedBuyDirect,anonlinestorethatsellselectronicsgoodsTheapplicationhasthefollowingfeatures:SearchforcertainproductsbasedonproductnamesordescriptionsBrowsethelistofproductsbycategoryViewaproduct'sdetailsputaproductintotheshoppingcartViewtheshoppingcartCheckoutandplaceanorderThisapplicationrepresentsthemostcommonWebapplicationthatprovidesthefollowingfunctionality:searchingforcertaininformationinthedatabasebrowsingthedatainthedatabase,performingdatabasetransactionsDataisstoredinaMySQLdatabaseThetablesusedandtherelationshipamongthemaredepictedinFigureTheServletContainerAJavaWebapplicationrunsinaservletcontainer,whichistheenginethatprocessestheincomingHTTPrequestsfortheresourcesintheapplicationForthisresearchproject,weuseTomcat,anopensourceservletcontainerfromtheApacheSoftwareFoundationTheversionweuseisBasically,aservletcontainerprocessesaservletbyperformingthefollowingtasks:CreatingtheHttpRequestObjectCreatingtheHttpResponseObjectCallingtheservicemethodoftheServletinterface,passingtheHttpRequestandHttpResponseobjectsTestingClientsForperformancetesting,weemulatemultipleusersusingJMeter,alsofromtheApacheSoftwareFoundationJMeterallowstheusertochoosethenumberofthreadstoperformtestingEachthreademulatesadifferentuserJMeteralsoletsuschoosehowmanytimesatestwillbedoneTotestaWebapplicationusingJMeter,youdirectrequeststocertainIPaddress,contextpath,andportnumberYoucanalsospecifyrequestparameterstobeincludedineachHTTPrequestAstheoutput,JMeternotifiestheresponsetimeoftheserverinmillisecondsforatestFromtheresponsetime,wederivethenumberofhitssecondstheserveriscapableofservingHardwareWeusedifferentcomputersforrunningtheapplicationsandfortesting,soastoobtainmaximumperformancemeasurementaccuracyThecomputerrunningtheapplicationisaLinuxmachinehavingthefollowinghardwarespecifications:IntelPentiumIIIMHzCPUwithMBRAMThecomputerrunningthetestingclientsisaWindowsmachinerunningJMeterThecomputerhasthefollowingspecifications:IntelPentiumIIIMHzCPUwithMBRAMExperimentalResultsWeobtainexperimentalresultsintwocategories:theeaseofdevelopmentandperformanceTheeaseofdevelopmentcategorycomparesthenumberofclassesandthenumberoflinesofcodeThesenumbersindicatehoweasyitistodevelopanapplicationbyfollowingacertaindesignmodelAnapplicationwiththefewernumberofclassesorthenumberoflinesofcodeindicatesthattheapplicationisrelativelyeasiertobuildTheapplicationwiththemorenumberofclassesindicatesthattheapplicationtakesmoretimetodevelopTheperformancemeasurementresultsareobtainedbycomparingthreeoperationsineachversionoftheonlinestoreapplication:Search,Browse,andShoppingTheSearchoperationisthemostcommonoperationinsuchanapplicationTheBrowseoperationdisplaysproductsbycategory,andtheShoppingoperationisthemostcomplexoperationofallItincludesfillingintheOrderformandinsertingproductsintheshoppingcarttothedatabaseThedatabaseislockedduringtheproductinsertion,soeitherallshoppingitemsarestoredinthedatabaseornoneofthemisEaseofApplicationDevelopmentAsTableshows,ittakesthemostefforttoimplementtheModeldesignmodelUsingStrutsalleviatestheproblemabit,andthebestsavinginthedevelopmentcomesifoneusesJSFTableThenumberofclassesandthenumberoflinesfortheapplicationsunderstudyTheModeldesignmodelischaracterisedbythepresenceofaControllerservletandanumberofJavaBeansclasses(astheModel)andJSPpages(astheViews)TheControllerservletisresponsibleforpagenavigationrulesthatemployaseriesofifstatementsModelapplicationprogrammersmustalsocodefortheinputvalidationthatinthisresearchisimplementedinsideanumberofcustomtaglibrariesTheotherclassesintheModeldesignmodelarecustomtaglibraryandthetaglibrarydescriptorsresponsibleforinputvalidationanddatadisplayInfact,inputvalidationtakeslinesofcode,oralmostofthetotalamountofcodeIntheStrutsapplication,theControllerservletisprovidedbytheframework,thereforeaStrutsprogrammersavestimefornothavingtowriteoneHowever,heshestillneedstowritepagenavigationrulesintheApplicationConfigurationfile,whichiseasierthanwritingaservletbecausetheApplicationConfigurationfilecanbeeditedusingatexteditorandnocompilationisnecessaryInputvalidationmuststillbedonemanually,eventhoughtheStrutsFrameworkprovidesanerrorhandlingmechanismThenumberofclassesandthenumberoflinesofcodeforinputvalidationarealmostsimilartotheModelapplicationInStruts,theotherclassesareActionclassestowhichthedefaultControllerservletdispatchesrequestsInJSFinputvalidationcomesfreethroughtheavailabilityofvalidatorcomponentAsaresult,aJSFapplicationdevelopercanskipthistaskInaddition,pagenavigationtakesthesamecourseasStruts,iebyutilisinganApplicationConfigurationfileTheotherclassesinJSFareaContextListener,anActionListener,andaDatabaseutilityclassPerformanceMeasurementForeachoperation,wemeasuretheserverresponsetime(inmilliseconds)fortoconcurrentusersThenumberofusersisspecifiedbysettingthenumberofthreadsinJMeterEachtestisconductedtimesandtheaverageistakenEachoperationisdiscussedfurtheristhefollowingsubsectionsSearchOperationTheSearchoperationretrievesallproductswhosenameordescriptionmatchesthekeywordThereisoneSQLSELECTstatementperformedFigurecomparesthethreeversionsofapplicationsfortheSearchoperationFortheModelapplication,theaverageserverresponsetimeforoneuserismsandforusersismsFortheStrutsapplication,thesenumbersaremsandms,respectivelyFortheapplicationbuiltusingJSF,theaverageserverresponsetimeismsforoneuserandmsforusersTheincreaseoftheresponsetimeIproportionaltotheincreaseofthenumberofconcurrentusers,whichmeansthattheserverisstillabletocopewiththeloadTheModelapplicationhastheleastoverhead,thereforetheaverageperformanceshouldbebetterthantheStrutsandJSFapplicationsHowever,theStrutsapplicationperformsaswellastheModelapplicationThisisbecausetheserverhasenoughmemorytoloadallStrutslibrariesrequiredtorunStrutsAlso,notethatpagenavigationrulesinStrutsareloadedandstoredinanobjectcalledActionMappingTherefore,givenanactionrequestparameter,thenextpageofnavigationisobtainedthroughalookupOntheotherhand,theModelapplicationusesaseriesofifstatementstofindthenextpageofnavigation,giventheactionrequestparameterTheJSFapplicationperformsslightlyworsethantheotherapplicationsinalmostallnumbersofconcurrentusersThiscouldbeduetothetimetakenbytheJSFimplementationtoconstructacomponenttreeforeachpagerequestedHowever,thedifferenceinserverresponsetimebetweenJSFandotherapplicationsisnotthatsignificantBrowseOperationTheBrowseoperationretrievesallproductsbelongingtothespecifiedcategoryforthethreeversionsofapplicationsLiketheSearchoperation,thereisoneSQLSELECTstatementperformedFiguregivesthetestresultsforthisoperationOnaverage,theModelapplicationperformsthebestbecauseithastheleastoverheadTheaverageserverresponsetimeismsforoneuserandmsforusersTheStrutsapplicationhascomparableperformance,withoneuseraverageserverresponsetimeofmsanduserresponsetimeofmsTheJSFlacksabitbehindthetwoapplicationswiththesenumbersbeingandmsrespectivelyTheincreaseoftheserverresponsetimeisproportionaltotheincreaseofthenumberofconcurrentusers,whichmeanstheserverisabletoservethoseuserswellTheaverageperformancemeasurementresultsoftheBrowseoperationareverysimilartotheonesfortheSearchoperationbecausethedatabaseoperationsofbothoperationsarealsosimilarShoppingOperationThisoperationincludesadatabasetransactionwithaninsertintotheOrderstableandmultipleinsertsintotheOrderDetailstableThetransactioneithersucceedsorfailsasawholeFigureshowsthetestresultsforthisoperationTheModelapplicationresultsinanaverageserverresponsetimeofmsforoneuserandmsforusersTheStrutsapplicationscoressimilarresultswithmsandmsforbothoneuserandconcurrentusersTheJSFapplicationtakesanaverageofmstoserveroneuserandmsforconcurrentusersFigureshowsthatinallapplications,alinearincreaseinthenumberofconcurrentuserscausesanalmostexponentialincreaseintheaverageserverresponsetimeThisisduetothelockinthedatabaseduringthedatabasetransactionthatcausessubsequentrequeststobequeueduntilthedatabaselockisreleasedPerformancecomparisonfortheModel,Struts,andJSFapplicationsfortheShoppingoperationisalmostthesameastheSearchandBrowseoperationsModelandStrutsperformsimilarly,whiletheJSFapplicationisworseHowever,thedifferencebetweentheJSFapplicationandtheothertwoisnotsignificantRelatedWorkWuetalcomparetheperformanceofdatabasebasedWebapplicationsusingJavaservlets,PHPversion,andCommonGatewayInterface(CGI)AfteraseriesofbenchmarkteststhatperformsdataretrievalfromaMySQLdatabase,theyfindthatthesolutionofJavaservletswithpersistentdatabaseconnectionhasthebestperformancePHPusingpersistentdatabaseconnectionsperformsfairlywellwhencomparedtotheCGIsolutionTheyalsomentiontheadvantagesofusingJavaservletsAccordingtotheseauthorsJavaservletsareanexcellentchoicetomeettherequirementofecommerce(suchasonlineshopping)applicationsandareabletohandleclientrequestsinahighlyinteractivemodeHowever,WuetaldonotprovideanalysisofthearchitecturesofthesystemtheyaretestingNordotheystudytheeaseofdevelopmentandeaseofmaintenanceaspectsofthosetechnologie

用户评价(0)

关闭

新课改视野下建构高中语文教学实验成果报告(32KB)

抱歉,积分不足下载失败,请稍后再试!

提示

试读已结束,如需要继续阅读或者下载,敬请购买!

评分:

/30

VIP

在线
客服

免费
邮箱

爱问共享资料服务号

扫描关注领取更多福利

2o18特马大全资料免费