2023年全國(guó)碩士研究生考試考研英語(yǔ)一試題真題(含答案詳解+作文范文)_第1頁(yè)
已閱讀1頁(yè),還剩17頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、<p><b>  外文翻譯原文及譯文</b></p><p>  JSP application frameworks</p><p>  What are application frameworks:</p><p>  A framework is a reusable, semi-complete application t

2、hat can be specialized to</p><p>  produce custom applications [Johnson]. Like people, software applications are more alike than they are different. They run on the same computers, expect input from the same

3、 devices, output to the same displays, and save data to the same hard disks. Developers working on conventional desktop applications are accustomed to toolkits and development environments that leverage the sameness betw

4、een applications. Application frameworks build on this common ground to provide developers with a reusable s</p><p>  A framework provides developers with a set of backbone components that have the following

5、 characteristics:</p><p>  1.They are known to work well in other applications.</p><p>  2. They are ready to use with the next project.</p><p>  3. They can also be used by other t

6、eams in the organization.</p><p>  Frameworks are the classic build-versus-buy proposition. If you build it, you will understand it when you are done—but how long will it be before you can roll your own? If

7、you buy it, you will have to climb the learning curve—and how long is that going to take? There is no right answer here, but most observers would agree that frameworks such as Struts provide a significant return on inves

8、tment compared to starting from scratch, especially for larger projects.</p><p>  Other types of frameworks:</p><p>  The idea of a framework applies not only to applications but to application

9、componentsas well. Throughout this article, we introduce other types of frameworks that you can use with Struts. These include the Lucene search engine, the Scaffold toolkit, the Struts validator, and the Tiles tag libra

10、ry. Like application frameworks, these tools provide semi-complete versions of a subsystem that can be specialized to provide a custom component.</p><p>  Some frameworks have been linked to a proprietary de

11、velopment environment. This is not the case with Struts or any of the other frameworks shown in this book. You can use any development environment with Struts: Visual Age for Java, JBuilder, Eclipse, Emacs, and Textpad a

12、re all popular choices among Struts developers. If you can use it with Java, you can use it with Struts.</p><p>  Enabling technologies:</p><p>  Applications developed with Struts are based on

13、a number of enabling technologies.These components are not specific to Struts and underlie every Java web application. A reason that developers use frameworks like Struts is to hide the nasty details behind acronyms like

14、 HTTP, CGI, and JSP. As a Struts developer, you don’t need to be an alphabet soup guru, but a working knowledge of these base technologies can help you devise creative solutions to tricky problems.</p><p>  

15、Hypertext Transfer Protocol (HTTP):</p><p>  When mediating talks between nations, diplomats often follow a formal protocol.</p><p>  Diplomatic protocols are designed to avoid misunderstandings

16、 and to keep negotiations from breaking down. In a similar vein, when computers need to talk, they also follow a formal protocol. The protocol defines how data is transmitted and how to decode it once it arrives. Web app

17、lications use the Hypertext Transfer Protocol (HTTP) to move data between the browser running on your computer and the application running on the server.</p><p>  Many server applications communicate using p

18、rotocols other than HTTP. Some of these maintain an ongoing connection between the computers. The application server knows exactly who is connected at all times and can tell when a connection is dropped. Because they kno

19、w the state of each connection and the identity of each person using it, these are known as stateful protocols.</p><p>  By contrast, HTTP is known as a stateless protocol. An HTTP server will accept any req

20、uest from any client and will always provide some type of response, even if the response is just to say no. Without the overhead of negotiating and retaining a connection, stateless protocols can handle a large volume of

21、 requests. This is one reason why the Internet has been able to scale to millions of computers.</p><p>  Another reason HTTP has become the universal standard is its simplicity. An HTTP request looks like an

22、 ordinary text document. This has made it easy for applications to make HTTP requests. You can even send an HTTP request by hand using a standard utility such as Telnet. When the HTTP response comes back, it is also in p

23、lain text that developers can read.</p><p>  The first line in the HTTP request contains the method, followed by the location</p><p>  of the requested resource and the version of HTTP. Zero or

24、more HTTP request headers follow the initial line. The HTTP headers provide additional information to the server. This can include the browser type and version, acceptable document types, and the browser’s cookies, just

25、to name a few. Of the seven request methods, GET and POST are by far the most popular.</p><p>  Once the server has received and serviced the request, it will issue an HTTP response. The first line in the re

