JSP技术英文简介
Introduction of JSP TechnologyJavaServer PagesTM (jsp (SUN enterprise application of choice)) technology for the creation of display content dynamically generated Web page provides a simple and rapid method. jsp (SUN enterprise application of choice) technology is designed to enable structure-based Web applications more easily and faster, and can these applications with a variety of Web servers, application servers, browsers, and development tools to work together.Here provides a jsp (SUN enterprise application of choice) technology overview, describes the background of its development, as well as the overall objective of this technology. At the same time, a simple example, also describes a JavaTM technology-based key component of the page. Web application development of JavaServer Pages technology WaysIn the development of jsp (SUN enterprise application of choice) specification process, Sun Microsystems (Sun Microsystems Inc.) And many major Web servers, application servers and development tools providers, as well as a variety of experienced development groups to cooperate. The result is found a page for applications and developers to balance the portability and ease of use of development methodologies.Will generate and display the contents of the separationUsing jsp technology, Web page developers can use HTML or xml logo to design and formatting the final page. Jsp logo or the use of bound feet would have to generate dynamic content on the page. The logic-generated content has been packaged in a logo and JavaBeans components and tied up in a small script, all the scripts in the server-side run. If the core logic was encapsulated in the logo and Beans, then other people, such as management and Web page designers, can edit and use jsp pages, without affecting the generation of content.The server side, jsp engine explained jsp logo and small script to generate the requested content (for example, by accessing JavaBeans components, the use of technology JDBCTM access the database, or include file), and the results to HTML (or xml) page of the form sent back to the browser. This helps the author to protect their code, and ensure that any HTML-based Web browser completely availability.Emphasis on reusable componentsJsp page relies on the vast majority of reusable, cross-platform components (JavaBeans or Enterprise JavaBeansTM components) to implement the requirements of applications more complex treatment. Developers to be able to share and exchange components to perform common operations, or make these components more user or client groups to use. Component-based approach to accelerate the overall development process, and make a variety of organizations in their existing skills and to optimize the results of development efforts in the balance.Used to simplify page development logoWeb page developers are not familiar with the scripting language of the programmer. JavaServer Page technology packages a number of functions, which are in use with the jsp-related xml logo in dynamic content generation needs. Jsp logo standards can access and instantiate JavaBeans components, set or retrieve components of property, download Applet, and implementation by other means more difficult to encode and time-consuming function.Through the development of customized logos library, jsp technology can be extended. In future, third-party developers and other personnel for commonly used features to create your ownlogo library. This allows Web page developers can use familiar tools and the same logo as the implementation of specific functions of components to work.jsp technology easily integrated into a variety of applications architecture, to take advantage of existing tools and techniques, and expanded to be able to support enterprise-class distributed applications. The use of Java technology as part of the family, as well as the Java 2 (Enterprise Architecture) is an integral part of, jsp technology can support the highly complex Web-based applications.Jsp page because of the built-scripting language is based on the Java programming language, and all the jsp pages are compiled to become Java Servlet, jsp page on with all the benefits of Java technology, including robust storage management and security.As part of Java Platform, jsp has a Java programming language, "write once, run everywhere" characteristics. As more and more suppliers will be added to jsp support their products, you can use your own choice of server and tools, change tools, or the server does not affect the current application.When used with Java 2 Platform, Enterprise Edition (J2EE) and Enterprise JavaBean technology integration, jsp page will provide enterprise-class scalability and performance, which is essential for the deployment of virtual enterprise Web-based applications is essential.jsp instructionsjsp page using jsp direct instruction delivered to the jsp engine. This includes:jsp page directives related to information transmission page, such as buffer and thread information or wrong treatment.Language instructions specified scripting language, as well as all the expansion.Contains instructions (in the above examples have shown) can be used in the page that contains an external document. A good example is the copyright or company information documents documents - in a centralized location to preserve the document and the page contains more than in all jsp page should be easier to update. Of course, being contained in a document may also be another jsp file.Logo library instructions pointed out that the page can call a client logo library.jsp logoWill deal with the overwhelming majority of jsp and jsp related xml based on the completion of the logo. jsp 1.0 contains substantial standard logo, which identifies as a core identity, including:jsp: useBean statement of the identity of a component instance of the use of JavaBeans. If the component instance does not exist, JavaBeans components to instantiate and register the logo.jsp: setProperty this logo set up examples of components of a property's value.jsp: getProperty this logo to obtain a component instance of the property value, will be translated into a string, and place it implied object "out" Medium.jsp:includejsp:forwardThe merit of their logo in the application easy to use and share. Grammar based on the logo of the real power comes from the customer identification library development, makes a tool supplier or other personnel can request a specific assignment to create and logo.Script componentsjsp page in the page that contains a small script, called the small script (scriptlets). Small scriptis a code fragment, in the request processing is executed. Small scripts can be a static page element (as the same as the above example) to create dynamically generated pages.Script in the <% and%> signs have been described. Signs in this for all the things are described scripting language engine implementation, in our case are the host of the Java Virtual Machinejsp specification support all commonly used script component, including regular expressions and statements.jsp page application modeljsp page from the implementation of js engine, engines installed in the Web server or application using jsp server. jsp engine to accept the client request to the jsp page, and generate jsp pages to the client's response.jsp pages are usually compiled become a Java Servlet. The latter is a standard Java extension in site has more detailed description. Page developers can access all of the Java application environment to take advantage of Java technology, scalability and portability.When the first jsp page is called, if it does not exist, will be compiled into a Java Servlet category, and is stored in the server's memory. This makes the next call to the page have a very quick response.jsp page can be included in a wide variety of application architecture or model. jsp page can be used by different protocols, components and format of the composition of the Commonwealth. The following sections describe some of the possible consequences.A simple applicationIn a simple implementation, the browser directly call jsp page, jsp page itself generate the requested content (may be called directly from the JDBC database access to information). jsp page can call the JDBC or Java BlendTM component to generate the results, and create a standard HTML, as a result sent back to the browser.The model is basically used jsp page (compilers become Java Servlet) instead of the concept of CGI-BIN. This method has the following advantages:Simple and fast programmingPage authors can easily and resources of state, upon request, to generate dynamic contentThis structure in many applications a good job, but should not be extended to a large number of concurrent Web-based customer access scarce corporate resources, since each client must be set up or share a resource that can be used to connect the content. For example, if the jsp page to access the database, may generate much connection to the database, which will affect the database performance.The use of a flexible Java Servlet ApplicationIn another possible configuration, Web-based client may be directly on the Java Servlet requests, Servlet to generate dynamic content, the results tied to a results object and call jsp page. jsp page to access the object from the dynamic content, and the results (such as HTML) sent back to the browser.This method to create more applications can be shared between reusable components and applications can be used as part of a bigger completed. However, in the same deal with databases such as Enterprise Resource Connection, the scalability problem still exists.JavaBean technology using enterprise-class scalability treatmentjsp page can be used as Enterprise JavaBean (EJB) architecture, a middle layer. In this case, jsp pages and the back-end resources through EJB components interact.EJB components on the back-end management of resources to visit, so as a large number of concurrent users with scalable performance. For e-commerce or other applications, EJB management transactions and potential safety. This will simplify the jsp page. The model for the Java 2 Enterprise Edition (J2EE) platform support.jsp page with the xml technology integrationjsp page can be used to generate the xml and the HTML page.For a simple xml generated, developers can include jsp page xml logo and part of the static template. Dynamic xml generation, the use of server-based objects and generate the output xml client identifier.jsp page with the xml tools are not incompatible. Although the Sun in the design specification when jsp page jsp makes even manual for creators is also very easy, jsp specification also provides a mechanism to facilitate the creation of an arbitrary jsp page xml version. In this way, xml tool to be able to create and operate jsp page.By jsp convert logo and components compatible with the xml equivalent, you can use xml-based tools to operate the jsp page. For example, the script can be included in the <% and%> in, or based on the xml logo <jsp:scriptlet> and </ jsp: scriptlet> Medium. In fact, after following a few simple jsp page will be converted to xml pages are possible, these steps include:Adding a root element jspComponents and instructions will be converted to xml and other objects of compatibleFor page in other components (usually non-jsp) create a CDATA elementThrough this method compatible with the xml, create HTML page designers still have a rapidly create dynamic Web pages-to-use environment, meanwhile, xml-based tools and services can be integrated with the jsp page and compatible server and jsp to work together.jsp technology's futurejsp technology has been designed as an open, scalable dynamic Web page set up standards. Developers can use jsp page to create a portable Web applications, in different Web and application servers for the different occasions are running, and whatever the occasion itself and the need for the creation of tools.Through cooperation with leaders of the industry, Sun assurance jsp norms are open and can be transplanted. Can use any client and server platforms, in any place to prepare and deploy them. The future, tools, suppliers and other vendors will be provided for the specialized function of the client logo library to expand the platform functionality.jsp specification version 1.0 is the path to the dynamic Web page generated by an open industry standard method of the first step. Version 1.0 through a core logo sets, implicit objects, and to start creating dynamic Web pages constitutes the basic functions required of the method is basic. Already has a number of Web servers, application server and development tool vendors are adding to their products jsp1.0 support, so that the industry already has the initial, immediate support. Will be completed later in 1999 the 1.1 version of the xml through greater support for identification of customers, as well as integration with J2EE and the expansion of this version. And suppliers may choose to extend and expand the specification in jsp basic, necessary function. jsp engine can support a variety of powerful scripting language and object model. In the industry to expand technological capabilities and the use of jsp at the same time, Sun also promised to guarantee jsp platform and server technology to maintain inter-inherent portability.This article comes from the original link WEB Development Network:JSP技术介绍JavaServer PagesTM (jsp(SUN企业级应用的首选))技术为创建显示动态生成内容的Web 页面提供了一个简捷而快速的方法。
JSP技术简介
第1章JSP技术简介JSP(Java Server Pages)技术是由Sun公司发布的用于开发动态Web应用的一项技术。
它以其简单易学、跨平台的特性,在众多动态Web应用程序设计语言中异军突起,在短短几年中已经形成了一套完整的规范,并广泛地应用于电子商务等各个领域中。
在国内,JSP 现在也得到了比较广泛的重视,得到了很好的发展,越来越多的动态网站开始采用JSP技术。
本章就对JSP及其相关技术进行简单的介绍。
1.1 认识HTTP协议HTTP协议(Hypertext Transfer Protocol,超文本传送协议)是WWW服务器使用的主要协议,对HTTP协议细节的基本理解是编写JSP或Java小程序的开发人员所必需的。
因此在学习JSP技术之前有必要更加仔细地研究一下HTTP消息的格式(这里的讨论源自HTTP/1.1协议规范。
参见规范2616,网址为/rfc/rfc2616.txt)。
HTTP 协议的关键部分有HTTP请求和HTTP响应,以及客户端Web程序设计的一些基础知识,在第4章4.4节将会具体介绍。
1.2 客户端Web程序设计介绍Web浏览器现已成为深受大多数用户喜爱的用户界面。
HTML语言提供了丰富的控件,第三方厂商提供了Visual Basic编写的数百个额外的控件,这些都使得Web浏览器独具特色。
虽然Web浏览器与传统的GUI界面有一定的差距,但它提供了一种独立而又简单的方法来访问分布式资源,尤其是Internet资源。
而且越来越多的客户端Web程序扩展技术变得更加成熟,出现了包括CSS、JavaScript、VBScript、动态HTML、Java1.1.Applet应用程序等技术在内的客户端Web程序设计技术,它们的相互结合使得Web程序更加迷人。
下面简单介绍几种常用的客户端Web程序设计技术的特点。
本书假定读者对这些技术都有一定的了解,不对这些技术作详细介绍。
1.2.1 CSSCSS(Cascading Style Sheets)称为层叠样式表,是动态HTML技术的一个部分,但可以和HTML结合使用。
JSP技术英文简介教学提纲
J S P技术英文简介Introduction of JSP TechnologyJavaServer PagesTM (jsp (SUN enterprise application of choice)) technology for the creation of display content dynamically generated Web page provides a simple and rapid method. jsp (SUN enterprise application of choice) technology is designed to enable structure-based Web applications more easily and faster, and can these applications with a variety of Web servers, application servers, browsers, and development tools to work together.Here provides a jsp (SUN enterprise application of choice) technology overview, describes the background of its development, as well as the overall objective of this technology. At the same time, a simple example, also describes a JavaTM technology-based key component of the page.Web application development of JavaServer Pages technology WaysIn the development of jsp (SUN enterprise application of choice) specification process, Sun Microsystems (Sun Microsystems Inc.) And many major Web servers, application servers and development tools providers, as well as a variety of experienced development groups to cooperate. The result is found a page for applications and developers to balance the portability and ease of use of development methodologies.Will generate and display the contents of the separationUsing jsp technology, Web page developers can use HTML or xml logo to design and formatting the final page. Jsp logo or the use of bound feet would have to generate dynamic content on the page. The logic-generated content has been packaged in a logo and JavaBeans components and tied up in a small script, all the scripts in the server-side run. If the core logic was encapsulated in the logo and Beans, then other people, such as management and Web page designers, can edit and use jsp pages, without affecting the generation of content.The server side, jsp engine explained jsp logo and small script to generate the requested content (for example, by accessing JavaBeans components, the use of technology JDBCTM access the database, or include file), and the results to HTML (or xml) page of the form sent back to the browser. This helps the author to protect their code, and ensure that any HTML-based Web browser completely availability.Emphasis on reusable componentsJsp page relies on the vast majority of reusable, cross-platform components (JavaBeans or Enterprise JavaBeansTM components) to implement the requirements of applications more complex treatment. Developers to be able to share and exchange components to perform common operations, or make these components more user or client groups to use. Component-based approach to accelerate the overall development process, and make a variety of organizations in their existing skills and to optimize the results of development efforts in the balance.Used to simplify page development logoWeb page developers are not familiar with the scripting language of the programmer. JavaServer Page technology packages a number of functions, which arein use with the jsp-related xml logo in dynamic content generation needs. Jsp logo standards can access and instantiate JavaBeans components, set or retrieve components of property, download Applet, and implementation by other means more difficult to encode and time-consuming function.Through the development of customized logos library, jsp technology can be extended. In future, third-party developers and other personnel for commonly used features to create your own logo library. This allows Web page developers can use familiar tools and the same logo as the implementation of specific functions of components to work.jsp technology easily integrated into a variety of applications architecture, to take advantage of existing tools and techniques, and expanded to be able to support enterprise-class distributed applications. The use of Java technology as part of the family, as well as the Java 2 (Enterprise Architecture) is an integral part of, jsp technology can support the highly complex Web-based applications.Jsp page because of the built-scripting language is based on the Java programming language, and all the jsp pages are compiled to become Java Servlet, jsp page on with all the benefits of Java technology, including robust storage management and security.As part of Java Platform, jsp has a Java programming language, "write once, run everywhere" characteristics. As more and more suppliers will be added to jsp support their products, you can use your own choice of server and tools, change tools, or the server does not affect the current application.When used with Java 2 Platform, Enterprise Edition (J2EE) and Enterprise JavaBean technology integration, jsp page will provide enterprise-class scalability and performance, which is essential for the deployment of virtual enterprise Web-based applications is essential.jsp instructionsjsp page using jsp direct instruction delivered to the jsp engine. This includes: jsp page directives related to information transmission page, such as buffer and thread information or wrong treatment.Language instructions specified scripting language, as well as all the expansion.Contains instructions (in the above examples have shown) can be used in the page that contains an external document. A good example is the copyright or company information documents documents - in a centralized location to preserve the document and the page contains more than in all jsp page should be easier to update. Of course, being contained in a document may also be another jsp file.Logo library instructions pointed out that the page can call a client logo library.jsp logoWill deal with the overwhelming majority of jsp and jsp related xml based on the completion of the logo. jsp 1.0 contains substantial standard logo, which identifies as a core identity, including:jsp: useBean statement of the identity of a component instance of the use of JavaBeans. If the component instance does not exist, JavaBeans components to instantiate and register the logo.jsp: setProperty this logo set up examples of components of a property's value.jsp: getProperty this logo to obtain a component instance of the property value, will be translated into a string, and place it implied object "out" Medium.jsp:includejsp:forwardThe merit of their logo in the application easy to use and share. Grammar based on the logo of the real power comes from the customer identification library development, makes a tool supplier or other personnel can request a specific assignment to create and logo.Script componentsjsp page in the page that contains a small script, called the small script (scriptlets). Small script is a code fragment, in the request processing is executed. Small scripts can be a static page element (as the same as the above example) to create dynamically generated pages.Script in the <% and%> signs have been described. Signs in this for all the things are described scripting language engine implementation, in our case are the host of the Java Virtual Machinejsp specification support all commonly used script component, including regular expressions and statements.jsp page application modeljsp page from the implementation of js engine, engines installed in the Web server or application using jsp server. jsp engine to accept the client request to the jsp page, and generate jsp pages to the client's response.jsp pages are usually compiled become a Java Servlet. The latter is a standard Java extension in site has more detailed description. Page developers can access all of the Java application environment to take advantage of Java technology, scalability and portability.When the first jsp page is called, if it does not exist, will be compiled into a Java Servlet category, and is stored in the server's memory. This makes the next call to the page have a very quick response.jsp page can be included in a wide variety of application architecture or model. jsp page can be used by different protocols, components and format of the composition of the Commonwealth. The following sections describe some of the possible consequences.A simple applicationIn a simple implementation, the browser directly call jsp page, jsp page itself generate the requested content (may be called directly from the JDBC database access to information). jsp page can call the JDBC or Java BlendTM component to generate the results, and create a standard HTML, as a result sent back to the browser.The model is basically used jsp page (compilers become Java Servlet) instead of the concept of CGI-BIN. This method has the following advantages:Simple and fast programmingPage authors can easily and resources of state, upon request, to generate dynamic contentThis structure in many applications a good job, but should not be extended to a large number of concurrent Web-based customer access scarce corporate resources, since each client must be set up or share a resource that can be used to connect the content. For example, if the jsp page to access the database, may generate much connection to the database, which will affect the database performance.The use of a flexible Java Servlet ApplicationIn another possible configuration, Web-based client may be directly on the Java Servlet requests, Servlet to generate dynamic content, the results tied to a results object and call jsp page. jsp page to access the object from the dynamic content, and the results (such as HTML) sent back to the browser.This method to create more applications can be shared between reusable components and applications can be used as part of a bigger completed. However, in the same deal with databases such as Enterprise Resource Connection, the scalability problem still exists.JavaBean technology using enterprise-class scalability treatmentjsp page can be used as Enterprise JavaBean (EJB) architecture, a middle layer. In this case, jsp pages and the back-end resources through EJB components interact. EJB components on the back-end management of resources to visit, so as a large number of concurrent users with scalable performance. For e-commerce or other applications, EJB management transactions and potential safety. This will simplify the jsp page. The model for the Java 2 Enterprise Edition (J2EE) platform support.jsp page with the xml technology integrationjsp page can be used to generate the xml and the HTML page.For a simple xml generated, developers can include jsp page xml logo and part of the static template. Dynamic xml generation, the use of server-based objects and generate the output xml client identifier.jsp page with the xml tools are not incompatible. Although the Sun in the design specification when jsp page jsp makes even manual for creators is also very easy, jsp specification also provides a mechanism to facilitate the creation of an arbitrary jsp page xml version. In this way, xml tool to be able to create and operate jsp page.By jsp convert logo and components compatible with the xml equivalent, you can use xml-based tools to operate the jsp page. For example, the script can be included in the <% and%> in, or based on the xml logo <jsp:scriptlet> and </ jsp: scriptlet> Medium. In fact, after following a few simple jsp page will be converted to xml pages are possible, these steps include:Adding a root element jspComponents and instructions will be converted to xml and other objects of compatibleFor page in other components (usually non-jsp) create a CDATA element Through this method compatible with the xml, create HTML page designers still have a rapidly create dynamic Web pages-to-use environment, meanwhile, xml-based tools and services can be integrated with the jsp page and compatible server and jsp to work together.jsp technology's futurejsp technology has been designed as an open, scalable dynamic Web page set up standards. Developers can use jsp page to create a portable Web applications, in different Web and application servers for the different occasions are running, and whatever the occasion itself and the need for the creation of tools.Through cooperation with leaders of the industry, Sun assurance jsp norms are open and can be transplanted. Can use any client and server platforms, in any place to prepare and deploy them. The future, tools, suppliers and other vendors will be provided for the specialized function of the client logo library to expand the platform functionality.jsp specification version 1.0 is the path to the dynamic Web page generated by an open industry standard method of the first step. Version 1.0 through a core logo sets, implicit objects, and to start creating dynamic Web pages constitutes the basic functions required of the method is basic. Already has a number of Web servers, application server and development tool vendors are adding to their products jsp1.0 support, so that the industry already has the initial, immediate support.Will be completed later in 1999 the 1.1 version of the xml through greater support for identification of customers, as well as integration with J2EE and the expansion of this version. And suppliers may choose to extend and expand the specification in jsp basic, necessary function. jsp engine can support a variety of powerful scripting language and object model. In the industry to expand technological capabilities and the use of jsp at the same time, Sun also promised to guarantee jsp platform and server technology to maintain inter-inherent portability.This article comes from the original link WEB Development Network:JSP技术介绍JavaServer PagesTM (jsp(SUN企业级应用的首选))技术为创建显示动态生成内容的Web页面提供了一个简捷而快速的方法。
jsp考试知识点
《Java Web程序设计》练习题一、填空题1、JDBC对数据库的操作通过5个JDBC的类/接口来实现,它们是:DriverManager 、Statement、Connection、ResultSet和Class。
2、JSP 的英文全称是Java、Srever 、Page。
3、JSP指令元素主要有3种类型的指令,即include、taglib和page。
4、在JSP中提供了_9_个内置对象,分别是request对象、response对象、out对象、session对象、pageContext对象、exception对象、cofig对象、page对象和application对象。
5、在提交表单时有两种不同的提交方法,分别是POST和get。
6、在JSP中实现客户端和服务器的会话可使用session实现。
7、每过10分钟自动刷新的JSP语句是:response.setHeader(“refresh”,”600”)。
8、ResultSet类的.next( ) 方法可以移动记录指针到下一条记录。
9、在JSP中使用<jsp:useBean> 标记来访问JavaBean。
10、在<jsp:useBean>标记中,有一个scope属性,它是用来设定JavaBean存在的范围。
scope属性一分别为page、request、session和application。
11、JDBC是Java DataBase Connectivity的缩写,它的中文名称是java数据库连接技术。
12、JSP页面组成元素中,除了可以包含静态内容(html、js、css)外,还可以包含:JSP指令、j、脚本元素、动作、注释等。
13、异常的处理,可在该方法的代码段中包含3类代码:try 、catch和finally 块。
14、JSP的三个指令中,定义整个JSP页面属性的是page指令,实现静态包含的是include指令,库的是taglib指令。
Servlet和JSP技术简介中英文资料外文翻译文献
Servlet和JSP中英文资料外文翻译文献An Overview of Servlet and JSP Technology Marty Hall and Larry Brown,2000-07, Core Servlets and JavaServer Pages chapter 11.1A Servlet's JobServlets are Java programs that run on Web or application servers, acting as a middle layer between requests coming from Web browsers or other HTTP clients and databases or applications on the HTTP server. Their job is to perform the following tasks, as illustrated in Figure 1-1.Figure 1-11.Read the explicit data sent by the client.The end user normally enters this data in an HTML form on a Web page. However, the data could also come from an applet or a custom HTTP client program.2.Read the implicit HTTP request data sent by the browser.Figure 1-1 shows a single arrow going from the client to the Web server (the layer where servlets and JSP execute), but there are really two varieties of data: the explicit data that the end user enters in a form and the behind-the-scenes HTTP information. Both varieties are critical. The HTTP information includes cookies, information about media types and compression schemes the browser understands,and so on.3.Generate the results.This process may require talking to a database, executing an RMI or EJB call, invoking a Web service, or computing the response directly. Your real data may be in a relational database. Fine. But your database probably doesn't speak HTTP or return results in HTML, so the Web browser can't talk directly to the database. Even if it could, for security reasons, you probably would not want it to. The same argument applies to most other applications. You need the Web middle layer to extract the results inside a document.4.Send the explicit data (i.e., the document) to the client.This document can be sent in a variety of formats, including text (HTML or XML), binary (GIF images), or even a compressed format like gzip that is layered on top of some other underlying format. But, HTML is by far the most common format, so an important servlet/JSP task is to wrap the results inside of HTML.5.Send the implicit HTTP response data.Figure 1-1 shows a single arrow going from the Web middle layer (the servlet or JSP page) to the client. But, there are really two varieties of data sent: the document itself and the behind-the-scenes HTTP information. Again, both varieties are critical to effective development. Sending HTTP response data involves telling the browser or other client what type of document is being returned (e.g., HTML), setting cookies and caching parameters, and other such tasks.1.2Why Build Web Pages Dynamically?Many client requests can be satisfied by prebuilt documents, and the server would handle these requests without invoking servlets. In many cases, however, a static result is not sufficient, and a page needs to be generated for each request. There are a number of reasons why Web pages need to be built on-the-fly:1.The Web page is based on data sent by the client.For instance, the results page from search engines and order-confirmation pages at online stores are specific to particular user requests. You don't know what to display until you read the data that the user submits. Just remember that the user submits two kinds of data: explicit (i.e., HTML form data) and implicit (i.e., HTTP request headers). Either kind of input can be used to build the output page. In particular, it is quite common to build a user-specific page based on a cookie value.2.The Web page is derived from data that changes frequently.If the page changes for every request, then you certainly need to build the response at request time. If it changes only periodically, however, you could do it two ways: you could periodically build a new Web page on the server (independently of client requests), or you could wait and only build the page when the user requests it. The right approach depends on the situation, but sometimes it is more convenient to do the latter: wait for the user request. For example, a weather report or news headlines site might build the pages dynamically, perhaps returning a previously built page if that page is still up to date.3.The Web page uses information from corporate databases or other server-side sources.If the information is in a database, you need server-side processing even if the client is using dynamic Web content such as an applet. Imagine using an applet by itself for a search engine site:"Downloading 50 terabyte applet, please wait!" Obviously, that is silly; you need to talk to the database. Going from the client to the Web tier to the database (a three-tier approach) instead of from an applet directly to a database (a two-tier approach) provides increased flexibility and security with little or no performance penalty. After all, the database call is usually the rate-limiting step, so going through the Web server does not slow things down. In fact, a three-tier approach is often faster because the middle tier can perform caching and connection pooling.In principle, servlets are not restricted to Web or application servers that handleHTTP requests but can be used for other types of servers as well. For example, servlets could be embedded in FTP or mail servers to extend their functionality. And, a servlet API for SIP (Session Initiation Protocol) servers was recently standardized (see /en/jsr/detail?id=116). In practice, however, this use of servlets has not caught on, and we'll only be discussing HTTP servlets.1.3The Advantages of Servlets Over "Traditional" CGIJava servlets are more efficient, easier to use, more powerful, more portable, safer, and cheaper than traditional CGI and many alternative CGI-like technologies.1.EfficientWith traditional CGI, a new process is started for each HTTP request. If the CGI program itself is relatively short, the overhead of starting the process can dominate the execution time. With servlets, the Java virtual machine stays running and handles each request with a lightweight Java thread, not a heavyweight operating system process. Similarly, in traditional CGI, if there are N requests to the same CGI program, the code for the CGI program is loaded into memory N times. With servlets, however, there would be N threads, but only a single copy of the servlet class would be loaded. This approach reduces server memory requirements and saves time by instantiating fewer objects. Finally, when a CGI program finishes handling a request, the program terminates. This approach makes it difficult to cache computations, keep database connections open, and perform other optimizations that rely on persistent data. Servlets, however, remain in memory even after they complete a response, so it is straightforward to store arbitrarily complex data between client requests.2.ConvenientServlets have an extensive infrastructure for automatically parsing and decoding HTML form data, reading and setting HTTP headers, handling cookies, tracking sessions, and many other such high-level utilities. In CGI, you have to do much of this yourself. Besides, if you already know the Java programming language, why learn Perl too? You're already convinced that Java technology makes for more reliable andreusable code than does Visual Basic, VBScript, or C++. Why go back to those languages for server-side programming?3.PowerfulServlets support several capabilities that are difficult or impossible to accomplish with regular CGI. Servlets can talk directly to the Web server, whereas regular CGI programs cannot, at least not without using a server-specific API. Communicating with the Web server makes it easier to translate relative URLs into concrete path names, for instance. Multiple servlets can also share data, making it easy to implement database connection pooling and similar resource-sharing optimizations. Servlets can also maintain information from request to request, simplifying techniques like session tracking and caching of previous computations.4.PortableServlets are written in the Java programming language and follow a standard API. Servlets are supported directly or by a plugin on virtually every major Web server. Consequently, servlets written for, say, Macromedia JRun can run virtually unchanged on Apache Tomcat, Microsoft Internet Information Server (with a separate plugin), IBM WebSphere, iPlanet Enterprise Server, Oracle9i AS, or StarNine WebStar. They are part of the Java 2 Platform, Enterprise Edition (J2EE; see /j2ee/), so industry support for servlets is becoming even more pervasive.5.InexpensiveA number of free or very inexpensive Web servers are good for development use or deployment of low- or medium-volume Web sites. Thus, with servlets and JSP you can start with a free or inexpensive server and migrate to more expensive servers with high-performance capabilities or advanced administration utilities only after your project meets initial success. This is in contrast to many of the other CGI alternatives, which require a significant initial investment for the purchase of a proprietary package.Price and portability are somewhat connected. For example, Marty tries to keep track of the countries of readers that send him questions by email. India was near the top of the list, probably #2 behind the U.S. Marty also taught one of his JSP and servlet training courses (see /) in Manila, and there was great interest in servlet and JSP technology there.Now, why are India and the Philippines both so interested? We surmise that the answer is twofold. First, both countries have large pools of well-educated software developers. Second, both countries have (or had, at that time) highly unfavorable currency exchange rates against the U.S. dollar. So, buying a special-purpose Web server from a U.S. company consumed a large part of early project funds.But, with servlets and JSP, they could start with a free server: Apache Tomcat (either standalone, embedded in the regular Apache Web server, or embedded in Microsoft IIS). Once the project starts to become successful, they could move to a server like Caucho Resin that had higher performance and easier administration but that is not free. But none of their servlets or JSP pages have to be rewritten. If their project becomes even larger, they might want to move to a distributed (clustered) environment. No problem: they could move to Macromedia JRun Professional, which supports distributed applications (Web farms). Again, none of their servlets or JSP pages have to be rewritten. If the project becomes quite large and complex, they might want to use Enterprise JavaBeans (EJB) to encapsulate their business logic. So, they might switch to BEA WebLogic or Oracle9i AS. Again, none of their servlets or JSP pages have to be rewritten. Finally, if their project becomes even bigger, they might move it off of their Linux box and onto an IBM mainframe running IBM WebSphere. But once again, none of their servlets or JSP pages have to be rewritten.6.SecureOne of the main sources of vulnerabilities in traditional CGI stems from the fact that the programs are often executed by general-purpose operating system shells. So, the CGI programmer must be careful to filter out characters such as backquotes and semicolons that are treated specially by the shell. Implementing this precaution isharder than one might think, and weaknesses stemming from this problem are constantly being uncovered in widely used CGI libraries.A second source of problems is the fact that some CGI programs are processed by languages that do not automatically check array or string bounds. For example, in C and C++ it is perfectly legal to allocate a 100-element array and then write into the 999th "element," which is really some random part of program memory. So, programmers who forget to perform this check open up their system to deliberate or accidental buffer overflow attacks.Servlets suffer from neither of these problems. Even if a servlet executes a system call (e.g., with Runtime.exec or JNI) to invoke a program on the local operating system, it does not use a shell to do so. And, of course, array bounds checking and other memory protection features are a central part of the Java programming language.7.MainstreamThere are a lot of good technologies out there. But if vendors don't support them and developers don't know how to use them, what good are they? Servlet and JSP technology is supported by servers from Apache, Oracle, IBM, Sybase, BEA, Macromedia, Caucho, Sun/iPlanet, New Atlanta, ATG, Fujitsu, Lutris, Silverstream, the World Wide Web Consortium (W3C), and many others. Several low-cost plugins add support to Microsoft IIS and Zeus as well. They run on Windows, Unix/Linux, MacOS, VMS, and IBM mainframe operating systems. They are the single most popular application of the Java programming language. They are arguably the most popular choice for developing medium to large Web applications. They are used by the airline industry (most United Airlines and Delta Airlines Web sites), e-commerce (), online banking (First USA Bank, Banco Popular de Puerto Rico), Web search engines/portals (), large financial sites (American Century Investments), and hundreds of other sites that you visit every day.Of course, popularity alone is no proof of good technology. Numerouscounter-examples abound. But our point is that you are not experimenting with a new and unproven technology when you work with server-side Java.摘要:Servlet 程序运行在服务器端,在动态的生成Web页面方面与传统的CGI 和许多其他的类似CGI技术相比,Java Servlet更高效,更容易使用,功能更强大,并且拥有更好的可移植性,更节省投资。
Jsp技术介绍外文翻译
附录A中文译文Jsp技术介绍JSP(JA V A SERVER PAGES)是由Sun Microsystems 公司倡导、许多公司参与一起建立的一种动态网页技术标准,其在动态网页的建设中有其强大而特别的功能,他主要用于创建可支持跨平台及跨Web服务器的动态网页。
JSP可与微软的Active Server Pages (ASP)相媲美,但JSP使用的是类似于HTML的标记和Java 代码片段而不是用VBScript。
当你使用不提供ASP本地支持的Web服务器(例如Apache或Netscape服务器)时,你就可以考虑使用JSP了。
Java Server Pages技术可以让web开发人员和设计人员非常容易的创建和维护动态网页,特别是目前的商业系统。
作为JavaTM技术的一部分,JSP能够快速开发出基于web独立平台的应用程序。
JSP 把用户界面从系统内容中分离开来,使得设计人员能够在不改变底层动态内容的前提下改变整个网页布局。
那么什么是Java Server Page呢?简单的说,一个JSP网页就是在HTML网页中包含了能够生成动态内容的可执行应用程序代码。
此应用程序可能包含JavaBeanTM,JDBCTM对象,Enterprise Java BeanTM (E J B )和Remote Method Invocation (RMI)对象,所有的部分都可以非常容易的从JSP网页上访问到。
例如,一个JSP网页可以包含HTML代码所显示的静态文本和图像,也可以调用一个JDBC对象来访问数据库;当网页显示到用户界面上以后,它将包含静态HTML内容和从数据库中找到相应的动态信息。
在JSP网页中,要把用户界面和应用程序分开可以考虑在网页设计人员和开发人员之间执行一个非常方便的授权任务。
它也允许开发人员去建立灵活的代码,从而非常容易的进行更新和重复利用。
由于JSP网页能够根据需要自动进行编译,web设计人员无须重新编译应用程序逻辑就可以改变表述代码。
JSP基本语法
26
Jsp动作标记- jsp:forward动作标记
3、 jsp:forward动作标记 jsp:forward动作允许将用户请求定位到其它页 面,基本的语法格式是:
<jsp:forward page={"要转向的页面url"|"<%=表达式 %>"} /> 或者 <jsp:forward page={"要转向的页面url"|"<%=表达式 %>"} > <jsp:param name="属性名" value="属性值" /> </jsp:forward>
6
演示:示例 1
JSP Scriptlet 2-1
JSP Scriptlet概念
JSP Scriptlet就是在JSP页面里嵌入一段Java代码
JSP Scriptlet在JSP页面中的表现形式
<% Java代码 %>
7
JSP Scriptlet 2-2
使用JSP Scriptlet进行JSP编程
第九章
JSP 基础(二) 脚本、指令与动作的使用
回顾
JSP 的英文全称是JavaServer Page,是一种 Java服务器端编程技术之一,用于创建动态网页 JSP的页面由静态内容、JSP Scriptlet、 JSP 表 达式、申明、JSP 指令和注释等组成 JSP 生命周期包括转换、编译和执行阶段 JSP 页面可使用 Dreamweaver 和 MyEclipse8.5 等开发工具来创建
24
Jsp动作标记- jsp:param动作标记
ห้องสมุดไป่ตู้ ch9_1.jsp文件内容: <%@ page contentType="text/html;charset=GB2312" %> <%! public String getMax(double x,double y){ if (x>y){ double temp; temp=x; x=y; y=x; } return ("大数是:"+y+",小数是:"+x); } %>
外文翻译-----JSP简介
JSPOpen Category: WEB, JAVA, dynamic pages, the Knowledge NetworkContents• JSP Profile• JSP technology strength• JSP technology vulnerable• JSP six built-in objects:• JSP dynamic web site development and technologyJSP ProfileJSP (JavaServer Pages) is initiated by Sun Microsystems, Inc., with many companies to participate in the establishment of a dynamic web page technical standards. JSP technology somewhat similar to ASP technology, it is in the traditional HTML web page document (*. htm, *. html) to insert the Java programming paragraph (Scriptlet) and JSP tag (tag), thus JSP documents (*. jsp).Using JSP development of the Web application is cross-platform that can run on Linux, is also available for other operating systems.JSP technology to use the Java programming language prepared by the category of XML tags and scriptlets, to produce dynamic pages package processing logic. Page also visit by tags and scriptlets exist in the services side of the resources of logic. JSP page logic and web page design and display separation, support reusable component-based design, Web-based application development is rapid and easy.Web server in the face of visits JSP page request, the first implementation of the procedures of, and then together with the results of the implementation of JSP documents in HTML code with the return to the customer. Insert the Java programming operation of the database can be re-oriented websites, in order to achieve the establishment of dynamic pages needed to function.JSP and Java Servlet, is in the implementation of the server, usually returned to the client is an HTML text, as long as the client browser will be able to visit.JSP 1.0 specification of the final version is launched in September 1999, December has introduced 1.1 specifications. At present relatively new is JSP1.2 norms, JSP2.0 norms of the draft has also been introduced.JSP pages from HTML code and Java code embedded in one of the components. The server was in the pages of client requests after the Java code and then will generate the HTML pages to return to the client browser. Java Servlet JSP is the technical foundation and large-scale Web application development needs of Java Servlet and JSP support to complete. JSP with the Java technology easy to use, fully object-oriented, and a platform-independent and secure, mainly for all the characteristics of the Internet.JSP technology strength(1) time to prepare, run everywhere. At this point Java better than PHP, in addition to systems, the code not to make any changes.(2) the multi-platform support. Basically on all platforms of any development environment, in any environment for deployment in any environment in the expansion. Compared ASP / PHP limitations are obvious.(3) a strong scalability. From only a small Jar documents can run Servlet / JSP, to the multiple servers clustering and load balancing, to multiple Application for transaction processing, information processing, a server to numerous servers, Java shows a tremendous Vitality.(4) diversification and powerful development tools support. This is similar to the ASP, Java already have many very good development tools, and many can be free, and many of them have been able to run on a variety of platforms under.JSP technology vulnerable(1) and the same ASP, Java is the advantage of some of its fatal problem. It is precisely because in order to cross-platform functionality, in order to extreme stretching capacity, greatly increasing the complexity of the product.(2) Java's speed is class to complete the permanent memory, so in some cases by the use of memory compared to the number of users is indeed a "minimum cost performance." On the other hand, it also needs disk space to store a series of. Java documents and. Class, as well as the corresponding versions of documents.JSP six built-in objects:request, response, out, session, application, config, pagecontext, page, exception.1. Request for:The object of the package of information submitted by users, by calling the object corresponding way to access the information package, namely the use of the target users can access the information.2. Response object:The customer's request dynamic response to the client sent the data.三. session object1. What is the session: session object is a built-in objects JSP, it in the first JSP pages loaded automatically create, complete the conversation of management.From a customer to open a browser and connect to the server, to close the browser, leaving the end of this server, known as a conversation. When a customer visits a server, the server may be a few pages link between repeatedly, repeatedly refresh a page, the server should be through some kind of way to know this is the same client, which requires session object.2. session object ID: When a customer's first visit to a server on the JSP pages, JSP engines produce a session object, and assigned a String type of ID number, JSP engine at the same time, the ID number sent to the client, stored in Cookie, this session objects, and customers on the establishment of a one-to-one relationship. When a customer to connect to the server of the other pages, customers no longer allocated to the new session object, until, close your browser, the client-server object to cancel the session, and the conversation, and customer relationship disappeared. When a customer re-open the browser to connect to the server, the server for the customer to create a new session object.四. aplication target1. What is the application:Servers have launched after the application object, when a customer to visit the site between the various pages here, this application objects are the same, until the server is down. But with the session difference is that all customers of the application objects are the same, that is, all customers share this built-in application objects.2. application objects commonly used methods:(1) public void setAttribute (String key, Object obj): Object specified parameters will be the object obj added to the application object, and to add the subject of the designation of a keyword index.(2) public Object getAttribute (String key): access to application objects containing keywords for.五. out targetsout as a target output flow, used to client output data. out targets for the output data.六. Cookie1. What is Cookie:Cookie is stored in Web server on the user's hard drive section of the text. Cookie allow a Web site on the user's computer to store information on and then get back to it.For example, a Web site may be generated for each visitor a unique ID, and then to Cookie in the form of documents stored in each user's machine.If you use IE browser to visit Web, you will see all stored on your hard drive on the Cookie. They are most often stored in places: c: \ windows \ cookies (in Window2000 is in the C: \ Documents and Settings \ your user name \ Cookies)Cookie is "keyword key = value value" to preserve the format of the record.2. Targets the creation of a Cookie, Cookie object called the constructor can create a Cookie. Cookie object constructor has two string parameters: Cookie Cookie name and value.Cookie c = new Cookie ( "username", "john");3. If the JSP in the package good Cookie object to send to the client, the use of the response addCookie () method.Format: response.addCookie (c)4. Save to read the client's Cookie, the use of the object request getCookies () method will be implemented in all client came to an array of Cookie objects in the form of order, to meet the need to remove the Cookie object, it is necessary to compare an array cycle Each target keywords.JSP简介JSP(JavaServer Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。
java中常用英文简写全拼与中文意思
API (Application Programming Interface) 应用编程接口JRE (Java Runtime Enviroment) Java 运行时环境JDK (Java Development Kit) Java开发工具包SDK(Software Development Kit, 即软件开发工具包)JVM (Java Virtual Machine) Java虚拟机JNI (Java Native Interface) Java本地接口AWT (Abstract Windows Toolekit) 抽象窗口工具箱JNDI (Java Naming & Directory Interface) JAVA命名目录服务.主要提供的功能是:提供一个目录系统,让其它各地的应用程序在其上面留下自己的索引,从而满足快速查找和定位分布式应用程序的功能。
JMS (Java Message Service)JAVA消息服务.主要实现各个应用程序之间的通讯.包括点对点和广播.JTA (Java Transcation API) JAVA事务服务.提供各种分布式事务服务.应用程序只需调用其提供的接口即可.JAF (Java Action FrameWork) JAVA安全认证框架.提供一些安全控制方面的框架.让开发者通过各种部署和自定义实现自己的个性安全控制策略.RMI (Remote Method Interface) 远程方法调用CVS (Concurrent Versions System) 版本控制器SVN (Subversion) 版本控制器TC (Test Case) 测试用例,是为某个特殊目标而编制的一组测试输入、执行条件以及预期结果,以便测试某个程序路径或核实是否满足某个特定需求。
指对一项特定的软件产品进行测试任务的描述,体现测试方案、方法、技术和策略。
内容包括测试目标、测试环境、输入数据、测试步骤、预期结果、测试脚本等,并形成文档。
什么是JSP
什么是JSPJSP是Java server page的缩写,以Java技术为基础,具有动态页面与静态页面分离,能摆脱硬件平台的束缚,以及编译后运行等优点,完全克服了ASP的脚本级执行的缺点。
JA V A_HOME存储jdk目录(指明JDK安装路径)CLASS_PATH存储jdk下的lib目录(使得系统可以在任何路径下识别java命令)PATH存储jdk下的bin目录(为java加载类(class or lib)路径)JSP运行原理当服务器上的一个JSP页面被第一次请求执行时,服务器上JSP引擎首先将JSP页面文件转译成一个Java文件,并编译这个Java文件生成字节码文件,然后执行字节码文件响应客户的请求。
而当这个JSP页面再次被请求执行时,JSP引擎将直接执行字节码文件来响应客户。
运行startup.bat启动tomcat服务器的好处①启动时候各项信息都可以看到②关了就关闭服务器,不必非得运行关闭的bat修改端口号,通过修改tomcat服务器安装目录下conf文件夹中的server.xml文件修改session对象最长“发呆”时间,通过修改tomcat服务器下的web.xml文件两个include区别动作标记在JSP页面运行时加入文件,指令标记在JSP页面该指令位置处,静态插入文件。
Println和print的区别:前者会向缓存区写入一个换行用<br>实现,而后者不写入换行。
重定向与转发的区别:前者不带参数从一个页面转到另一个页面,后者带参数。
五个内置对象:request、response、session、application、out处理汉字信息①将charset中的首字母大写②首字母小写,但将request要获取的信息重新编码,如下代码String str=request.getParameter(“message”);byte b[]=str.getBytes(“ISO-8859-1”); str=new String(b);scope取值的不同情况:①取值page,不同用户的取值,bean也互不相同;②取值session,不同用户的取值,bean也互不相同;③取值request,不同用户的取值,bean也互不相同;④取值application,不同用户的取值,bean是同一个。
JSP应用框架论文中英文资料对照外文翻译文献综述
JSP应用框架中英文资料对照外文翻译文献综述JSP APPLICATION FRAMEWORKS1.1 WHAT ARE APPLICATION FRAMEWORKS:A framework is a reusable, semi-complete application that can be specialized to 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 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 between applications. Application frameworks build on this common ground to provide developers with a reusable structure that can serve as the foundation for their own products.A framework provides developers with a set of backbone components that have the following characteristics: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 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 investment compared to starting from scratch, especially for larger projects.1.2 OTHER TYPES OF FRAMEWORKS:The idea of a framework applies not only to applications but to application components as 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 library. Like application frameworks, these tools provide semi-complete versions of a subsystem that can be specialized to provide a custom component.Some frameworks have been linked to a proprietary development environment. This is not the case with Struts or any of the other frameworks shown in this book. You can use anydevelopment environment with Struts: Visual Age for Java, JBuilder, Eclipse, Emacs, and Textpad are all popular choices among Struts developers. If you can use it with Java, you can use it with Struts.1.3 ENABLING TECHNOLPGIES:Applications developed with Struts are based on 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 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.1.4 HYPERTEXT TRANSFER PROTOCOL (HTTP):When mediating talks between nations, diplomats often follow a formal protocol.Diplomatic protocols are designed to avoid misunderstandings 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 applications use the Hypertext Transfer Protocol (HTTP) to move data between the browser running on your computer and the application running on the server.Many server applications communicate using protocols 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 know the state of each connection and the identity of each person using it, these are known as stateful protocols.By contrast, HTTP is known as a stateless protocol. An HTTP server will accept any request 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 requests. This is one reason why the Internet has been able to scale to millions of computers.Another reason HTTP has become the universal standard is its simplicity. An HTTP request looks like an 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 plain text that developers can read.The first line in the HTTP request contains the method, followed by the location of the requested resource and the version of HTTP. Zero or 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 toname a few. Of the seven request methods, GET and POST are by far the most popular.Once the server has received and serviced the request, it will issue an HTTP response. The first line in the response 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 in a way similar to the request headers.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 next request. While simple and efficient, a stateless protocol is problematic for dynamic applications that need to keep track of their users.Cookies and URL rewriting 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 track users. Both approaches are 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 locate a file and then returns that file in the response. The file is typically formatted using Hypertext Markup Language (HTML) [W3C, HTML] that the web browser can format and display. The HTML page often includes hypertext links to other web pages and may display any number of other goodies, such as images and videos. The user clicks a link to make another request, and the process begins a new.Standard web servers handle static content and images quite well but need a helping hand to provide users with a customized, dynamic response.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 browser. Dynamic content, on the other hand, is generated on the fly, typically in response to an individualized request from a browser.1.5 COMMON GATEWAY INTERFACE (CGI):The first widely 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 gateway, 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.When a web 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 server then relays the response to the browser.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 used. Like HTTP, CGI is flexible and easy to implement, and a great number of CGI-aware programs have been written.The main drawback to CGI is that it must run a new copy of the CGI-aware program for 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 program written for one operating system may not run on another.1.6 JA V A SERVLETS:Sun’s Java Servlet platform directly addresses the two main drawbacks of CGI programs. First, servlets 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 Virtual Machine (JVM).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 interface (API) is specifically designed to help Java developers create dynamic applications.The Servlet itself is simply a Java class that has been compiled into byte code, like any other Java object. 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.To give conventional 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 matching a registered pattern arrives, the web server passes the request to the container, and the container invokes the Servlet.But unlike CGI programs, a new Servlet is not created for each request. Once 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 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 they can be shared between requests. Acquiring resources like these can take several seconds—which is longer than many surfers are willing to wait.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.1.7 JA V ASERVER PAGES:While Java servlets are a big step up from CGI programs, they are not a panacea. Togenerate the response, developers are still stuck with using println statements to render the HTML. Code that looks like:out.println("<P>One line of HTML.</P>");out.println("<P>Another line of HTML.</P>");It is all too common in servlets that generate 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. Meanwhile, given 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 alone encourages mixing markup with business logic, making it difficult for team members to specialize.To solve this problem, Sun turned to the idea of using server pages to combine scripting and templating 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 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 pages by looking for code that begins with <% and ends with %>.To be seen as a JSP page, the file just needs to be saved with an extension of jsp.When a client requests the JSP page, the container translates the page into a source code file for a Java Servlet and compiles 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 has changed since it was last compiled, the container will retranslate and rebuild the page all over again.Project managers can now assign the presentation layer to HTML developers, who then pass on 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.1.8 JA V ABEANS:JavaBeans are Java classes which conform to a set of design patterns that make them easier to use with development tools and other components.DEFINITION: A JavaBean is a reusable software component written in Java. To qualify as a JavaBean, the class must be concrete and public, and have a non-argument constructor. JavaBeans expose internal fields as properties by providing public methods that follow a consistent design pattern. Knowing that the property names follow this pattern, other Javaclasses are able to use introspection to discover and manipulate JavaBean properties.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 us ed to change a JavaBean’s state.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 values, 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 signature for a weight property of the type Double would be:public void setWeight(Double weight);A similar design pattern is used to create the accessor method signature. Accessor methods 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 mutator. Accessors for simple properties cannot accept parameters in their method signature. Not surprisingly, accessors are often called getters.The accessor method signature for our weight property is:public Double getWeight();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 prefix 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 their method signature.The boolean accessor method signature for an on property would be:public boolean isOn();The canonical method signatures play an important 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 signature on a JavaBean, it knows that the method can be used to access or change the bean’s properties.Sun introduced JavaBeans to work with GUI components, but they are now used with every aspect of Java 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 can then use the bean’s properties to customize the output.JSP应用框架1.1 什么是应用框架:框架(framework)是可以被重用的一种半成品的应用程序,我们可以用它来制作专门的定制程序。
