外文资料翻译_基于ASP校园论坛毕业设计_相关外文资料
ASP(计算机专业)外文翻译

英文原文The Active Server Pages( ASP) is a server to carry the script plait writes the environment, using it can create to set up with circulate the development, alternant Web server application procedure. Using the ASP cans combine the page of HTML, script order to create to set up the alternant the page of Web with the module of ActiveX with the mighty and applied procedure in function that according to Web. The applied procedure in ASP develops very easily with modify.The HTML plait writes the personnel if you are a simple method that a HTML plait writes the personnel, you will discover the script of ASP providing to create to have diplomatic relation with each other page. If you once want that collect the data from the form of HTML, or use the name personalization HTML document of the customer, or according to the different characteristic in different usage of the browser, you will discover ASP providing an outstanding solution. Before, to think that collect the data from the form of HTML, have to study a plait distance language to create to set up a CGI application procedure. Now, you only some simple instruction into arrive in your HTML document, can collect from the form the data combine proceeding analysis. You need not study the complete plait distance language again or edit and translate the procedure to create to have diplomatic relation alone with each other page.Along with control to use the ASP continuously with the phonetic technique in script, you can create to set up the more complicated script. For the ASP, you can then conveniently usage ActiveX module to carry out the complicated mission, link the database for example with saving with inspectional information.If you have controlled a script language, such as VBScript, JavaScript or PERL, and you have understood the method that use the ASP.As long as installed to match the standard cowgirl in the script of ActiveX script engine, can use in the page of ASP an any a script language. Does the ASP take the Microsoft? Visual Basic? Scripting Edition ( VBScript) with Microsoft? Script? Of script engine, like this you can start the editor script immediately. PERL, REXX with Python ActiveX script engine can from the third square develops the personnel acquires. The Web develops thepersonnel if you have controlled a plait distance language, such as Visual Basic, you will discover the ASP creates a very vivid method that set up the Web application procedure quickly. Pass to face to increase in the HTML the script order any, you can create the HTML that set up the applied procedure connects. Pass to create to set up own the module of ActiveX, can will apply the business in the procedure logic seal to pack and can adjust from the script, other module or from the other procedure the mold piece that use.The usage ASP proceeds the calculating Web can convert into the visible benefits, it can make the supplier of Web provide the alternant business application but not only is to announce the contents. For example, the travel agency can compare the announcement aviation schedule makes out more; Using the script of ASP can let the customer inspect the current service, comparison expenses and prepare to book seats.Include too can lower in the Windows NT Option Microsoft in the pack Transaction Server ( MTS) on the server complexity of constructing the procedure with expenses. The MTS can resolve to develop those confidentialities strong, can ratings of and the dependable Web applies the complexity problem of the procedure. Active Server Pages modelThe browser requests from the server of Web. Hour of asp document, the script of ASP starts circulating. Then the server of Web adjusts to use the ASP, the ASP reads completely the document of the claim, carry out all scripts order any, combining to deliver the page of Web to browser.Because script is on the server but is not at the customer to carry the movement, deliver the page of Web on the browser is on the Web server born. Combining to deliver the standard HTML to browser. Because only the result that there is script returns the browser, so the server carries the not easy replication in script. The customer cans not see to create to set up them at script order that the page that view.We introduce the Basic form of the database language known as SQL, a language that allows us to query and manipulate data on computerized relational database systems. SQL has been the lingua franca for RDBMS since the early 1980s, and it is of fundamental importance for many of the concepts presented in this text. The SQLlanguage is currently in transition from the relational form (the ANSI SQL –92 standard) to a newer object-relational form (ANSI SQL -99, which was released in 1999). SQL-99 should be thought of as extending SQL-92, not changing any of the earlier valid language. Usually, the basic SQL we define matches most closely the ANSI SQL standards basic subsets, called Entry SQL -92 and core SQL-99 that are commonly implemented; our touchstone in defining basic SQL is to provide a syntax that is fully available on most of the major RDBMS products[7].We begin with an overview of SQL capabilities, and then we explain something about the multiple SQL standards and dialects and how we will deal with these in our presentation.We will learn how to pose comparable queries in SQL, using a form known as the Select statement. As we will see, the SQL select statement offers more flexibility in a number of ways than relational algebra for posing queries. However, there is no fundamental improvement in power, nothing that could not be achieved in relational algebra , given a few well-considered extensions. For this reason, experience with relational algebra gives us a good idea of what can be accomplished in SQL. At the same time, SQL and relational algebra have quite different conceptual models in a number of respects, and the insight drawn from familiarity with the relational algebra approach may enhance your understanding of SQL capabilities.The most important new feature you will encounter with SQL is the ability to pose queries interactively in a computerized environment. The SQL select statement is more complicated and difficult to master than the relatively simple relational algebra, but you should never feel list or uncertain as long as you have access to computer facilities where a few experiments can clear up uncertainties about SQL use. The interactive SQL environment discussed in the current chapter allows you to type a query on a monitor screen and get an immediate answer. Such interactive queries are sometimes called ad box queries. This term refers to the fact that an SQL select statement is meant to be composed all at once in a few type written lines and not be dependent on any prior interaction in a user session. The feature of not being dependent on prior interaction is also down as non-procedurality. SQL differs in this way even from relational algebra, where a prior alias statement might be needed inorder to represent a product of a table with itself. The difference between SQL and procedural languages such as java or c is profound: you do not need to write a program to try out an SQL query, you just have to type the relatively short, self-contained text of the query and submit it .Of course, an SQL query can be rather complex . A limited part of this full form, know as a sub-query, is defined recursively, and the full select statement form has one added clause. You should not feel intimidated by the complexity of the select statement, however. The fact that a select statement is non-procedural means that it has a lot in common with a menu driven application, where a user is expected to fill in some set of choices from a menu and then press the enter key to execute the menu choices all at once. The various clauses of the select statement correspond to menu choices: you will occasionally need all these clauses, but on not expect to use all of them every time you pose a query.Observed reliability depends on the context in which the system s used. As discussed already, the system environment cannot be specified in advance nor can the system designers place restrictions on that environment for operational systems. Different systems in an environment may react to problems in unpredictable ways, thus affecting the reliability of all of these systems. There for, even when the system has been integrated, it may be difficult to make accurate measurements of its reliability.Visual Basic Database Access prospectsWith the recent Web application software and the rapid development of the existing data stored in diverse forms, Visual Basic Database Access Solutions faces such as rapid extraction enterprises located in the internal and external business information with the multiple challenges. To this end Microsoft, a new database access strategy "unified data access" (UniversalDataAccess) strategy. "Unified data access" to provide high-performance access, including relational and non-relational data in a variety of sources, provide independent in the development of language development tools and the simple programming interface, these technologies makes enterprise integration of multiple data sources, better choice of development tools, application software, operating platforms, and will establish a maintenance easysolution possible.汉语翻译Active Server Pages(ASP)是服务器端脚本编写环境,使用它可以创建和运行动态、交互的Web 服务器应用程序。
毕业设计外文翻译_英文版

