版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
外文翻译PAGEPAGE11中英文对照外文翻译文JSPAPPLICATIONFRAMEWORKS1.1WHATAREAPPLICATIONFRAMEWORKS:Aframeworkisareusable,semi-completeapplicationthatcanbespecializedtoproducecustomapplications[Johnson].Likepeople,softwareapplicationsaremorealikethantheyaredifferent.Theyrunonthesamecomputers,expectinputfromthesamedevices,outputtothesamedisplays,andsavedatatothesameharddisks.Developersworkingonconventionaldesktopapplicationsareaccustomedtotoolkitsanddevelopmentenvironmentsthatleveragethesamenessbetweenapplications.Applicationframeworksbuildonthiscommongroundtoprovidedeveloperswithareusablestructurethatcanserveasthefoundationfortheirownproducts.Aframeworkprovidesdeveloperswithasetofbackbonecomponentsthathavethefollowingcharacteristics:Frameworksaretheclassicbuild-versus-buyproposition.Ifyoubuildit,youwillunderstanditwhenyouaredone—buthowlongwillitbebeforeyoucanrollyourown?Ifyoubuyit,youwillhavetoclimbthelearningcurve—andhowlongisthatgoingtotake?Thereisnorightanswerhere,butmostobserverswouldagreethatframeworkssuchasStrutsprovideasignificantreturnoninvestmentcomparedtostartingfromscratch,especiallyforlargerprojects.1.2OTHERTYPESOFFRAMEWORKS:Theideaofaframeworkappliesnotonlytoapplicationsbuttoapplicationcomponentsaswell.Throughoutthisarticle,weintroduceothertypesofframeworksthatyoucanusewithStruts.TheseincludetheLucenesearchengine,theScaffoldtoolkit,theStrutsvalidator,andtheTilestaglibrary.Likeapplicationframeworks,thesetoolsprovidesemi-completeversionsofasubsystemthatcanbespecializedtoprovideacustomcomponent.Someframeworkshavebeenlinkedtoaproprietarydevelopmentenvironment.ThisisnotthecasewithStrutsoranyoftheotherframeworksshowninthisbook.YoucanuseanydevelopmentenvironmentwithStruts:VisualAgeforJava,JBuilder,Eclipse,Emacs,andTextpadareallpopularchoicesamongStrutsdevelopers.IfyoucanuseitwithJava,youcanuseitwithStruts.1.3ENABLINGTECHNOLPGIES:ApplicationsdevelopedwithStrutsarebasedonanumberofenablingtechnologies.ThesecomponentsarenotspecifictoStrutsandunderlieeveryJavawebapplication.AreasonthatdevelopersuseframeworkslikeStrutsistohidethenastydetailsbehindacronymslikeHTTP,CGI,andJSP.AsaStrutsdeveloper,youdon’tneedtobeanalphabetsoupguru,butaworkingknowledgeofthesebasetechnologiescanhelpyoudevisecreativesolutionstotrickyproblems.1.4HYPERTEXTTRANSFERPROTOCOL(HTTP):Whenmediatingtalksbetweennations,diplomatsoftenfollowaformalprotocol.Diplomaticprotocolsaredesignedtoavoidmisunderstandingsandtokeepnegotiationsfrombreakingdown.Inasimilarvein,whencomputersneedtotalk,theyalsofollowaformalprotocol.Theprotocoldefineshowdataistransmittedandhowtodecodeitonceitarrives.WebapplicationsusetheHypertextTransferProtocol(HTTP)tomovedatabetweenthebrowserrunningonyourcomputerandtheapplicationrunningontheserver.ManyserverapplicationscommunicateusingprotocolsotherthanHTTP.Someofthesemaintainanongoingconnectionbetweenthecomputers.Theapplicationserverknowsexactlywhoisconnectedatalltimesandcantellwhenaconnectionisdropped.Becausetheyknowthestateofeachconnectionandtheidentityofeachpersonusingit,theseareknownasstatefulprotocols.Bycontrast,HTTPisknownasastatelessprotocol.AnHTTPserverwillacceptanyrequestfromanyclientandwillalwaysprovidesometypeofresponse,eveniftheresponseisjusttosayno.Withouttheoverheadofnegotiatingandretainingaconnection,statelessprotocolscanhandlealargevolumeofrequests.ThisisonereasonwhytheInternethasbeenabletoscaletomillionsofcomputers.AnotherreasonHTTPhasbecometheuniversalstandardisitssimplicity.AnHTTPrequestlookslikeanordinarytextdocument.ThishasmadeiteasyforapplicationstomakeHTTPrequests.YoucanevensendanHTTPrequestbyhandusingastandardutilitysuchasTelnet.WhentheHTTPresponsecomesback,itisalsoinplaintextthatdeveloperscanread.ThefirstlineintheHTTPrequestcontainsthemethod,followedbythelocationoftherequestedresourceandtheversionofHTTP.ZeroormoreHTTPrequestheadersfollowtheinitialline.TheHTTPheadersprovideadditionalinformationtotheserver.Thiscanincludethebrowsertypeandversion,acceptabledocumenttypes,andthebrowser’scookies,justtonameafew.Ofthesevenrequestmethods,GETandPOSTarebyfarthemostpopular.Oncetheserverhasreceivedandservicedtherequest,itwillissueanHTTPresponse.ThefirstlineintheresponseiscalledthestatuslineandcarriestheHTTPprotocolversion,anumericstatus,andabriefdescriptionofthestatus.Followingthestatusline,theserverwillreturnasetofHTTPresponseheadersthatworkinawaysimilartotherequestheaders.Aswementioned,HTTPdoesnotpreservestateinformationbetweenrequests.Theserverlogstherequest,sendstheresponse,andgoesblissfullyontothenextrequest.Whilesimpleandefficient,astatelessprotocolisproblematicfordynamicapplicationsthatneedtokeeptrackoftheirusers.CookiesandURLrewritingaretwocommonwaystokeeptrackofusersbetweenrequests.Acookieisaspecialpacketofinformationontheuser’scomputer.URLrewritingstoresaspecialreferenceinthepageaddressthataJavaservercanusetotrackusers.Bothapproachesareseamless,andusingeithermeansextraworkwhendevelopingawebapplication.Onitsown,astandardHTTPwebserverdoesnottrafficindynamiccontent.Itmainlyusestherequesttolocateafileandthenreturnsthatfileintheresponse.ThefileistypicallyformattedusingHypertextMarkupLanguage(HTML)[W3C,HTML]thatthewebbrowsercanformatanddisplay.TheHTMLpageoftenincludeshypertextlinkstootherwebpagesandmaydisplayanynumberofothergoodies,suchasimagesandvideos.Theuserclicksalinktomakeanotherrequest,andtheprocessbeginsanew.Standardwebservershandlestaticcontentandimagesquitewellbutneedahelpinghandtoprovideuserswithacustomized,dynamicresponse.DEFINITION:StaticcontentontheWebcomesdirectlyfromtextordatafiles,likeHTMLorJPEGfiles.Thesefilesmightbechangedfromtimetotime,buttheyarenotalteredautomaticallywhenrequestedbyawebbrowser.Dynamiccontent,ontheotherhand,isgeneratedonthefly,typicallyinresponsetoanindividualizedrequestfromabrowser.1.5COMMONGATEWAYINTERFACE(CGI):ThefirstwidelyusedstandardforproducingdynamiccontentwastheCommonGatewayInterface(CGI).CGIusesstandardoperatingsystemfeatures,suchasenvironmentvariablesandstandardinputandoutput,tocreateabridge,orgateway,betweenthewebserverandotherapplicationsonthehostmachine.Theotherapplicationscanlookattherequestsenttothembythewebserverandcreateacustomizedresponse.Whenawebserverreceivesarequestthat’sintendedforaCGIprogram,itrunsthatprogramandprovidestheprogramwithinformationfromtheincomingrequest.TheCGIprogramrunsandsendsitsoutputbacktotheserver.Thewebserverthenrelaystheresponsetothebrowser.CGIdefinesasetofconventionsregardingwhatinformationitwillpassasenvironmentvariablesandhowitexpectsstandardinputandoutputtobeused.LikeHTTP,CGIisflexibleandeasytoimplement,andagreatnumberofCGI-awareprogramshavebeenwritten.ThemaindrawbacktoCGIisthatitmustrunanewcopyoftheCGI-awareprogramforeachrequest.Thisisarelativelyexpensiveprocessthatcanbogdownhigh-volumesiteswherethousandsofrequestsareservicedperminute.AnotherdrawbackisthatCGIprogramstendtobeplatformdependent.ACGIprogramwrittenforoneoperatingsystemmaynotrunonanother.1.6JAVASERVLETS:Sun’sJavaServletplatformdirectlyaddressesthetwomaindrawbacksofCGIprograms.First,servletsofferbetterperformanceandutilizationofresourcesthanconventionalCGIprograms.Second,thewrite-once,run-anywherenatureofJavameansthatservletsareportablebetweenoperatingsystemsthathaveaJavaVirtualMachine(JVM).AServletlooksandfeelslikeaminiaturewebserver.Itreceivesarequestandrendersaresponse.But,unlikeconventionalwebservers,theServletapplicationprogramminginterface(API)isspecificallydesignedtohelpJavadeveloperscreatedynamicapplications.TheServletitselfissimplyaJavaclassthathasbeencompiledintobytecode,likeanyotherJavaobject.TheServlethasaccesstoarichAPIofHTTP-specificservices,butitisstilljustanotherJavaobjectrunninginanapplicationandcanleverageallyourotherJavaassets.Togiveconventionalwebserversaccesstoservlets,theservletsarepluggedintocontainers.TheServletcontainerisattachedtothewebserver.EachServletcandeclarewhatURLpatternsitwouldliketohandle.Whenarequestmatchingaregisteredpatternarrives,thewebserverpassestherequesttothecontainer,andthecontainerinvokestheServlet.ButunlikeCGIprograms,anewServletisnotcreatedforeachrequest.OncethecontainerinstantiatestheServlet,itwilljustcreateanewthreadforeachrequest.JavathreadsaremuchlessexpensivethantheserverprocessesusedbyCGIprograms.OncetheServlethasbeencreated,usingitforadditionalrequestsincursverylittleoverhead.Servletdeveloperscanusetheinit()methodtoholdreferencestoexpensiveresources,suchasdatabaseconnectionsorEJBHomeInterfaces,sothattheycanbesharedbetweenrequests.Acquiringresourceslikethesecantakeseveralseconds—whichislongerthanmanysurfersarewillingtowait.Theotheredgeoftheswordisthat,sinceservletsaremultithreaded,Servletdevelopersmusttakespecialcaretobesuretheirservletsarethread-safe.1.7JAVASERVERPAGES:WhileJavaservletsareabigstepupfromCGIprograms,theyarenotapanacea.Togeneratetheresponse,developersarestillstuckwithusingprintlnstatementstorendertheHTML.Codethatlookslike:out.println("<P>OnelineofHTML.</P>");out.println("<P>AnotherlineofHTML.</P>");ItisalltoocommoninservletsthatgeneratetheHTTPresponse.TherearelibrariesthatcanhelpyougenerateHTML,butasapplicationsgrowmorecomplex,JavadevelopersendupbeingcastintotheroleofHTMLpagedesigners.Meanwhile,giventhechoice,mostprojectmanagersprefertodividedevelopmentteamsintospecializedgroups.TheylikeHTMLdesignerstobeworkingonthepresentationwhileJavaengineerssweatthebusinesslogic.Usingservletsaloneencouragesmixingmarkupwithbusinesslogic,makingitdifficultforteammemberstospecialize.Tosolvethisproblem,Sunturnedtotheideaofusingserverpagestocombinescriptingandtemplatingtechnologiesintoasinglecomponent.TobuildJavaServerPages,developersstartbycreatingHTMLpagesinthesameoldway,usingthesameoldHTMLsyntax.Tobringdynamiccontentintothepage,thedevelopercanalsoplaceJSPscriptingelementsonthepage.ScriptingelementsaretagsthatencapsulatelogicthatisrecognizedbytheJSP.YoucaneasilypickoutscriptingelementsonJSPpagesbylookingforcodethatbeginswith<%andendswith%>.TobeseenasaJSPpage,thefilejustneedstobesavedwithanextensionofjsp.WhenaclientrequeststheJSPpage,thecontainertranslatesthepageintoasourcecodefileforaJavaServletandcompilesthesourceintoaJavaclassfile—justasyouwoulddoifyouwerewritingaServletfromscratch.Atruntime,thecontainercanalsocheckthelastmodifieddateoftheJSPfileagainsttheclassfile.IftheJSPfilehaschangedsinceitwaslastcompiled,thecontainerwillretranslateandrebuildthepagealloveragain.ProjectmanagerscannowassignthepresentationlayertoHTMLdevelopers,whothenpassontheirworktoJavadeveloperstocompletethebusiness-logicportion.TheimportantthingtorememberisthataJSPpageisreallyjustaServlet.AnythingyoucandowithaServlet,youcandowithaJSP.1.8JAVABEANS:JavaBeansareJavaclasseswhichconformtoasetofdesignpatternsthatmakethemeasiertousewithdevelopmenttoolsandothercomponents.DEFINITION:AJavaBeanisareusablesoftwarecomponentwritteninJava.ToqualifyasaJavaBean,theclassmustbeconcreteandpublic,andhaveanon-argumentconstructor.JavaBeansexposeinternalfieldsaspropertiesbyprovidingpublicmethodsthatfollowaconsistentdesignpattern.Knowingthatthepropertynamesfollowthispattern,otherJavaclassesareabletouseintrospectiontodiscoverandmanipulateJavaBeanproperties.TheJavaBeandesignpatternsprovideaccesstothebean’sinternalstatethroughtwoflavorsofmethods:accessorsareusedtoreadaJavaBean’sstate;mutatorsareusedtochangeaJavaBean’sstate.Mutatorsarealwaysprefixedwithlowercasetokensetfollowedbythepropertyname.Thefirstcharacterinthepropertynamemustbeuppercase.Thereturnvalueisalwaysvoid—mutatorsonlychangepropertyvalues,theydonotretrievethem.Themutatorforasimplepropertytakesonlyoneparameterinitssignature,whichcanbeofanytype.Mutatorsareoftennicknamedsettersaftertheirprefix.ThemutatormethodsignatureforaweightpropertyofthetypeDoublewouldbe:publicvoidsetWeight(Doubleweight);Asimilardesignpatternisusedtocreatetheaccessormethodsignature.Accessormethodsarealwaysprefixedwiththelowercasetokenget,followedbythepropertyname.Thefirstcharacterinthepropertynamemustbeuppercase.Thereturnvaluewillmatchthemethodparameterinthecorrespondingmutator.Accessorsforsimplepropertiescannotacceptparametersintheirmethodsignature.Notsurprisingly,accessorsareoftencalledgetters.Theaccessormethodsignatureforourweightpropertyis:publicDoublegetWeight();Iftheaccessorreturnsalogicalvalue,thereisavariantpattern.Insteadofusingthelowercasetokenget,alogicalpropertycanusetheprefixis,followedbythepropertyname.Thefirstcharacterinthepropertynamemustbeuppercase.Thereturnvaluewillalwaysbealogicalvalue—eitherbooleanorBoolean.Logicalaccessorscannotacceptparametersintheirmethodsignature.Thebooleanaccessormethodsignatureforanonpropertywouldbe:publicbooleanisOn();ThecanonicalmethodsignaturesplayanimportantrolewhenworkingwithJava-Beans.OthercomponentsareabletousetheJavaReflectionAPItodiscoveraJavaBean’spropertiesbylookingformethodsprefixedbyset,is,orget.IfacomponentfindssuchasignatureonaJavaBean,itknowsthatthemethodcanbeusedtoaccessorchangethebean’sproperties.SunintroducedJavaBeanstoworkwithGUIcomponents,buttheyarenowusedwitheveryaspectofJavadevelopment,includingwebapplications.WhenSunengineersdevelopedtheJSPtagextensionclasses,theydesignedthemtoworkwithJavaBeans.ThedynamicdataforapagecanbepassedasaJavaBean,andtheJSPtagcanthenusethebean’spropertiestocustomizetheoutput.Resource:/pdf/introduction-to-machine-learning/
JSP应用框架1.1什么是应用框架:框架(framework)是可以被重用的一种半成品的应用程序,我们可以用它来制作专门的定制程序。这就如同人类一样,软件应用的相同点要远远大于不同点。它们在相同的机器上运行,把信息输入相同的设备,用相同的显示设备显示,并将数据村存储到相同的硬件设备中。传统的桌面开发应用的开发人员更习惯于使用可以涵盖应用开发同一性的工具包和开发环境。框架提供给开发人员这些公共基础上的应用框架从而为他们的产品提供可重用服务的基本架构。框架是经典的构建-购买-命题。如果你独立构建它——那当你可以独立完成的时候你就会理解它,但是你又花费了多长时间来用之自如呢?如果你购买了它,你必须得克服学习曲线——并且学习它将话费你大约多长时间?这里没有明确的答案,因此许多专家会认为,例如Struts这样的框架能提供比全新的开发更显著的投资回报,特别是对大型项目来说尤为显著。1.2其它类型的框架:框架的思想不仅仅用于应用程序也可以应用于组件。通过这些,我们以前也提到过一些可以与在Struts一起使用的框架。其中包括Lucene搜索引擎,Scaffold工具包,Struts验证器,以及Tiles标签库等等。就像应用框架一样,这些工具也提供了一些可以用在用户的定制组件之中的半成品。某些框架已经呗限定于专门的开发环境之中。而Struts以及本文中涉及的其他框架却不是这样的。你可以在各种各样的开发环境中来使用Struts:例如VisualAgeforJava,JBuilder,Eclipse,Emacs,甚至在Textpad中都可以使用Struts。只要是可以用来开发Java的工具都可以用来开发Struts。1.3使用的技术:使用Struts的应用开发基于大量的其它技术。这些技术并不专属于Struts而是针对所有Javaweb应用的。开发人员之所以使用Struts之类的框架的一个原因是为了隐藏在HTTP,CGI,以及JSP之类技术后面的繁琐细节。作为一个Struts开发人员,你并不需要完全了解Struts的所有相关知识,但是它们有助于解决比较麻烦的问题。1.4超文本传输协议(HTTP):当两个国家质检进行交涉时,外交官们总是遵循一定的正式协议。设计外交协议的主要目的是避免误会从而防止谈判破裂。同样,当两台计算机需要进行会话时,它们也要遵循一个正式协议。这个协议定义数据如何传输以及到达后如何进行解码。Web应用程序使用HTTP协议从而在运行浏览器的计算机和运行的服务器的程序之间传输数据。很多服务器应用程序使用HTTP之外的其他协议。这些协议中的大多数是计算机之间的持久性连接。应用服务器可以清楚的知道是谁什么时候连接的并截止到何时中断的连接。因为它们知道每一个连接的状态甚至每一个使用它的人,这就是所谓的状态协议。与此相反,HTTP被认为是一个无状态协议。HTTPServer可以接受来自于各种客户的各种请求并且可以提供一些响应,即使这个响应仅仅是一个No。没有大量的协议和连接持久性,无状态协议可以处理大量的请求。这就是Internet可以被数量如此巨大的计算机使用的原因之一。HTTP成为通用标准的原因之一是简单性。一个HTTP请求看起来就像一个平常的文本文档。这使应用程序创建HTTP请求变得相当容易。你甚至可以通过标准的程序比如说Telnet来手动发送HTTP请求。当HTTP响应返回时,开发人员也可以直接在文本文档中读到其中的内容。HTTP请求的首行包含方法,其后是请求的来源地址和HTTP版本。可以没有也可以有多个。HTTP头向服务器提供额外的信息。可以包括浏览器的类型和版本,可接受的文档类型,浏览器的cookies,仅仅为了一个名等等。在这7种请求方法中,GET和POST是最流行的。当服务器接收到请求,服务器会马上产生一个HTTP响应。响应的首行称为状态行包含了HTTP协议的版本,字符型状态,以及该状态的简短描述。紧随状态行其后,服务器将返回一组类似于HTTP请求头的HTTP响应头。按我们所描述的,HTTP并不会在请求之间保留状态信息。服务器接受请求,发出响应,并且顺利的处理文本请求。尽管HTTP是简单与快捷的,但是无状态的HTTP协议并不适合于需要跟踪用户状态的动态应用。Cookies和URL重写是两种应用于请求之间跟踪用户状态的方式。cookie是一种用户电脑上的特殊信息包。URL重写是在页面地址中存储一个特殊的标记从而让Java服务器可以用它来跟踪用户。这两种方法都不是完美的,而且使用哪一个都意味着开发web工程时需要进行额外的工作。对其本身来说,标准的HTTPweb服务器并不需要发送动态内容。它主要是使用请求来定位并在相应中返回文件资源。通常这里的文件使用超文本语言(HTML)[W3C,HTML]格式化以及显示它们。HTML页面通常包含一些到其他页面的超连接,或者说一些其他内容比如图片视频等等。用户点击链接产生一个新的请求,同时开始了一个新的处理过程。标准web服务器对于静态内容和图片的处理相当好,但处理动态内容时需要外力的帮助。定义:web中的静态内容直接来自于文本或数据文件,例如HTML或JPEG文件。这些文件可以随时改变,但通过浏览器请求时却不能自动改变。相反,从另一方面来说,动态内容是临时产生的,它是针对浏览器的一个典型的个别请求的响应。1.5公共网关接口(CGI):首个广泛使用动态内容的标准是通用网关接口CommonGatewayInterface(CGI)。CGI使用环境变量,标准的输入输出等标准的操作系统特征,在Web服务器之间,以及和主机系统之间创建桥接和网关。其他应用可以看到webserver传递过来的请求并创建一个定制的响应。当一个web服务器收到一个对CGI程序的请求时,服务器运行CGI程序并向CGI提供它请求里面所包含的信息。CGI程序开始运行后将输出返回给web服务器。web服务器把相应发送给浏览器。CGI定义了一套关于什么信息将作为环境变量传递以及它希望如何使用标准的输入输出。就像HTTP一样,CGI是灵活和易于实现的,并且已经有大量成型的CGI程序。CGI程序的主要缺点是每个请求对应一个新副本。这是一个相对昂贵的处理方法对大容量站点来说每分钟的数千个请求可能会使站点瘫痪。另一个缺点是依赖于平台。为一个操作系统写的CGI不能在其他操作系统上使用。1.6Javaservlet:Sun公司的JavaServlet平台直接解决了CGI程序的两个主要缺点。首先servlet比CGI程序提供更好的性能和资源利用。其次,JAVA的一次编写,随处运行的特性意味着servlet可以在存在虚拟机(JVM)的操作系统间随意移动。Servlet类似于一个微型web服务器。它接受请求并产生响应。但是,与常规web服务器不同的是,servletAPI是专门用来帮助Java开发人员创建动态应用的。Servlet自身是如同其他任何一个Java类,需要编译成字节码文件的Java类。Servlet访问HTTP特定服务的API,但它仍然是一个运行于程序之中的Java对象并可以利用所有的Java资产。为了使常规web服务器能访问servlet,servlet被安放在一个容器中。servlet容器连接web服务器。每个servlet都可以声明它想处理哪种URL。当符合条件的请求到达web服务器的时候,web服务器将请求传递给servlet容器,servlet容器则调用servlet。但是与CGI程序不同,并不是每个请求都会创建新的servlet。一旦容器实例化了一个servlet,它就仅为每个新的请求创建一个新的线程。Java线程比CGI程序的服务器话费要少很多。一旦servlet被创建,使用它处理额外的请求仅带来很小的额外开支。Servlet开发人员可以使用init()方法保持对昂贵资源的引用,比如连接数据库或者EJBHome接口等等,以便它们可以在不同的请求之间进行共享资源。获得这些资源需要好肥几秒钟的时间——这比大多数网上冲浪的人
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024-2030年国家甲级资质:中国球磨机融资商业计划书
- 2024-2030年半导体分立器件制造公司技术改造及扩产项目可行性研究报告
- 2012年湖南怀化中考满分作文《在体验中成长》
- 2023-2024学年四川省成都市武侯区小学三年级上册数学期末试题及答案
- 2024年大学代理招生合作协议书定制版3篇
- 潮州知识产权课程设计
- 核辐射课程设计
- 2024年中通快递快递业务区域合作承包合同3篇
- 2025年小升初复习之小题狂练300题(选择题):数词(10题)
- 柱下桩基础设计课程设计
- 2023新兵集训总结发言
- 《财务管理》课程教学成果创新报告
- 护理基础知识1000基础题
- 2023-2024学年成都市武侯区数学六上期末质量跟踪监视试题含答案
- 沥青混凝土面层工序样板表格
- 毕业设计(论文)-铁路货物运输装载加固方案设计
- 知校·爱校·荣校华东师大教职工校史知识竞赛
- 煤矿新技术新工艺新设备和新材料演示文稿
- 渔光互补光伏发电项目选址方案
- 选词填空(试题)外研版英语五年级上册
- 物业公司危险源清单课件
评论
0/150
提交评论