26、sponse is called the status line and carries the HTTP protocol version, a numeric status, and a brief description of the status. Following the status line, the server will return a set of HTTP response headers that work

27、in a way similar to the request headers.</p><p>  As we mentioned, HTTP does not preserve state information between requests.The server logs the request, sends the response, and goes blissfully on to the nex

28、t request. While simple and efficient, a stateless protocol is problematic for dynamic applications that need to keep track of their users. (Ignorance is not always bliss.</p><p>  Cookies and URL rewriting

29、are two common ways to keep track of users between requests. A cookie is a special packet of information on the user’s computer. URL rewriting stores a special reference in the page address that a Java server can use to

30、track users. Neither approach is seamless, and using either means extra work when developing a web application. On its own, a standard HTTP web server does not traffic in dynamic content. It mainly uses the request to lo

31、cate a file and then returns that </p><p>  Standard web servers handle static content and images quite well but need a helping hand to provide users with a customized, dynamic response. </p><p>

32、;  DEFINITION:Static content on the Web comes directly from text or data files, like HTML or JPEG files. These files might be changed from time to time, but they are not altered automatically when requested by a web brow

33、ser. Dynamic content, on the other hand, is generated on the fly, typically in response to an individualized request from a browser.</p><p>  Common Gateway Interface (CGI):</p><p>  The first w

34、idely used standard for producing dynamic content was the Common Gateway Interface (CGI). CGI uses standard operating system features, such as environment variables and standard input and output, to create a bridge, or g

35、ateway, between the web server and other applications on the host machine. The other applications can look at the request sent to them by the web server and create a customized response.</p><p>  When a web

36、server receives a request that’s intended for a CGI program, it runs that program and provides the program with information from the incoming request. The CGI program runs and sends its output back to the server. The web

37、 server then relays the response to the browser.</p><p>  CGI defines a set of conventions regarding what information it will pass as environment variables and how it expects standard input and output to be

38、used. Like HTTP, CGI is flexible and easy to implement, and a great number of CGI-aware programs have been written.</p><p>  The main drawback to CGI is that it must run a new copy of the CGI-aware program f

39、or each request. This is a relatively expensive process that can bog down high-volume sites where thousands of requests are serviced per minute. Another drawback is that CGI programs tend to be platform dependent. A CGI

40、program written for one operating system may not run on another.</p><p>  Java servlets:</p><p>  Sun’s Java Servlet platform directly addresses the two main drawbacks of CGI programs.First, ser

41、vlets offer better performance and utilization of resources than conventional CGI programs. Second, the write-once, run-anywhere nature of Java means that servlets are portable between operating systems that have a Java

42、Virtual Machine (JVM).</p><p>  A servlet looks and feels like a miniature web server. It receives a request and renders a response. But, unlike conventional web servers, the servlet application programming

43、interface (API) is specifically designed to help Java developers create dynamic applications.</p><p>  The servlet itself is simply a Java class that has been compiled into byte code, like any other Java obj

44、ect. The servlet has access to a rich API of HTTP-specific services, but it is still just another Java object running in an application and can leverage all your other Java assets.</p><p>  To give conventio

45、nal web servers access to servlets, the servlets are plugged into containers. The servlet container is attached to the web server. Each servlet can declare what URL patterns it would like to handle. When a request matchi

46、ng a registered pattern arrives, the web server passes the request to the container, and the container invokes the servlet.</p><p>  But unlike CGI programs, a new servlet is not created for each request. On

47、ce the container instantiates the servlet, it will just create a new thread for each request. Java threads are much less expensive than the server processes used by CGI programs. Once the servlet has been created, using

48、it for additional requests incurs very little overhead. Servlet developers can use the init() method to hold references to expensive resources, such as database connections or EJB Home Interfaces, so that t</p>&l

49、t;p>  The other edge of the sword is that, since servlets are multithreaded, servlet developers must take special care to be sure their servlets are thread-safe. To learn more about servlet programming, we recommend J

50、ava Servlets by Example, by Alan R. Williamson [Williamson]. The definitive source for Servlet information is the Java Servlet Specification [Sun, JST].</p><p>  JavaServer Pages:</p><p>  While

51、 Java servlets are a big step up from CGI programs, they are not a panacea. To generate the response, developers are still stuck with using println statements to render the HTML. Code that looks like:</p><p>

52、;  out.println("<P>One line of HTML.</P>");</p><p>  out.println("<P>Another line of HTML.</P>");</p><p>  is all too common in servlets that generate

53、 the HTTP response. There are libraries that can help you generate HTML, but as applications grow more complex, Java developers end up being cast into the role of HTML page designers.</p><p>  Meanwhile, giv

54、en the choice, most project managers prefer to divide development teams into specialized groups. They like HTML designers to be working on the presentation while Java engineers sweat the business logic. Using servlets al

55、one encourages mixing markup with business logic, making it difficult for team members to specialize.</p><p>  To solve this problem, Sun turned to the idea of using server pages to combine scripting and tem

56、plating technologies into a single component. To build Java Server Pages, developers start by creating HTML pages in the same old way, using the same old HTML syntax. To bring dynamic content into the page, the developer

57、 can also place JSP scripting elements on the page. Scripting elements are tags that encapsulate logic that is recognized by the JSP. You can easily pick out scripting elements on JSP </p><p>  To be seen as

58、 a JSP page, the file just needs to be saved with an extension of .jsp.</p><p>  When a client requests the JSP page, the container translates the page into a source code file for a Java servlet and compiles

59、 the source into a Java class file—just as you would do if you were writing a servlet from scratch. At runtime, the container can also check the last modified date of the JSP file against the class file. If the JSP file

60、has changed since it was last compiled, the container will retranslate and rebuild the page all over again.</p><p>  Project managers can now assign the presentation layer to HTML developers, who then pass o

61、n their work to Java developers to complete the business-logic portion. The important thing to remember is that a JSP page is really just a servlet. Anything you can do with a servlet, you can do with a JSP.</p>&

62、lt;p>  JavaBeans:</p><p>  JavaBeans are Java classes which conform to a set of design patterns that make them easier to use with development tools and other components.</p><p>  DEFINITION A

63、 JavaBean is a reusable software component written in Java. To qualify as a JavaBean, the class must be concrete and public, and have a noargument constructor. JavaBeans expose internal fields as properties by providing

64、public methods that follow a consistent design pattern. Knowing that the property names follow this pattern, other Java classes are able to use introspection to discover and manipulate JavaBean properties. </p>&l

65、t;p>  The JavaBean design patterns provide access to the bean’s internal state through two flavors of methods: accessors are used to read a JavaBean’s state; mutators are used to change a JavaBean’s state.</p>

66、<p>  Mutators are always prefixed with lowercase token set followed by the property name. The first character in the property name must be uppercase. The return value is always void—mutators only change property va

67、lues; they do not retrieve them. The mutator for a simple property takes only one parameter in its signature, which can be of any type. Mutators are often nicknamed setters after their prefix. The mutator method signatur

68、e for a weight property of the type Double would be:</p><p>  public void setWeight(Double weight)</p><p>  A similar design pattern is used to create the accessor method signature. Accessor met

69、hods are always prefixed with the lowercase token get, followed by the property name. The first character in the property name must be uppercase. The return value will match the method parameter in the corresponding muta

70、tor. Accessors for simple properties cannot accept parameters in their method signature. Not surprisingly, accessors are often called getters.</p><p>  The accessor method signature for our weight property i

71、s:</p><p>  public Double getWeight()</p><p>  If the accessor returns a logical value, there is a variant pattern. Instead of using the lowercase token get, a logical property can use the prefi

72、x is, followed by the property name. The first character in the property name must be uppercase. The return value will always be a logical value—either boolean or Boolean. Logical accessors cannot accept parameters in th

73、eir method signature.</p><p>  The boolean accessor method signature for an on property would be</p><p>  public boolean isOn()</p><p>  The canonical method signatures play an impo

74、rtant role when working with Java- Beans. Other components are able to use the Java Reflection API to discover a JavaBean’s properties by looking for methods prefixed by set, is, or get. If a component finds such a signa

75、ture on a JavaBean, it knows that the method can be used to access or change the bean’s properties.</p><p>  Sun introduced JavaBeans to work with GUI components, but they are now used with every aspect of J

76、ava development, including web applications. When Sun engineers developed the JSP tag extension classes, they designed them to work with JavaBeans. The dynamic data for a page can be passed as a JavaBean, and the JSP tag

77、 can then use the bean’s properties to customize the output.</p><p>  For more on JavaBeans, we highly recommend The Awesome Power of JavaBeans, by Lawrence H. Rodrigues [Rodrigues]. The definitive source fo

78、r JavaBean information is the JavaBean Specification [Sun, JBS].</p><p><b>  Model 2:</b></p><p>  The 0.92 release of the Servlet/JSP Specification described Model 2 as an architect

79、ure that uses servlets and JSP pages together in the same application. The term Model 2 disappeared from later releases, but it remains in popular use among Java web developers.</p><p>  Under Model 2, servl

80、ets handle the data access and navigational flow, while JSP pages handle the presentation. Model 2 lets Java engineers and HTML developers each work on their own part of the application. A change in one part of a Model 2

81、 application does not mandate a change to another part of the application. HTML developers can often change the look and feel of an application without changing how the back-office servlets work.</p><p>  Th

82、e Struts framework is based on the Model 2 architecture. It provides a controller servlet to handle the navigational flow and special classes to help with the data access. A substantial custom tag library is bundled with

83、 the framework to make Struts easy to use with JSP pages.</p><p><b>  Summary:</b></p><p>  In this article, we introduced Struts as an application framework. We examined the technol

84、ogy behind HTTP, the Common Gateway Interface, Java servlets, JSPs, and JavaBeans. We also looked at the Model 2 application architecture to see how it is used to combine servlets and JSPs in the same application.</p&

85、gt;<p>  Now that you have had a taste of what it is like to develop a web application with Struts, in chapter 2 we dig deeper into the theory and practice behind the Struts architecture.</p><p><b

86、>  JSP 應(yīng)用框架</b></p><p><b>  什么是應(yīng)用框架:</b></p><p>  框架(framework)是可重用的,半成品的應(yīng)用程序,可以用來(lái)產(chǎn)生專(zhuān)門(mén)的定制程序。象人一樣,軟件應(yīng)用的相似性比不同點(diǎn)要多。它們運(yùn)行在相似的機(jī)器上,期望從相同的設(shè)備輸入信息,輸出到相同的顯示設(shè)備,并且將數(shù)據(jù)存儲(chǔ)到相同的硬盤(pán)設(shè)備。開(kāi)發(fā)傳統(tǒng)桌面應(yīng)用的

87、開(kāi)發(fā)人員更習(xí)慣于那些可以涵蓋應(yīng)用開(kāi)發(fā)同一性的工具包和開(kāi)發(fā)環(huán)境。構(gòu)架在這些公共基礎(chǔ)上的應(yīng)用框架可以為開(kāi)發(fā)人員提供可以為他們的產(chǎn)品提供可重用服務(wù)的基礎(chǔ)架構(gòu)。</p><p>  框架向開(kāi)發(fā)人員提供一系列具有以下特征的骨架組件:</p><p>  1.已經(jīng)知道它們?cè)谄渌绦蛏瞎ぷ鞯煤芎茫?lt;/p><p>  2.它們隨時(shí)可以在下一個(gè)項(xiàng)目中使用;</p>&