A Design and Implementation of Active NetworkSocket ProgrammingK.L. Eddie Law, Roy LeungThe Edward S. Rogers Sr. Department of Electrical and Computer EngineeringUniversity of TorontoToronto, Canadaeddie@, roy.leung@utoronto.caAbstract—The concept of programmable nodes and active networks introduces programmability into communication networks. Code and data can be sent and modified on their ways to destinations. Recently, various research groups have designed and implemented their own design platforms. Each design has its own benefits and drawbacks. Moreover, there exists an interoperability problem among platforms. As a result, we introduce a concept that is similar to the network socket programming. We intentionally establish a set of simple interfaces for programming active applications. This set of interfaces, known as Active Network Socket Programming (ANSP), will be working on top of all other execution environments in future. Therefore, the ANSP offers a concept that is similar to “write once, run everywhere.” It is an open programming model that active applications can work on all execution environments. It solves the heterogeneity within active networks. This is especially useful when active applications need to access all regions within a heterogeneous network to deploy special service at critical points or to monitor the performance of the entire networks. Instead of introducing a new platform, our approach provides a thin, transparent layer on top of existing environments that can be easily installed for all active applications.Keywords-active networks; application programming interface; active network socket programming;I. I NTRODUCTIONIn 1990, Clark and Tennenhouse [1] proposed a design framework for introducing new network protocols for the Internet. Since the publication of that position paper, active network design framework [2, 3, 10] has slowly taken shape in the late 1990s. The active network paradigm allows program code and data to be delivered simultaneously on the Internet. Moreover, they may get executed and modified on their ways to their destinations. At the moment, there is a global active network backbone, the ABone, for experiments on active networks. Apart from the immaturity of the executing platform, the primary hindrance on the deployment of active networks on the Internet is more on the commercially related issues. For example, a vendor may hesitate to allow network routers to run some unknown programs that may affect their expected routing performance. As a result, alternatives were proposed to allow active network concept to operate on the Internet, such as the application layer active networking (ALAN) project [4] from the European research community. In the ALAN project, there are active server systems located at different places in the networks and active applications are allowed to run in these servers at the application layer. Another potential approach from the network service provider is to offer active network service as the premium service class in the networks. This service class should provide the best Quality of Service (QoS), and allow the access of computing facility in routers. With this approach, the network service providers can create a new source of income.The research in active networks has been progressing steadily. Since active networks introduce programmability on the Internet, appropriate executing platforms for the active applications to execute should be established. These operating platforms are known as execution environments (EEs) and a few of them have been created, e.g., the Active Signaling Protocol (ASP) [12] and the Active Network Transport System (ANTS) [11]. Hence, different active applications can be implemented to test the active networking concept.With these EEs, some experiments have been carried out to examine the active network concept, for example, the mobile networks [5], web proxies [6], and multicast routers [7]. Active networks introduce a lot of program flexibility and extensibility in networks. Several research groups have proposed various designs of execution environments to offer network computation within routers. Their performance and potential benefits to existing infrastructure are being evaluated [8, 9]. Unfortunately, they seldom concern the interoperability problems when the active networks consist of multiple execution environments. For example, there are three EEs in ABone. Active applications written for one particular EE cannot be operated on other platforms. This introduces another problem of resources partitioning for different EEs to operate. Moreover, there are always some critical network applications that need to run under all network routers, such as collecting information and deploying service at critical points to monitor the networks.In this paper, a framework known as Active Network Socket Programming (ANSP) model is proposed to work with all EEs. It offers the following primary objectives.• One single programming interface is introduced for writing active applications.• Since ANSP offers the programming interface, the design of EE can be made independent of the ANSP.This enables a transparency in developing andenhancing future execution environments.• ANSP addresses the interoperability issues among different execution environments.• Through the design of ANSP, the pros and cons of different EEs will be gained. This may help design abetter EE with improved performance in future.The primary objective of the ANSP is to enable all active applications that are written in ANSP can operate in the ABone testbed . While the proposed ANSP framework is essential in unifying the network environments, we believe that the availability of different environments is beneficial in the development of a better execution environment in future. ANSP is not intended to replace all existing environments, but to enable the studies of new network services which are orthogonal to the designs of execution environments. Therefore, ANSP is designed to be a thin and transparent layer on top of all execution environments. Currently, its deployment relies on automatic code loading with the underlying environments. As a result, the deployment of ANSP at a router is optional and does not require any change to the execution environments.II. D ESIGN I SSUES ON ANSPThe ANSP unifies existing programming interfaces among all EEs. Conceptually, the design of ANSP is similar to the middleware design that offers proper translation mechanisms to different EEs. The provisioning of a unified interface is only one part of the whole ANSP platform. There are many other issues that need to be considered. Apart from translating a set of programming interfaces to other executable calls in different EEs, there are other design issues that should be covered, e.g., • a unified thread library handles thread operations regardless of the thread libraries used in the EEs;• a global soft-store allows information sharing among capsules that may execute over different environmentsat a given router;• a unified addressing scheme used across different environments; more importantly, a routing informationexchange mechanism should be designed across EEs toobtain a global view of the unified networks;• a programming model that should be independent to any programming languages in active networks;• and finally, a translation mechanism to hide the heterogeneity of capsule header structures.A. Heterogeneity in programming modelEach execution environment provides various abstractions for its services and resources in the form of program calls. The model consists of a set of well-defined components, each of them has its own programming interfaces. For the abstractions, capsule-based programming model [10] is the most popular design in active networks. It is used in ANTS [11] and ASP [12], and they are being supported in ABone. Although they are developed based on the same capsule model, their respective components and interfaces are different. Therefore, programs written in one EE cannot run in anther EE. The conceptual views of the programming models in ANTS and ASP are shown in Figure 1.There are three distinct components in ANTS: application, capsule, and execution environment. There exist user interfaces for the active applications at only the source and destination routers. Then the users can specify their customized actions to the networks. According to the program function, the applications send one or more capsules to carry out the operations. Both applications and capsules operate on top of an execution environment that exports an interface to its internal programming resources. Capsule executes its program at each router it has visited. When it arrives at its destination, the application at destination may either reply it with another capsule or presents this arrival event to the user. One drawback with ANTS is that it only allows “bootstrap” application.Figure 1. Programming Models in ASP and ANTS.In contrast, ASP does not limit its users to run “bootstrap” applications. Its program interfaces are different from ANTS, but there are also has three components in ASP: application client, environment, and AAContext. The application client can run on active or non-active host. It can start an active application by simply sending a request message to the EE. The client presents information to users and allows its users to trigger actions at a nearby active router. AAContext is the core of the network service and its specification is divided into two parts. One part specifies its actions at its source and destination routers. Its role is similar to that of the application in ANTS, except that it does not provide a direct interface with the user. The other part defines its actions when it runs inside the active networks and it is similar to the functional behaviors of a capsule in ANTS.In order to deal with the heterogeneity of these two models, ANSP needs to introduce a new set of programming interfaces and map its interfaces and execution model to those within the routers’ EEs.B. Unified Thread LibraryEach execution environment must ensure the isolation of instance executions, so they do not affect each other or accessThe authors appreciate the Nortel Institute for Telecommunications (NIT) at the University of Toronto to allow them to access the computing facilitiesothers’ information. There are various ways to enforce the access control. One simple way is to have one virtual machine for one instance of active applications. This relies on the security design in the virtual machines to isolate services. ANTS is one example that is using this method. Nevertheless, the use of multiple virtual machines requires relatively large amount of resources and may be inefficient in some cases. Therefore, certain environments, such as ASP, allow network services to run within a virtual machine but restrict the use of their services to a limited set of libraries in their packages. For instance, ASP provides its thread library to enforce access control. Because of the differences in these types of thread mechanism, ANSP devises a new thread library to allow uniform accesses to different thread mechanisms.C. Soft-StoreSoft-store allows capsule to insert and retrieve information at a router, thus allowing more than one capsules to exchange information within a network. However, problem arises when a network service can execute under different environments within a router. The problem occurs especially when a network service inserts its soft-store information in one environment and retrieves its data at a later time in another environment at the same router. Due to the fact that execution environments are not allowed to exchange information, the network service cannot retrieve its previous data. Therefore, our ANSP framework needs to take into account of this problem and provides soft-store mechanism that allows universal access of its data at each router.D. Global View of a Unified NetworkWhen an active application is written with ANSP, it can execute on different environment seamlessly. The previously smaller and partitioned networks based on different EEs can now be merging into one large active network. It is then necessary to advise the network topology across the networks. However, different execution environments have different addressing schemes and proprietary routing protocols. In order to merge these partitions together, ANSP must provide a new unified addressing scheme. This new scheme should be interpretable by any environments through appropriate translations with the ANSP. Upon defining the new addressing scheme, a new routing protocol should be designed to operate among environments to exchange topology information. This allows each environment in a network to have a complete view of its network topology.E. Language-Independent ModelExecution environment can be programmed in any programming language. One of the most commonly used languages is Java [13] due to its dynamic code loading capability. In fact, both ANTS and ASP are developed in Java. Nevertheless, the active network architecture shown in Figure 2 does not restrict the use of additional environments that are developed in other languages. For instance, the active network daemon, anted, in Abone provides a workspace to execute multiple execution environments within a router. PLAN, for example, is implemented in Ocaml that will be deployable on ABone in future. Although the current active network is designed to deploy multiple environments that can be in any programming languages, there lacks the tool to allow active applications to run seamlessly upon these environments. Hence, one of the issues that ANSP needs to address is to design a programming model that can work with different programming languages. Although our current prototype only considers ANTS and ASP in its design, PLAN will be the next target to address the programming language issue and to improve the design of ANSP.Figure 2. ANSP Framework Model.F. Heterogeneity of Capsule Header StructureThe structures of the capsule headers are different in different EEs. They carries capsule-related information, for example, the capsule types, sources and destinations. This information is important when certain decision needs to be made within its target environment. A unified model should allow its program code to be executed on different environments. However, the capsule header prevents different environments to interpret its information successfully. Therefore, ANSP should carry out appropriate translation to the header information before the target environment receives this capsule.III. ANSP P ROGRAMMING M ODELWe have outlined the design issues encountered with the ANSP. In the following, the design of the programming model in ANSP will be discussed. This proposed framework provides a set of unified programming interfaces that allows active applications to work on all execution environments. The framework is shown in Figure 2. It is composed of two layers integrated within the active network architecture. These two layers can operate independently without the other layer. The upper layer provides a unified programming model to active applications. The lower layer provides appropriate translation procedure to the ANSP applications when it is processed by different environments. This service is necessary because each environment has its own header definition.The ANSP framework provides a set of programming calls which are abstractions of ANSP services and resources. A capsule-based model is used for ANSP, and it is currently extended to map to other capsule-based models used in ANTSand ASP. The mapping possibility to other models remains as our future works. Hence, the mapping technique in ANSP allows any ANSP applications to access the same programming resources in different environments through a single set of interfaces. The mapping has to be done in a consistent and transparent manner. Therefore, the ANSP appears as an execution environment that provides a complete set of functionalities to active applications. While in fact, it is an overlay structure that makes use of the services provided from the underlying environments. In the following, the high-level functional descriptions of the ANSP model are described. Then, the implementations will be discussed. The ANSP programming model is based upon the interactions between four components: application client , application stub , capsule , and active service base.Figure 3. Information Flow with the ANSP.•Application Client : In a typical scenario, an active application requires some means to present information to its users, e.g., the state of the networks. A graphical user interface (GUI) is designed to operate with the application client if the ANSP runs on a non-active host.•Application Stub : When an application starts, it activates the application client to create a new instance of application stub at its near-by active node. There are two responsibilities for the application stub. One of them is to receive users’ instructions from the application client. Another one is to receive incoming capsules from networks and to perform appropriate actions. Typically, there are two types of actions, thatare, to reply or relay in capsules through the networks, or to notify the users regarding the incoming capsule. •Capsule : An active application may contain several capsule types. Each of them carries program code (also referred to as forwarding routine). Since the application defines a protocol to specify the interactions among capsules as well as the application stubs. Every capsule executes its forwarding routine at each router it visits along the path between the source and destination.•Active Service Base : An active service base is designed to export routers’ environments’ services and execute program calls from application stubs and capsules from different EEs. The base is loaded automatically at each router whenever a capsule arrives.The interactions among components within ANSP are shown in Figure 3. The designs of some key components in the ANSP will be discussed in the following subsections. A. Capsule (ANSPCapsule)ANSPXdr decode () ANSPXdr encode () int length ()Boolean execute ()New types of capsule are created by extending the abstract class ANSPCapsule . New extensions are required to define their own forwarding routines as well as their serialization procedures. These methods are indicated below:The execution of a capsule in ANSP is listed below. It is similar to the process in ANTS.1. A capsule is in serial binary representation before it issent to the network. When an active router receives a byte sequence, it invokes decode() to convert the sequence into a capsule. 2. The router invokes the forwarding routine of thecapsule, execute(). 3. When the capsule has finished its job and forwardsitself to its next hop by calling send(), this call implicitly invokes encode() to convert the capsule into a new serial byte representation. length() isused inside the call of encode() to determine the length of the resulting byte sequence. ANSP provides a XDR library called ANSPXdr to ease the jobs of encoding and decoding.B. Active Service Base (ANSPBase)In an active node, the Active Service Base provides a unified interface to export the available resources in EEs for the rest of the ANSP components. The services may include thread management, node query, and soft-store operation, as shown in Table 1.TABLE I. ACTIVE SERVICE BASE FUNCTION CALLSFunction Definition Descriptionboolean send (Capsule, Address) Transmit a capsule towards its destination using the routing table of theunderlying environment.ANSPAddress getLocalHost () Return address of the local host as an ANSPAddress structure. This isuseful when a capsule wants to check its current location.boolean isLocal (ANSPAddress) Return true if its input argument matches the local host’s address andreturn false otherwise.createThread () Create a new thread that is a class ofANSPThreadInterface (discussed later in Section VIA “Unified Thread Abstraction”).putSStore (key, Object) Object getSStore (key) removeSStore (key)The soft-store operations are provided by putSStore(), getSSTore(), and removeSStore(), and they put, retrieve, and remove data respectively. forName (PathName) Supported in ANSP to retrieve a classobject corresponding to the given path name in its argument. This code retrieval may rely on the code loading mechanism in the environment whennecessary.C. Application Client (ANSPClient)boolean start (args[])boolean start (args[],runningEEs) boolean start (args[],startClient)boolean start (args[],startClient, runningEE)Application Client is an interface between users and the nearby active source router. It does the following responsibilities.1. Code registration: It may be necessary to specify thelocation and name of the application code in some execution environments, e.g., ANTS. 2. Application initialization: It includes selecting anexecution environment to execute the application among those are available at the source router. Each active application can create an application client instance by extending the abstract class, ANSPClient . The extension inherits a method, start(), to automatically handle both the registration and initialization processes. All overloaded versions of start() accept a list of arguments, args , that are passed to the application stub during its initialization. An optional argument called runningEEs allows an application client to select a particular set of environment variables, specified by a list of standardized numerical environment ID, the ANEP ID, to perform code registration. If this argument is not specified, the default setting can only include ANTS and ASP. D. Application Stub (ANSPApplication)receive (ANSPCapsule)Application stubs reside at the source and destination routers to initialize the ANSP application after the application clients complete the initialization and registration processes. It is responsible for receiving and serving capsules from the networks as well as actions requested from the clients. A new instance is created by extending the application client abstract class, ANSPApplication . This extension includes the definition of a handling routine called receive(), which is invoked when a stub receives a new capsule.IV. ANSP E XAMPLE : T RACE -R OUTEA testbed has been created to verify the design correctnessof ANSP in heterogeneous environments. There are three types of router setting on this testbed:1. Router that contains ANTS and a ANSP daemonrunning on behalf of ASP; 2. Router that contains ASP and a ANSP daemon thatruns on behalf of ANTS; 3. Router that contains both ASP and ANTS.The prototype is written in Java [11] with a traceroute testing program. The program records the execution environments of all intermediate routers that it has visited between the source and destination. It also measures the RTT between them. Figure 4 shows the GUI from the application client, and it finds three execution environments along the path: ASP, ANTS, and ASP. The execution sequence of the traceroute program is shown in Figure 5.Figure 4. The GUI for the TRACEROUTE Program.The TraceCapsule program code is created byextending the ANSPCapsule abstract class. When execute() starts, it checks the Boolean value of returning to determine if it is returning from the destination. It is set to true if TraceCapsule is traveling back to the source router; otherwise it is false . When traveling towards the destination, TraceCapsule keeps track of the environments and addresses of the routers it has visited in two arrays, path and trace , respectively. When it arrives at a new router, it calls addHop() to append the router address and its environment to these two arrays. When it finally arrives at the destination, it sets returning to false and forwards itself back to the source by calling send().When it returns to source, it invokes deliverToApp() to deliver itself to the application stub that has been running at the source. TraceCapsule carries information in its data field through the networks by executing encode() and decode(), which encapsulates and de-capsulates its data using External Data Representation (XDR) respectively. The syntax of ANSP XDR follows the syntax of XDR library from ANTS. length() in TraceCapsule returns the data length, or it can be calculated by using the primitive types in the XDRlibrary.Figure 5. Flow of the TRACEROUTE Capsules.V. C ONCLUSIONSIn this paper, we present a new unified layered architecture for active networks. The new model is known as Active Network Socket Programming (ANSP). It allows each active application to be written once and run on multiple environments in active networks. Our experiments successfully verify the design of ANSP architecture, and it has been successfully deployed to work harmoniously with ANTS and ASP without making any changes to their architectures. In fact, the unified programming interface layer is light-weighted and can be dynamically deployable upon request.R EFERENCES[1] D.D. Clark, D.L. Tennenhouse, “Architectural Considerations for a NewGeneration of Protocols,” in Proc. ACM Sigcomm’90, pp.200-208, 1990. [2] D. Tennenhouse, J. M. Smith, W. D. Sicoskie, D. J. Wetherall, and G. J.Minden, “A survey of active network research,” IEEE Communications Magazine , pp. 80-86, Jan 1997.[3] D. Wetherall, U. Legedza, and J. Guttag, “Introducing new internetservices: Why and how,” IEEE Network Magazine, July/August 1998. [4] M. Fry, A. Ghosh, “Application Layer Active Networking,” in ComputerNetworks , Vol.31, No.7, pp.655-667, 1999.[5] K. W. Chin, “An Investigation into The Application of Active Networksto Mobile Computing Environments”, Curtin University of Technology, March 2000.[6] S. Bhattacharjee, K. L. Calvert, and E. W. Zegura, “Self OrganizingWide-Area Network Caches”, Proc. IEEE INFOCOM ’98, San Francisco, CA, 29 March-2 April 1998.[7] L. H. Leman, S. J. Garland, and D. L. Tennenhouse, “Active ReliableMulticast”, Proc. IEEE INFOCOM ’98, San Francisco, CA, 29 March-2 April 1998.[8] D. Descasper, G. Parulkar, B. Plattner, “A Scalable, High PerformanceActive Network Node”, In IEEE Network, January/February 1999.[9] E. L. Nygren, S. J. Garland, and M. F. Kaashoek, “PAN: a high-performance active network node supporting multiple mobile code system”, In the Proceedings of the 2nd IEEE Conference on Open Architectures and Network Programming (OpenArch ’99), March 1999. [10] D. L. Tennenhouse, and D. J. Wetherall. “Towards an Active NetworkArchitecture”, In Proceeding of Multimedia Computing and Networking , January 1996.[11] D. J. Wetherall, J. V. Guttag, D. L. Tennenhouse, “ANTS: A toolkit forBuilding and Dynamically Deploying Network Protocols”, Open Architectures and Network Programming, 1998 IEEE , 1998 , Page(s): 117 –129.[12] B. Braden, A. Cerpa, T. Faber, B. Lindell, G. Phillips, and J. Kann.“Introduction to the ASP Execution Environment”: /active-signal/ARP/index.html .[13] “The java language: A white paper,” Tech. Rep., Sun Microsystems,1998.。
毕业论文-外文资料翻译[管理资料]
![毕业论文-外文资料翻译[管理资料]](https://img.taocdn.com/s3/m/b6d118d2192e45361166f5e2.png)
附件1:外文资料翻译译文数据库简介1.数据库管理系统(DBMS)。
众所周知,数据库是逻辑上相关的数据元的集合。
这些数据元可以按不同的结构组织起来,以满足单位和个人的多种处理和检索的需要。
数据库本身不是什么新鲜事——早期的数据库记录在石头上或写在名册上,以及写入索引卡中。
而现在,数据库普遍记录再可磁化的介质上,并且需要用计算机程序来执行必需的存储和检索操作。
在后文中你将看到除了简单的以外,所有数据库中都有复杂的数据关系及其连接。
处理与创建、访问以及维护数据库记录有关的复杂任务的系统软件包叫做数据库管理系统(DBMS)。
DBMS软件包中的程序在数据库极其用户间建立了接口(这些用户可以是应用程序员、管理员以及其他需要信息和各种操作系统的人员)。
DBMS可组织、处理和显示从数据库中选择的数据元。
该功能使决策者可以搜索、试探和查询数据库的内容,从而对在正式报告中没有的、不再出现的且无计划的问题作出回答。
这些问题最初可能是模糊的并且是定义不清的,但是人们可以浏览数据库直到获得问题的答案。
也就是说DBMS将“管理”存储的数据项,并从公共数据库中汇集所需的数据项以回答那些非程序员的询问。
在面向文件的系统中,需要特定信息的用户可以将他们的要求传送给程序员。
该程序员在时间允许时,将编写一个或多个程序以提取数据和准备信息。
但是,使用DBMS可为用户提供一种更快的、用户可以选择的通信方式。
顺序的、直接的以及其它的文件处理方式常用于单个文件中数据的组织和构造,而DBMS能够访问和检索非关键记录字段的数据,即DBMS能够将几个大文件中逻辑相关的数据组织并连接在一起。
逻辑结构。
确定这些逻辑关系是数据管理者的任务,由数据定义语言完成。
DBMS 在存储、访问和检索操作过程中可选用以下逻辑结构技术:(1)表结构。
在该逻辑方式中,记录通过指针链接在一起。
指针是记录中的一个数据项,它指出另一个逻辑相关的记录的存储位置,例如,顾客主文件的记录将包含每个顾客的姓名和地址,而且该文件中的每个记录都由一个帐号标识。
毕业论文外文翻译两篇

毕业论文外文翻译两篇篇一:毕业论文外文翻译外文资料翻译译文:概述是一个统一的Web开发模型,它包括您使用尽可能少的代码生成企业级Web应用程序所必需的各种服务。
作为.NETFramework的一部分提供。
当您编写应用程序的代码时,可以访问.NETFramework中的类。
您可以使用与公共语言运行库(CLR)兼容的任何语言来编写应用程序的代码,这些语言包括MicrosoftVisualBasic、C#、和J#。
使用这些语言,可以开发利用公共语言运行库、类型安全、继承等方面的优点的应用程序。
包括:∙页和控件框架∙编译器∙安全基础结构∙状态管理功能∙应用程序配置∙运行状况监视和性能功能∙调试支持∙XMLWebservices框架∙可扩展的宿主环境和应用程序生命周期管理∙可扩展的设计器环境页和控件框架是一种编程框架,它在Web服务器上运行,可以动态地生成和呈现网页。
可以从任何浏览器或客户端设备请求网页,会向请求浏览器呈现标记(例如HTML)。
通常,您可以对多个浏览器使用相同的页,因为会为发出请求的浏览器呈现适当的标记。
但是,您可以针对诸如MicrosoftInternetExplorer6的特定浏览器设计网页,并利用该浏览器的功能。
支持基于Web的设备(如移动电话、手持型计算机和个人数字助理(PDA))的移动控件。
网页是完全面向对象的。
在网页中,可以使用属性、方法和事件来处理HTML元素。
页框架为响应在服务器上运行的代码中的客户端事件提供统一的模型,从而使您不必考虑基于Web的应用程序中固有的客户端和服务器隔离的实现细节。
该框架还会在页处理生命周期中自动维护页及该页上控件的状态。
使用页和控件框架还可以将常用的UI功能封装成易于使用且可重用的控件。
控件只需编写一次,即可用于许多页并集成到网页中。
这些控件在呈现期间放入网页中。
页和控件框架还提供各种功能,以便可以通过主题和外观来控制网站的整体外观和感觉。
可以先定义主题和外观,然后在页面级或控件级应用这些主题和外观。
毕业设计外文资料翻译解析

理工学院毕业设计外文资料翻译专业:通信工程姓名:张聪学号: 13L0751243外文出处: Organic Electronics(用外文写)2017年3月4日附件: 1.外文资料翻译译文;2.外文原文。
有效激发复合体有机发光二极管与双极型受体1.介绍因为他们发现,如何有效地利用产生电三线态激子辐射衰变总是在研究领域最具挑战性的问题之一有机发光二极管(OLED)。
根据选择的规则推导出量子自旋统计,在有机半导体设备,只有1/4 产生电激子的分数的单重态可以利用辐射衰变,而其他3/4的三重态激子是浪费的无辐射衰变由于量子自旋禁止原则。
这个结果在理论上最大辐射激子比(gr)25%的常规荧光发射。
整合的策略有机金属荧光粉的发射器打破了自旋禁止原则的广泛证明理论单位gr由于自旋轨道耦合效应引起的重金属原子。
然而,稀有金属的高成本在有机金属化合物仍是商业的一大障碍与有机金属发射器OLED的应用。
连续的研究工作一直致力于发展不含金属的廉价有机发射器使用单线态的能力和三线态激子辐射衰变。
最近,关注一直在支付上变频机制通过三重态-三联体毁灭(TTA)或反向系统热激活穿越(RISC)方法来获得这个目标。
考虑到所有的电可以产生生成的三线态激子单重态,100%的理论最大gr是可能的OLED的包括热激活延迟荧光(TADF)发射器通过RISC过程,理论上最大gr的OLED包含TTA发射器是有限的为62.5%(25% + 75% / 2)。
这表明TADF化合物大大有有前途的潜在开发高效的OLED。
事实上,TADF 排放迅速发达,各种高效RGB和白色组成的OLED TADF gr发射器远高于25%的报告。
TADF过程,能量差之间单线态激发态(S1)和最低三重激发态(T1)排放应该最小化等于或小于热能在室温下(25兆电子伏),一旦三联体激子在TADF分子产生电场,他们可以很容易地产生辐射S1状态协助环境热能。
一个单位的内部量子效率的有机组成TADF 发射器是如此理论上可行。
ASP外文翻译+原文

ASP Banner Ad SystemTo the Reader from Joe: This is a user-submitted tutorial by the author above. I have read the tutorial and set the format to fit HTML Goodies, but for the most part have not changed the language. I chose this tutorial because many readers have been asking for more ASP tutorials. This is a great one.Sorry I cannot show you the event here. The HTML Goodies servers do not offer ASP. I will tell you though that if you run IE5.0 or better, open the contents of the zip file into a directory and it runs just fine.If you haven't already, you may want to read my introductory ASP tutorial before this one. If not, then enjoy.There may be a point in your web design career, where your site becomes real popular. That is when companies become interested in advertising on your site. A Banner Ad system can be built to control all those advertisements that you are so willing to display, for a price. Active Server Pages makes it very easy to create a banner ad system. So easy, that the Microsoft ASP developers created an "AdRotator" component for the occasion. Before you begin reading this article, make sure you download the support material below.The files included aread.txtbanner.asp3 banner imagesclicks.aspexample.aspredirect.aspad.txtIn order for the AdRotator component to work, you must configure a text file. This text file contains all the banner ad properties. However, The text file must follow a certain format. The first four lines are as follows:REDIRECT redirect.aspWIDTH 400HEIGHT 50*REDIRECTWhen a banner is clicked, the "AdRotator" component goes to a preliminary page. This page is called a redirect page. The redirect page handles any extra programming events before directing a user to the banners destination. In this example banner system, I called the preliminary file "redirect.asp".WIDTHThis sets the width of the banner ad image. The value must be in pixels.HEIGHTThis sets the height of the banner ad image. The value must be in pixels.*The asterisk tells the "AdRotator" component that it is about to acquire banner ad information. The asterisk is required.Once you define the general properties above the asterisk, then comes the list of banners to display. In the ad.txt file, there are three banners defined below the asterisk.banner1.jpg20banner2.jpg30banner3.jpg30Each banner requires four lines of properties, which follow the format below:Image filenameWeb AddressDescriptionBanner WeightImage FileThe image filename can be a fully qualified web address or relative name that points to the image. If the image is in a different folder, then you also include the folder name as well.(/banner1.jpg, banner1.jpg, or foldername/banner.jpg)>Web AddressThe web address can be a page on your site or a fully qualified web address that leads to another site.DescriptionThe description will be displayed as a tool tip. When you rest your mouse over the banner, the description pops up.Banner WeightThe banner weight determines how much a banner is displayed. The "AdRotator" component adds all of the banner weights and determines theprobability or percent chance of a particular banner being displayed. A banner with a higher weight has better a better probability.NOTE: You can disable a banners property by substituting with a dash. banner3.jpg-30The example entry above would create a banner ad that does not have a web address.Banner.aspThis file uses the "AdRotator" component and analyzes the contents of the ad.txt file. Below is the code.sub banner(strTarget)dim bannerad, htmlset bannerad = server.CreateObject("MSWC.adrotator")bannerad.TargetFrame = strTargethtml = bannerad.GetAdvertisement("ad.txt")Response.Write htmlend subThe first thing to note is that the ASP was written with VBScript. The second thing to note is that the code is written inside a sub procedure called banner(strTarget).For those of you who do not know, a sub procedure allows you to group together a bunch of code that can be reused over and over. Like a function, it takes an argument, such as a word or variable. In the code above the argument is strTarget.Unlike a function, a sub-procedure does not return any values, it just executes the code inside line by line.Inside the sub I declare two variables...dim bannerad, htmlNext I store the "AdRotator" component inside the "bannerad" variable. When storing a component inside a variable you use the set keyword. Since we are programming server-side with ASP, we use server.CreateObject to summon the component. "MSWC.adrotator" is the component key or name value.set bannerad = server.CreateObject("MSWC.adrotator")Next I use a property of the "AdRotator" called "TargetFrame". This property is equivalent to:html = bannerad.GetAdvertisement("ad.txt")Finally, I want to print the contents of the "html" variable. This prints the code that displays the banner images.Response.Write htmlRedirect.aspThis is the file that is processed before someone is redirected to the banners web address. Inside this file, we can capture information like how many times a particular banner is clicked and so on. To start things off, I defined a variable called "strUrl".Dim strUrlNext I store a querystring value inside this new variable.strUrl = Request.Querystring("url")A querystring is nothing more than a bunch of name/value pairs attached to a web address. When a user clicks on a banner, the "AdRotator" component attaches a querystring to the redirect file. So if we were to click banner1.jpg, defined in ad.txt, we would end up with a redirect web address that looks like so.Redirect.asp?url=&image=banner1.jpgIn essence assigning "Request.Querystring("url") to "strUrl", is the same as assigning to it.Finally, I check to see which banner was clicked. I accomplish this with the VBSCript inStr( ) function.if instr(strUrl, "htmlgoodies") thenApplication.Lockapplication("htmlgoodies") = application("htmlgoodies") + 1Application.UnLockResponse.ClearResponse.Redirect strUrlend ifThe inStr( ) function returns the number position of a sub-word (sub-string) within another word (string). The format is as followsInStr(main word, sub-word)If the sub-word exist within the main word, then the function will equal a number greater-than zero or true. If the sub-word does not exist, then the function will equal zero or false. In the example above, I check to see if "htmlgoodies" exist within . Since the answer is true, then the code inside the if... then... statement will execute.Inside the if... then... I use an application variable. An application variable is native to ASP. Application variables store information as long as a web application exist, a web application ceases to exist when say someone shuts off the web hosting server. The beauty of an application variable is that you can define it on one web page and use it in other web pages within your web application. The downfall is that the users computer must have cookies enabled.Anyways, the code adds one to the application variable, every time a banner is clicked. After one is added, the code redirects to the banners web page. So if banner1 was clicked then you shall be redirected to "".Response.Redirect strUrlExample.aspThis is an example page that uses the banner ad system. When you refresh the page, you should most likely see a different banner. Whenever you want to insert the banner ad on a page, you can use the SSI directive below...<!-- #include file="banner.asp" -->Once you include the file above, then you can call the sub-procedure inside the banner.asp file like so...Call banner("_blank")Notice that I supply one of the values for the "TargetFrame" as an argument. So if the banner is clicked, then the web page should open up in a separate browser window.Clicks.aspThis is a very simple page that displays the number of clicks per banner ad. To display the number of times a banner was clicked, you just print the contents of the application variables that were created inside "redirect.asp". Pretty nifty. <% =application("htmlgoodies") %>ASP横幅广告系统乔给读者的话:这是一个由用户提交上述笔者的教程。
毕业设计(论文)外文资料翻译

南京理工大学紫金学院毕业设计(论文)外文资料翻译系:机械工程系专业:机械工程及自动化姓名:徐华俊学号:100104348外文出处:WASTE FOOD DISPOSAL SYSTEM(3)(用外文写)附件:1.外文资料翻译译文;2.外文原文。
指导教师评语:该生翻译了一篇有关《废弃食物处理系统》的论文,论文内容跟课题的研究领域相关,在将来的课题设计中可以借鉴。
译文语句基本通顺,专业术语正确,标点符号运用无误。
说明该生具备一定的英语水平和翻译能力。
但文中仍有部分语句组织得不够完善,可以进一步修改。
签名:年月日注:请将该封面与附件装订成册。
附件1:外文资料翻译译文垃圾食物处理系统(3)打开功率继电器32的驱动,关闭与其相连的常闭开关118,从而消除了在此之前被施加到定时器单元40的控制终端146的触发信号,并且需要注意的是,功率继电器30的电源开关108供应了一个类似的功能,如本文所述的,启动系统10每天第一次激活功率继电器30的时候,这个功能中断了定时器单元40的控制终端146,即先前追踪的触发信号电路,如本文所述。
进一步,在与功率继电器32相连的开关被关闭的时候,它的驱动被触发的结果是非常明显的,断开常开继电器开关119,为高流量水阀22的电磁阀80建立了一个到地面的备用路径,也就是可以追踪到电源线200;通过导线202;电磁阀80;导线204;导线416和现在被断开的功率继电器32的闭合开关119到地面,如此一来就能明显并且很方便的注意到,与功率继电器30相连的开关109执行同样的功能,通过一个完全可追踪的功率继电器30,而不是功率继电器32,使功率继电器30处于启动状态,所以在任何时期,控制单元12的电动机46可在任意一个方向操作(这取决于功率继电器30或功率继电器32处于激活状态),电磁阀80也将保持通电,来保持高流量水阀22在该段时期内处于闭合状态,这样的话,水流将会在需要大幅率的时候流通,通过管道76和78流到控制单元12,这个控制单元12的机构52正积极粉碎积累废料,并且已经积累或正在采用,接着顺着水流冲到下水道或者通过类似单元12的出口58.你将会很方便的观察到电磁阀74保持通电,并且在控制单元12积极运作期间,低流量水阀20也保持闭合,并且应当在任何特定安装情况下,把阀22的流通能力考虑在内。
毕业设计外文资料翻译ASPNET

毕业设计外文资料翻译题目技术学院XXXXXXXXXXXX专业XXXXX班级XXXX学生XX学号XXXXXXXXX指导教师XXX二〇一三年三月十日Advanced AJAX Server Controls ,2009, 177(5): 97-102.TechniqueAdam Calderon Joel Rumerman1. Building Pagesand the .NET Frameworkis part of Microsoft's overall .NET framework, which contains a vast set of programming classes designed to satisfy any conceivable programming need. In the following two sections, you learn how fits within the .NET framework, and you learn about the languages you can use in your pages.The .NET Framework Class LibraryImagine that you are Microsoft. Imagine that you have to support multiple programming languages—such as Visual Basic, JScript, and C++. A great deal of the functionality of these programming languages overlaps. For example, for each language, you would have to include methods for accessing the file system, working with databases, and manipulating strings.Furthermore, these languages contain similar programming constructs. Every language, for example, can represent loops and conditionals. Even though the syntax of a conditional written in Visual Basic differs from the syntax of a conditional written in C++, the programming function is the same.Finally, most programming languages have similar variable data types. In most languages, you have some means of representing strings and integers, for example. The maximum and minimum size of an integer might depend on the language, but the basic data type is the same.Maintaining all this functionality for multiple languages requires a lot of work. Why keep reinventing the wheel? Wouldn't it be easier to create all this functionality once and use it for every language?The .NET Framework Class Library does exactly that. It consists of a vast set of classes designed to satisfy any conceivable programming need. For example, the .NET framework contains classes for handling database access, working with the file system, manipulating text, and generating graphics. In addition, it contains more specialized classes for performing tasks such as working with regular expressions and handling network protocols.The .NET framework, furthermore, contains classes that represent all the basic variable data types such as strings, integers, bytes, characters, and arrays.Most importantly, for purposes of this book, the .NET Framework Class Library contains classes for building pages. You need to understand, however, that you can access any of the .NET framework classes when you are building your pages.Understanding NamespacesAs you might guess, the .NET framework is huge. It contains thousands of classes (over 3,400). Fortunately, the classes are not simply jumbled together. The classes of the .NET framework are organized into a hierarchy of namespaces.ASP Classic NoteIn previous versions of Active Server Pages, you had access to only five standard classes (the Response, Request, Session, Application, and Server objects). , in contrast, provides you with access to over 3,400 classes!A namespace is a logical grouping of classes. For example, all the classes that relate to working with the file system are gathered together into the namespace.The namespaces are organized into a hierarchy (a logical tree). At the root of the tree is the System namespace. This namespace contains all the classes for the base data types, such as strings and arrays. It also contains classes for working with random numbers and dates and times.You can uniquely identify any class in the .NET framework by using the full namespace of the class. For example, to uniquely refer to the class that represents a file system file (the File class), you would use the following:refers to the namespace, and File refers to the particular class.NOTEYou can view all the namespaces of the standard classes in the .NET Framework Class Library by viewing the Reference Documentation for the .NET Framework.Standard NamespacesThe classes contained in a select number of namespaces are available in your pages by default. (You must explicitly import other namespaces.) These default namespaces contain classes that you use most often in your applications:System— Contains all the base data types and other useful classes such as those related to generating random numbers and working with dates and times.— Contains classes for working with standard collection types such as hash tables, and array lists.— Contains classes that represent specialized collections such as linked lists and string collections.— Contains classes for working with configuration files files).— Contains classes for encoding, decoding, and manipulating the contents of strings.— Contains classes for performing regular expression match and replace operations.— Contains the basic classes for working with the World Wide Web, including classes for representing browser requests and server responses.— Contains classes used for caching the content of pages and classes for performing custom caching operations.— Contains classes for implementing authentication and authorization such as Forms and Passport authentication.— Contains classes for implementing session state.— Contains the basic classes used in building the user interface of pages.— Contains the classes for the HTML controls.— Contains the classes for the Web controls..NET Framework-Compatible LanguagesFor purposes of this book, you will write the application logic for your pages using Visual Basic as your programming language. It is the default language for pages. Although you stick to Visual Basic in this book, you also need to understand that you can create pages by using any language that supports the .NET Common Language Runtime. Out of the box, this includes C#, , and the Managed Extensions to C++.NOTEThe CD included with this book contains C# versions of all the code samples.Dozens of other languages created by companies other than Microsoft have been developed to work with the .NET framework. Some examples of these other languages include Python, SmallTalk, Eiffel, and COBOL. This means that you could, if you really wanted to, write pages using COBOL.Regardless of the language that you use to develop your pages, you need to understand that pages are compiled before they are executed. This means that pages can execute very quickly.The first time you request an page, the page is compiled into a .NET class, and the resulting class file is saved beneath a special directory on your server named Temporary Files. For each and every page, a corresponding class file appears in the Temporary Files directory. Whenever you request the same page in the future, the corresponding class file is executed.When an page is compiled, it is not compiled directly into machine code. Instead, it is compiled into an intermediate-level language called Microsoft Intermediate Language (MSIL). All .NET-compatible languages are compiled into this intermediate language.An page isn't compiled into native machine code until it is actually requested by a browser. At that point, the class file contained in the Temporary Files directory is compiled with the .NET framework Just in Time (JIT) compiler and executed.The magical aspect of this whole process is that it happens automatically in the background. All you have to do is create a text file with the source code for your page, and the .NET framework handles all the hard work of converting it into compiled code for you.ASP CLASSIC NOTEWhat about VBScript? Before , VBScript was the most popular language for developing Active Server Pages.does not support VBScript, and this is good news. Visual Basic is a superset of VBScript, which means that Visual Basic has all the functionality of VBScript and more. So, you have a richer set of functions and statements with Visual Basic.Furthermore, unlike VBScript, Visual Basic is a compiled language. This means that if you use Visual Basic to rewrite the same code that you wrote with VBScript, you can get better performance.If you have worked only with VBScript and not Visual Basic in the past, don't worry. Since VBScript is so closely related to Visual Basic, you'll find it easy to make the transition between the two languages.NOTEMicrosoft includes an interesting tool named the IL Disassembler (ILDASM) withthe .NET framework. You can use this tool to view the disassembled code for any of the classes in the Temporary Files directory. It lists all the methods and properties of the class and enables you to view the intermediate-level code.This tool also works with all the controls discussed in this chapter. For example, you can use the IL Disassembler to view the intermediate-level code for the TextBox control (located in a file named Controlscontrols provide the dynamic and interactive portions of the user interface for your Web application. The controls render the content that the users of your Web site actually see and interact with. For example, you can use controls to create HTML form elements, interactive calendars, and rotating banner advertisements.controls coexist peacefully with HTML content. Typically, you create the static areas of your Web pages with normal HTML content and create the dynamic or interactive portions with controls.The best way to understand how controls work in an HTML page is to look at a simple Web Forms Page.Adding Application Logic to an PageThe second building block of an page is the application logic, which is the actual programming code in the page. You add application logic to a page to handle both control and page events.If a user clicks a Button control within an HTML form, for example, the Button control raises an event (the Click event). Typically, you want to add code to the page that does something in response to this event. For example, when someone clicks the Button control, you might want to save the form data to a file or database.Controls are not the only things that can raise events. An page itself raises several events every time it is requested. For example, whenever you request a page, the page's Load event is triggered. You can add application logic to the page that executes whenever the Load event occurs.2. Building Forms with Web Server ControlsBuilding Smart FormsYou use several of the basic Web controls to represent standard HTML form elements such as radio buttons, text boxes, and list boxes. You can use these controls in your pages to create the user interface for your Web application. The following sections provide detailed overviews and programming samples for each of these Web controls.Controlling Page NavigationIn the following sections, you learn how to control how a user moves from one page to another. First, you learn how to submit an HTML form to another page and retrieve form information. Next, you learn how to use the Redirect() method to automatically transfer a user to a new page. Finally, you learn how to link pages together with the HyperLink control.Applying Formatting to ControlsIn the following sections, you learn how to make more attractive Web forms. First, you look at an overview of the formatting properties common to all Web controls; they are the formatting properties of the base control class. Next, you learn how to apply Cascading Style Sheet styles and classes to Web controls.3. Performing Form Validation with Validation ControlsUsing Client-side ValidationTraditionally, Web developers have faced a tough choice when adding form validation logic to their pages. You can add form validation routines to your server-side code, or you can add the validation routines to your client-side code.The advantage of writing validation logic in client-side code is that you can provide instant feedback to your users. For example, if a user neglects to enter a value in a required form field, you can instantly display an error message without requiring a roundtrip back to the server.People really like client-side validation. It looks great and creates a better overall user experience. The problem, however, is that it does not work with all browsers. Not all browsers support JavaScript, and different versions of browsers support different versions of JavaScript, so client-side validation is never guaranteed to work.For this reason, in the past, many developers decided to add all their form validation logic exclusively to server-side code. Because server-side code functions correctly with any browser, this course of action was safer.Fortunately, the Validation controls discussed in this chapter do not force you to make this difficult choice. The Validation controls automatically generate both client-side and server-side code. If a browser is capable of supporting JavaScript, client-side validation scripts are automatically sent to the browser. If a browser is incapable of supporting JavaScript, the validation routines are automatically implemented in server-side code.You should be warned, however, that client-side validation works only with Microsoft Internet Explorer version and higher. In particular, the client-side scripts discussed in this chapter do not work with any version of Netscape Navigator.Requiring Fields: The RequiredFieldValidator ControlYou use RequiredFieldValidator in a Web form to check whether a control has a value. Typically, you use this control with a TextBox control. However, nothing is wrong with using RequiredFieldValidator with other input controls such as RadioButtonList.Validating Expressions: The RegularExpressionValidator ControlYou can use RegularExpressionValidator to match the value entered into a form field to a regular expression. You can use this control to check whether a user has entered, for example, a valid e-mail address, telephone number, or username or password. Samples of how to use a regular expression to perform all these validation tasks are provided in the following sections.Comparing Values: The CompareValidator ControlThe CompareValidator control performs comparisons between the data entered into a form field and another value. The other value can be a fixed value, such as a particular number, or a value entered into another control.Summarizing Errors: The ValidationSummary ControlImagine that you have a form with 50 form fields. If you use only the Validation controls discussed in the previous sections of this chapter to display errors, seeing an error message on the page might be difficult. For example, you might have to scroll down to the 48th form field to find the error message.Fortunately, Microsoft includes a ValidationSummary control with the Validation controls. You can use this control to summarize all the errors at the top of a page, or wherever else you want.4. Advanced Control ProgrammingWorking with View StateBy default, almost all controls retain the values of their properties between form posts. For example, if you assign text to a Label control and submit the form, when the page is rendered again, the contents of the Label control are preserved.The magic of view state is that it does not depend on any special server or browser properties. In particular, it does not depend on cookies, session variables, or application variables. View state is implemented with a hidden form field called VIEWSTATE that is automatically created in every Web Forms Page.When used wisely, view state can have a dramatic and positive effect on the performance of your Web site. For example, if you display database data in a control that has view state enabled, you do not have to return to the database each time the page is posted back to the server. You can automatically preserve the data within the page's view state between form posts.Displaying and Hiding ContentImagine that you are creating a form with an optional section. For example, imagine that you are creating an online tax form, and you want to display or hide a section that contains questions that apply only to married tax filers.Or, imagine that you want to add an additional help button to the tax form. You might want to hide or display detailed instructions for completing form questions depending on a user's preferences.Finally, imagine that you want to break the tax form into multiple pages so that a person views only one part of the tax form at a time.In the following sections, you learn about the properties that you can use to hide and display controls in a form. You learn how to use the Visible and Enabled properties with individual controls and groups of controls to hide and display page content.Using the Visible and Enabled PropertiesEvery control, including both HTML and Web controls, has a Visible property that determines whether the control is rendered. When a control's Visible property has the value False, the control is not displayed on the page; the control is not processed for eitherpre-rendering or rendering.Web controls (but not every HTML control) have an additional property named Enabled. When Enabled has the value False and you are using Internet Explorer version or higher, the control appears ghosted and no longer functions. When used with other browsers, such as Netscape Navigator, the control might not appear ghosted, but it does not function.Disabling View StateIn certain circumstances, you might want to disable view state for an individual control or for an page as a whole. For example, you might have a control that contains a lot of data (imagine a RadioButtonList control with 1,000 options). You might not want to load the data into the hidden __VIEWSTATE form field if you are worried that the form data would significantly slow down the rendering of the page.Using Rich ControlsIn the following sections, you learn how to use three of the more feature-rich controls in the framework. You learn how to use the Calendar control to display interactive calendars, the AdRotator control to display rotating banner advertisements, and the HTMLInputFile control to accept file uploads.5 ConclusionThe advantages of using Struts to realize the website construction: It adopts JSPmarked mechanism to get the reusing codes and abstract codes. This method contributed to improve the reusability and flexibility of codes. When the technology space or the problem space varied, users have much more chances to reuse codes. Using open sou rce, everybody in the user’s room could check up codes. Struts make the designers and developers pay their attention to their own favorite aspects. Adopting separately control ideology to manage the problem space. The websites based on this pattern had perfectly robustness. The layer structures were clear. As to huge scale of system, Struts conducted to manage complicated system. The disadvantages of using Struts to realize the website construction: The applicable scope of Struts is limited. Struts are MVC solution based on web. So it must be achieved by HTML, JSP document and Servlet and use J2EE application program to support Struts. Struts need to support and Servlet standard Servlet container. Of course, isolating the problem scope, but strengthening the complicacy, so one must accept some training before they adopt Struts development.References1. Selfa, ., Carrillo, M., Del Rocío Boone, M.: A database and web application based onMVC architecture. In: International Conference on Electronics, Communications and Computers, pp. 48–49 (2006)2. Lin, ., Hu, .: Design and implementation of the internet service platform forrural house building technique criteria and management based on .NET MVC. Applied Mechanics and Materials, 1727–1731 (2011)3. Wang, ., Xi, M., Li, .: A network-friendly architecture for Multi-view VideoCoding (MVC). Advanced Materials Research, 678–681 (2010)4. Li, ., Ma, ., Feng, G., Ma, .: Research on Web Application of StrutsFramework Based on MVC Pattern. In: Shen, ., Li, J., Li, M., Ni, J., Wang, W. (eds.) APWeb Workshops 2006. LNCS, vol. 3842, pp. 1029–1032. Springer, Heidelberg (2006)Advanced AJAX Server Controls ,2009,177(5):97-102技术Adam Calderon Joel Rumerman摘要:页面的构建,验证和编程。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
网络课堂:一个大型互动远程教学平台林,SW1,程,K L2,王,R3,周,H4和H5陈,S1cs_lswaa@t.hk2cs_cklaa@t.hk3cs_wrx@t.hk4cs_zhxaa@t.hk5gchan@t.hk香港科技大学计算机科学系摘要:传统上,为了与教员进行更好的交流互动,讲座一般在学生所处的教室进行。
这种模式对于有些学生并不是很方便和划算,例如对于那些正在工作的、行动不便的、生活在偏远地区的,或者类似在SARS期间被社会隔离的人来说。
伴随着宽带互联网连接和无线媒体(Wi-fi 和 3G)的普遍渗透,我们开发了一个平台,让讲座可以通过互联网以交互方式进行。
该项目被称为“网络课堂”,提供了一种类似于现今的传统教室,但学生们分布在互联网的教学体验。
学生可以在任何时间任何地点使用他们的 PC 或便携式计算机通过互联网和无线媒体向他们的导师提问题。
视频、音频、以及白板也流向实时的用户终端。
利用现有现成的计算产品和最先进的网络技术,该系统可扩展到数百名学生。
它具有成本效益,能够有效地突破地域限制让学生来听取讲座。
使用该系统的学生传来的最初反馈是积极和鼓舞人心的。
关键词:远距离学习,网络课堂,互动、教育、分布式系统、多媒体应用和通信网引言随着计算设备和计算机使用的巨大增长,人与人之间的地理距离已显著减少。
简单举几个目前正在使用的互联网软件的例子:网络会议,网络电话,ICQ 聊天等等。
利用这些,人们可以在世界的各个角落,与他人进行比以往任何时候都更经济、更有效地沟通。
近来,香港政府一直在努力推行“终身学习”的理念。
然而,在香港的工作时间和生活节奏,让人们几乎不可能在一个固定的时间,固定的地点进行学习。
在香港科技大学计算机科学系,我们已经开发了一个名为“网络课堂"的交互式远程学习平台。
该项目旨在为广大学生提供现场讲座。
它允许学生在任何时间任何地点通过任何一台计算机来参加课程。
我们在下图展示所开发的系统。
它由学生的分布组成网络。
教授可以通过互联网提供他/她的讲座录音和课件,也可以通过轮询与学生进行交流。
该平台有以下几个独特的功能和技术项目:网络模块:我们设计并实现了一个传输机制,以便容纳成千上万没有强大的服务器的学生和客户的需要。
我们的网络协议在最近召开的重大会议和研讨会上得以展示,并引起了广泛的关注。
2、音频模块:在该模块中音频能够被很好地传递给学生。
在传递过程中,我们使用了一个高度压缩的音频,并不会占用大量的网络带宽,使用的编码标准称为G.723。
3、视频模块:我们已经实现了最新的H.264视频压缩编码技术。
它在保证了视频的高质量的同时,对于网络和系统资源的使用显著减少了,也因此,这个软件的带宽的要求大大降低。
4、网络接口:这一部分的重点是支持一个网络接口。
有了这项功能,学生就可以在任何能找到一台计算机上网的地方学习。
为了进一步提高用户友好性,网络课堂项目还提供安装文件。
根据指导进行简单的鼠标点击使安装更方便。
完全无需编译或链接,而这在去年的项目里是必要的。
下面,我们来详细解释一下模块。
1、网络模块由于网络课堂属于实时应用,并且听课人的数量通常都是很大的,因此稳定的和可扩展的网络层显得极为重要。
网络的主要功能是将演讲材料,即,视频和音频,分发给所有参加讲座的学生。
这项技术被称为多播。
传统上,多播有两种方式:应用层组播(ALM)和IP组播。
应用层组播,组播是沿节点/用户逻辑树序列的单播来做的。
它是用来解决IP组播的适应性问题。
由于数据向一组ALM主机的传输是通过如TCP和UDP之类的单播协议来完成的,它支持互联网上的任何路由器。
然而,所有的数据传输是通过单播,冗余传输,从而导致带宽利用效率低下,这将成为层组播使用的主要问题。
相比之下,利用IP组播技术,数据只需发送一次,同一组内的每个主机都能收到它。
与多播通信相比,IP组播能够更有效的消除冗余传输,节省带宽。
在ALM技术和IP 组播技术的基础上,我们设计并实现了一个新的架构,将其命名为“岛组播(IM)”。
岛组播,即课堂上教师与学生,分成几个较小的多播能力的地区(或者“岛”)。
当所有这些层组播(ALM)协议在同一个岛上,就使用IP 组播。
岛组播(IM)是一个通用的应用层框架,它适用于任何层组播协议。
对于网络课堂项目,我们决定再次使用ALMI为岛间通信。
岛组播采用这种结构,会话中的成员可以是一个父节点的其他成员,这需要将所有的数据包从邻居节点传送到到其他所有的邻居。
这种对等结构使系统在多播期也能保证信息的高效传播。
这种结构的主要问题是数据传输在很大程度上取决于内的所有节点的可靠性。
如果一个内节点突然断开,那么所有的下游节点也将在一秒钟内从主树中断开。
为了解决这个问题,我们将“代理服务器”引入系统之中。
代理服务器必须高度可靠,并且有IM网络运营商建立。
这是一个简单的构件,提供许多其他成员。
系统中的代理服务器越多,那么它所提供的网络就就越稳定,越可靠。
音频模块微软举,在Windows平台上进行多媒体应用程序开发的一个公认的标准,用于在网络课堂的桌面版操作:重新编码,音频压缩,解压缩,传输和播放。
(图1和图2。
)。
音频传输实时流媒体技术应用于音频传输。
当一个人说,所有的用户应该能够听到。
音频传输是一对多的。
实时音频的时间敏感,需要低延迟。
同时实时音频可以忍受一些损失。
因此,播放音频的最合适的方法是使用传输层协议。
图1:音频流设计(教授方面)图2:音频流设计(学生方面)带宽是互联网上最有价值的资源,通过音频压缩带宽是该应用程序的主要目的。
这个应用程序是专为数以百计的学生同时使用而开发,所需的带宽是如此之大,以致于网络无法支持它。
因此,音频压缩是必不可少的。
在这个项目中我们采用G.723.1。
G.723.1语音压缩算法是一个标准的ITU。
G.723.1在5.3和6.3千位/秒的DUL编码速率。
该声码器信号处理30毫秒的帧和低失真。
该算法的输入/输出是16位线性PCM样品。
G.723.1语音声码器中的比特率提能够供任何当前ITU标准最高的压缩比,而不影响语音质量。
此外,我们的声码器的编码延迟是非常低的(小于0.5秒)。
3、视频模块有许多不同类型的视频压缩编码标准,如H.261,H.263,MPEG4。
他们是被一些国际机构开发的。
在这个项目中,新的视频压缩标准H.264标准提供了一个更大的压缩率,大大降低了网络资源的利用。
比较不同的视频编码标准下比特率的PSNR工作的实施是基于专家设计的标准H264 ITU下的软件JM 5.0(最新版本7.6)。
加快视频压缩,修改也将是基于JM 5.0现有的代码。
对原有的H.264编解码器各部分的时间消耗加快视频编解码器从在<时间定时器H>功能调查计算瓶颈的过程。
从下面的数字,可以看出整像素的帧间预测需要的计算能力。
加快整像素的帧间预测。
为了提高编码速度,国际搜索模式禁用其他16×16忽略低效的编码处理。
同时,一个新的算法应用于运动估计。
在许多快速搜索算法的运动估计,预测运动矢量场自适应搜索技术(PMVFAST)算法,现在基于前者MVFAST算法改进,实现最佳性能方面和加速比的PSNR值减少大多数搜索点,这些有非常小的概率,当前块最后引用MMX技术也被应用于加速各种耗时的计算如绝对差之和(SAD)和YUV到RGB的转换等。
原来的H.264编码器和解码器是使用文件输入和文件输出。
在这个项目中,H264编码器和解码器是处理文件输入和文件输出。
在这个项目中,H.264编解码器必须进行修改,使其能为网络摄像头和网络提供必要的接口。
随着JM软件用C实现,它必须在C和C++之间建立静态库来保持的编解码速度。
静态库的使用也可以更容易的修改和升级。
下面的图显示了在4阶段的改进速度的优化结果。
阶段1:原始阶段2:配置修改阶段3:运动阶段4:运动技术在压缩和解压缩速度,视频质量也在网络课堂项目的极大关注。
拍摄的图片说明了视频质量的测试:原foreman.qcif序列(左)和解码序列(右)原container.qcif序列(左)和解码序列(右)可以从第一个看到第一个图,因为在编码器进行量化,工头的脸模糊。
出于同样的原因,在湖的表面的波变得不明显。
然而,该框架在整体上和他们的质量是可以接受的。
这个项目给予高压缩率仍然是明确的。
4、网络接口学生可以参加现场讲座通过公共计算机或计算机操作系统比Windows更可能发生。
要解决这些问题,开发了一个Web界面。
Web接口包含一个主页,BBS 系统,部分音频和部分视频。
网页是由Dreamweaver MX,Flash MX开发的。
用户可以找到所有的一般信息的有关项目和文件。
主页BBS系统是在互联网上广泛使用的在线讨论。
所有的用户都可以通过发布和回答后互相沟通。
通过提供免费BBS系统源码的6K集团,我们使用ASP建立了自己的BBS系统。
BBS几种不同的实现可以考虑使用视频和音频部分。
但我们的软件使用特定的视频和音频标准(H. 264,G.723),因此很难用java写的匹配的解码器,我们选择了Windows Media系列Windows Media编码器9.0的视频和音频编码器和媒体流可以通过Windows媒体播放器轻松解码。
视频播放网页只有音频很长一段时间过去了,沟通问题在不同地区和国家之间都受到极大关注,特别是那些在地理上的障碍和距离使得传统的面对面教授是不可能的。
现代技术和互联网已经彻底改变了远程通讯,因此远程学习的概念已经能够实现。
网络课堂提供了很大的灵活性:任何人谁有权访问互联网都可以生活在远程教育中。
教授们可以进行讲座就像在传统的教室,有轻微的变化,利用功能如PRS,白板,视频和音频传输。
结语和传统的课程交付相比,网络课堂具有几乎无限的班级大小,以及在时间和地点上有更大的灵活性。
去年,非典的爆发导致停课。
“网络课堂”,学生可以安全的、有效的在家参加讲座,教学调度不需要中断。
今天的因特网是组播的“岛屿”,不能由组播路由器互连。
为了使全球多播组播功能有效,应在一个岛上使用组播功能,岛屿间的单播连接的。
在我们的项目中,我们使用了一个应用层组播框架,称为岛组播(IM),其中组播为两层组织:在上层岛间覆盖建立的同时,IP组播技术在较低的水平内岛应用。
连同IP 组播可扩展性增加。
这允许一个更大的潜在的学生,因此网络课堂提供传统教学的优势和几乎无限的可供选择的班级规模。
在音频部分,压缩算法G.723.1是用来转换成IP数据包的演讲。
G.723.1在提供比当前任何ITU标准都高的压缩比的前提下,尽管巨大的压缩,仍然保留非常高的声音质量。
在实践中,它几乎不可能在不同IP间检测声音的语音质量之间的差异。
我们可以实现延迟小(小于0.5秒)并且好的音频质量。