JSP9 a built-in object

Source: Internet
Author: User

JSP built-in objects: we use JSP for page programming can be used directly without the need to create their own web containers have been created for the user good JSP built-in objects. such as Request,session,response,out and so on.

Here are the 9 built-in objects given by JSP2.0:

Built-in objects Type Scope
Request Javax.servlet.http.HttpServletRequest Request
Response Javax.servlet.http.HttpServletResponse Response
PageContext Javax.servlet.jsp.PageContext Page
Session Javax.servlet.http.HtpSession Session
Application Javax.servlet.jsp.ServletContext Application
Out Javax.servlet.jsp.JspWriter Page
Config Javax.servlet.ServletConfig Page
Page Java.lang.Object Page
exception Java.lang.Throwable Page

We can also classify them according to their role:

First Category: Related to servlets: page and Config

Type II: Related to Input/output: Out,request and response

Category III: Related to the context: Application,session and PageContext

Class Fourth: Related to Error: exception

I. Attribute Preservation scope

In JSPs, you can set and get properties by using both setattribute () and GetAttribute () methods. So as to realize the sharing of data. The JSP provides four properties to save the range: Response,request,session and application.

1, page: Is the set of properties can only be valid on the current page. Through PageContext's setattribute () and getattribute ().

2. Request: The attribute is valid within the scope of a request. If the page jumps from one page to another, the property is invalidated. The jump referred to here refers to a client jump, such as a customer clicking a hyperlink to jump to another page or browsing another page through the browser's address bar. If the server-side jump <jsp:forward> is used, the property remains in effect. Similarly, use the setattribute () and getattribute () of the Request object.

3, session: Refers to the client browser and server a session within the scope, if the server disconnects, then the attribute is invalid. Similarly, the setattribute () and getattribute () of the session object are passed. Exceptions to session scope such as reopening a browser.

4, Application: Refers to the entire server scope, know that the server will not expire after the failure. In the same vein, setattribute () and getattribute () are passed through the Application object. The application range is the saved property that can be retrieved on any page if the server does not restart, even if the browser is reopened for properties.

Second, remove the attribute: You must clear the program if you want to clear the property before the scope of the property has been reached. That is, the RemoveAttribute () method of the corresponding object can be called to remove the specified property.

<%@ page language= "java" contenttype= "text/html;charset=gb2312"%>

Result page Output: Page Range: Name property value is James
Page Range: Age property value is 12

Page Range: Sex property value is null

Request object: The Request object not only can be used to set and get the request range variable, but also can be used to obtain the client request parameters, the source of the request, header, cookies and so on.

1. Request parameter method for client requests

Method return value type Method description
GetParameter (String name) String Gets the parameter value named name for the parameter
Getparameternames () Enumeration Gets the name of all parameters, which can be used in combination with the previous method to get the values of all parameters
Getparametervalues (String name) String[] Gets all parameters named name of the parameter, such as the parameter is multiple checkboxes
Getparametermap () Map Gets the map instance encapsulated by all parameters, and returns an array of values with the corresponding parameter named ID through the map instance's string[] get ("id") method

2. Other methods of request

Method return value type Method description
GetHeader (String name) String Gets the header named name for the specified header
Getheadername () Enumeration Get all the header names
Getintheader (String name) Int Gets the header named name, with the content returned as an integer type
Getdateheader (String name) Long Gets the header named name, with the content returned as a date type
GetCookies () Cookies Get the relevant cookie
Getcontextpath () String Get the path to the context
GetMethod () String Get how clients are submitted
Getprotocol () String Get the HTTP protocol used
GetQueryString () String Gets the requested string
Getrequestsessionid () String Gets the session ID of the client
Getrequesturi () String Gets the requested URI
GETREMOTEADDR () String Get Client IP Address

Iv. Response object: Used to transmit output information to the client.

Method return value Method description
Addcookie (Cookie cookie) void
Adddateheader (String name,long date) void
AddHeader (String name,string value) void
Addintheader (String name,int value) void
Setdateheader (String name,long date) void
SetHeader (String name,string value) void
Setintheader (String name,int value) void
Senderror (int SC) void Transfer Status Code
Senderror (int sc,string msg) void Transfer status codes and error messages
SetStatus (int SC) void Set the status code
Sendredirect (String URL) void Page redirection for page jumps

Note: Here the Response object's Sendredirect (String URL) method Setting page redirection will change the browser address bar information, so also called the client jump.