88、lt;p>  3.它們可以被組織的其它團(tuán)隊(duì)使用;</p><p>  對(duì)于框架是典型的構(gòu)建還是購(gòu)買(mǎi)命題。如果你自己構(gòu)建它,在你完成時(shí)你就會(huì)理解它,但是在你被融入之前又將花費(fèi)多長(zhǎng)時(shí)間呢?如果要購(gòu)買(mǎi),你必須得克服學(xué)習(xí)曲線,同樣,在你可以用它進(jìn)行工作之前又得花多長(zhǎng)時(shí)間?這里沒(méi)有所謂正確答案,但許多觀察者都會(huì)同意,象Struts這樣的框架能提供比從頭開(kāi)始開(kāi)發(fā)更顯著的投資回報(bào),特別是對(duì)于大型項(xiàng)目來(lái)說(shuō)。</p&g

89、t;<p><b>  其它類(lèi)型的框架:</b></p><p>  框架的概念不僅用于應(yīng)用程序也可用于組件。在其它的資料里面,我們也介紹了一些可以和Struts一起使用的框架。這些包括Lucene搜索引擎,Scaffold工具包,Struts驗(yàn)證器,以及Tiles標(biāo)簽庫(kù)。與應(yīng)用框架一樣,這些工具也提供了一些半完成的版本,可以用在用戶(hù)的定制組件之中。某些框架被限制于專(zhuān)門(mén)的開(kāi)發(fā)環(huán)