The instance 1:response object implements the automatic refresh of the page: just the early JSP page plus

<%--uses the Setintheader of the response object to set the value of the refresh (in seconds) for automatic page refresh--%> <% response.addintheader ("Refresh", 10); %>

Example 2: Implementation of automatic page jump: You can use the Response object's SetHeader () method to add a header titled Refresh, and set the page jump time and jump page, so that the page automatically jump. <% Response.setheader ("Refresh", "10; Url=http://www.baidu.com "); %>

Here, use the SetHeader method to add a header titled "Refresh" with a value of "10,url=http://www.baidu.com".

V. Out object: used to output information to the page.

Method return value type Method description
Clear () void Clear the output on a webpage
Clearbuffer () void Clear Buffer Contents
Close () void Close buffer, clear all contents
GetBufferSize () Int Get buffer size
Getremaining () Int Get buffer remaining size
Isautofulsh () Boolean Get information about whether the buffer is automatically purged
Print (String str) void For page output
println (String str) void Page output and line wrapping

Vi. Session object: Used to represent the user's conversational state, typically used to hold various information about a user until the lifecycle expires or is considered released.

Method return value type Method description
GetId () String Gets the ID of the session
GetCreationTime () Long Gets the session's build time
Getlashaccessedtime () Long Get user last Send request time via session
Getmaxinactiveinterval () Long Gets the session life cycle, which expires if this time is exceeded
Invalidate () void Clear Session Contents
IsNew () Boolean Determine if the session is "new"
Setmaxinactiveinterval () void Sets the session life cycle, which expires if this time is exceeded

Vii. Application object: Used to obtain and set information about the servlet.

Method return value type Method description
Getmajorversion () Int Get the main servlet API version
Getminorversion () Int Get the minor servlet API version
Getserverinfo () String Get Server version
GetMimeType () String Gets the MIME type of the specified file
GetContext () ServerContext Gets the application context for the specified local
Getrealpath String Gets the absolute path of the specified path

Viii. PageContext objects: Properties that can be used to set the page range, and other range properties, but you need to specify a range parameter, and you can also get other built-in objects.

Method return value Method description
GetException () Exception Gets the current exception built-in object
Getout () JspWriter
GetPage () Object
Getrequest () Servletrequset
GetResponse () Servletresponse
Getservletconfig () ServletConfig
Getserveltcontext () ServletContext
GetSession () HttpSession
GetAttribute (String name,int scope) Object Gets the Name property value for the specified range
Getattributenamesinscope (int scope) Enumeration Gets all property names for the specified range
Getattributesscope (String name) Int Get property range with Name
RemoveAttribute (String name) void Remove property with Name property
RemoveAttribute (String name,int scope) void Removes the attribute with the name of the specified range
SetAttribute (String name,object value,int scope) void Sets the name property of the specified range
Findattribute (String name) Object Look for properties with name for all scope property names

The Page object: The Page object represents a servlet that is translated by the JSP, and the Page object makes it very easy to invoke the methods defined in the Servlet class.

Example 1: Invoking a method defined in a servlet class from a Page object

<%@ page language= "java" contenttype= "text/html;charset=gb2312"%> <%@ page info= "This is the page Object practic E "%>

Output: This is the page Object practice.

Config object: can be used to obtain configuration information for the servlet.

Method return value type Method description
Getinitparameter (name) String Get servlet initialization parameters
Getinitparameternames () Enumeration Get all initialization parameter names of the servlet
Getservletcontext () ServletContext Get Current application context
Getservletname () String Get the servlet name

Xi. Exception object: Used to handle error exceptions, if you want to use the exception object, you must specify the Iserrorpage property value in the page to True.

Example: Exception to handle error exceptions

1. Page with Error: error.jsp

<%@ page language= "java" contenttype= "text/html;charset=gb2312" errorpage= "exceptiondemo01.jsp"%>

Note: error.jsp in arr[3] array The following table is out of bounds. You specify the property value of ErrorPage in the page directive as the appropriate exception handler.

2. Exception Handling page: exceptiondo.jsp

<%@ page language= "java" contenttype= "text/html;charset=gb2312" iserrorpage= "true"%> <% @page import= " Java.io.PrintStream "%>

Note: You must specify the property Iserrorpage property value to true in the page directive. This means that the page can be used for exception handling.

Array subscript out-of-bounds exception information in error.jsp will be printed in exceptiondo.jsp

JSP9 a built-in object

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.