90、境中。Struts以及本文中涉及的組件卻不是這樣。你可以在很多環(huán)境中來(lái)開(kāi)發(fā)Struts: Visual Age for Java, JBuilder, Eclipse, Emacs, 甚至使用Textpad。對(duì)于你的工具,如果你可以用來(lái)開(kāi)發(fā)Java, 你就可以用它來(lái)開(kāi)發(fā)Struts。</p><p><b>  使用的技術(shù):</b></p><p>  使用Strut

91、s的應(yīng)用開(kāi)發(fā)使用了大量的其他基礎(chǔ)技術(shù)。這些技術(shù)并不是專(zhuān)門(mén)針對(duì)Struts,而是所有Java web 應(yīng)用都可以使用的。開(kāi)發(fā)者使用Struts之類(lèi)的框架是為了隱藏在諸如HTTP,CGI,以及JSP之類(lèi)技術(shù)后面的繁瑣的細(xì)節(jié)。作為一個(gè)Struts開(kāi)發(fā)者,你并不需要知曉所有的相關(guān)知識(shí),但是這些基本技術(shù)的工作原理可能有助于你針對(duì)棘手問(wèn)題設(shè)計(jì)出創(chuàng)造性的方案。</p><p>  超文本傳輸協(xié)議 (HTTP):</p&g

92、t;<p>  當(dāng)兩個(gè)國(guó)家之間進(jìn)行調(diào)解時(shí),外交官們總是遵循一定的正式協(xié)議。外交協(xié)議主要設(shè)計(jì)來(lái)避免誤解,以及防止談判破裂。同樣,當(dāng)計(jì)算機(jī)間需要對(duì)話,它們也遵循一個(gè)正式的協(xié)議。這個(gè)協(xié)議定義數(shù)據(jù)是如何傳輸,以及它們到達(dá)后如何進(jìn)行解碼。Web應(yīng)用程序就是使用HTTP協(xié)議在運(yùn)行瀏覽器的計(jì)算機(jī)和運(yùn)行的服務(wù)器的程序間傳輸數(shù)據(jù)。</p><p>  很多服務(wù)器應(yīng)用程序使用HTTP之外的其他協(xié)議。他們?cè)谟?jì)算機(jī)之間維護(hù)

93、一個(gè)持久性的連接。應(yīng)用服務(wù)器可以清楚的知道是誰(shuí)連接上來(lái),而且何時(shí)中斷連接。因?yàn)樗鼈冎烂恳粋€(gè)連接的狀態(tài),以及每一個(gè)使用它的人。這稱(chēng)之為狀態(tài)協(xié)議。</p><p>  相反, HTTP是一個(gè)無(wú)狀態(tài)協(xié)議。HTTP Server 可以接受來(lái)自于各種客戶(hù)的各種請(qǐng)求,并提供各種響應(yīng),即使是這個(gè)響應(yīng)僅僅是說(shuō)No。沒(méi)有大量的協(xié)商和連接持久性,無(wú)狀態(tài)協(xié)議可以處理大量的請(qǐng)求。這也是Internet 可以擴(kuò)展到很多計(jì)算機(jī)的原因。&l

94、t;/p><p>  HTTP 成為通用標(biāo)準(zhǔn)的原因是其簡(jiǎn)單性。HTTP請(qǐng)求看起來(lái)就像一個(gè)平常的文本文檔。這使應(yīng)用程序很容易創(chuàng)建HTTP請(qǐng)求。你甚至可以通過(guò)標(biāo)準(zhǔn)的程序如Telnet來(lái)手動(dòng)傳遞一個(gè)HTTP請(qǐng)求。當(dāng)HTTP響應(yīng)返回時(shí),它也是一個(gè)開(kāi)發(fā)者可以直接閱讀的平面文本。HTTP請(qǐng)求的第一行包含方法,其后是請(qǐng)求的來(lái)源地址和HTTP版本。HTTP請(qǐng)求頭跟在首行后面,可以沒(méi)有也可以有多個(gè)。HTTP頭向服務(wù)器提供額外的信息。可

95、以包括瀏覽器的種類(lèi)和版本,可接受的文檔類(lèi)型,瀏覽器的cookies等等。7 種請(qǐng)求方法中, GET和 POST是用得最多的。</p><p>  一旦服務(wù)器接收到請(qǐng)求,它就要產(chǎn)生一個(gè)HTTP響應(yīng)。響應(yīng)的第一行稱(chēng)為狀態(tài)行,包含了HTTP協(xié)議的版本,數(shù)字型狀態(tài),以及狀態(tài)的簡(jiǎn)短描述。狀態(tài)行后,服務(wù)器將返回一個(gè)HTTP響應(yīng)頭,類(lèi)似于HTTP請(qǐng)求頭。如上所述,HTTP并不在請(qǐng)求間保持狀態(tài)信息。服務(wù)器接受請(qǐng)求,發(fā)出響應(yīng),并且

96、繼續(xù)愉快地處理文本請(qǐng)求。</p><p>  因?yàn)楹?jiǎn)單和效率,無(wú)狀態(tài)協(xié)議不適合于需要跟蹤用戶(hù)狀態(tài)的動(dòng)態(tài)應(yīng)用。Cookies和 URL 重寫(xiě)是兩個(gè)在請(qǐng)求間跟蹤用戶(hù)狀態(tài)的方式。cookie是一種特殊的信息包,存儲(chǔ)于用戶(hù)的計(jì)算機(jī)中。URL重寫(xiě)是在頁(yè)面地址中存儲(chǔ)一個(gè)特殊的標(biāo)記,Java服務(wù)器可以用它來(lái)跟蹤用戶(hù)。這兩種方法都不是無(wú)縫的,是用哪一個(gè)都意味著在開(kāi)發(fā)時(shí)都要進(jìn)行額外的工作。對(duì)其本身來(lái)說(shuō),標(biāo)準(zhǔn)的HTTP web服務(wù)器

97、并不傳輸動(dòng)態(tài)內(nèi)容。它主要是使用請(qǐng)求來(lái)定位文件資源,并在響應(yīng)中返回此資源。通常這里的文件使用Hypertext Markup Language (HTML) [W3C,HTML] 格式化,以使瀏覽器可以顯示它們。HTML頁(yè)面通常包含一些到其他頁(yè)面的超文本連接,也可以顯示其他一些內(nèi)容比如圖像和視頻等等。用戶(hù)點(diǎn)擊連接將產(chǎn)生另一個(gè)請(qǐng)求,就開(kāi)始一個(gè)新的處理過(guò)程。標(biāo)準(zhǔn)web服務(wù)器處理靜態(tài)內(nèi)容處理得很好,但處理動(dòng)態(tài)內(nèi)容時(shí)則需要額外的幫助手段了。<

98、;/p><p>  定義 靜態(tài)內(nèi)容直接來(lái)自于文本或數(shù)據(jù)文件,比如HTML或者 JPEG文件。這些文件可以隨時(shí)改變,但通過(guò)瀏覽器請(qǐng)求時(shí),卻不能自動(dòng)改變。相反,動(dòng)態(tài)內(nèi)容是臨時(shí)產(chǎn)生的,典型地,它是針對(duì)瀏覽器的個(gè)別請(qǐng)求的響應(yīng)。</p><p>  公共網(wǎng)關(guān)接口(CGI):</p><p>  第一個(gè)普遍用來(lái)產(chǎn)生動(dòng)態(tài)內(nèi)容的標(biāo)準(zhǔn)是通用網(wǎng)關(guān)接口(Common Gateway Inte

99、rface (CGI))。CGI使用標(biāo)準(zhǔn)的操作系統(tǒng)特征,比如環(huán)境變量和標(biāo)準(zhǔn)輸入輸出,在Web服務(wù)器間以及和主機(jī)系統(tǒng)間創(chuàng)建橋接和網(wǎng)關(guān)。其他程序可以看到web server傳遞過(guò)來(lái)的請(qǐng)求,并創(chuàng)建一個(gè)定制的響應(yīng)。當(dāng)web服務(wù)器接收到一個(gè)對(duì)CGI程序的請(qǐng)求時(shí),它便運(yùn)行這個(gè)程序并向其提供它請(qǐng)求里面所包含的信息。CGI程序運(yùn)行,并將輸出返回給Web server,web server 則將輸出響應(yīng)給瀏覽器。CGI定義了一套關(guān)于什么信息將作為環(huán)境變量

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論