JDBC+Servlet+JSP整合开发之26.JSP内建对象
–内建对象
–out 内建对象
–request 内建对象
–response 对象
–session 内建对象
–pageContext 内建对象
–application 内建对象
–config 内建对象
–page 内建对象
–exception 内建对象
–JSP 为了简化页面的开发提供了一些内建对象
–这些内建对象在使用之前不需要实例化
–它们由容器(如:Tomcat)来实现和管理
–在所有的JSP页面中都能使用内建对象
–所有的的内建对象只能在代码块和表达式中使用
–不能在JSP声明中使用
–request
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class TestJspServlet extends HttpServlet {
/**
* Constructor of the object.
*/
public TestJspServlet() {
super();
}
/**
* Destruction of the servlet. <br>
*/
public void destroy() {
super.destroy(); // Just puts "destroy" string in log
// Put your code here
}
/**
* The doGet method of the servlet. <br>
*
* This method is called when a form has its tag value method equals to get.
*
* @param request the request send by the client to the server
* @param response the response send by the server to the client
* @throws ServletException if an error occurred
* @throws IOException if an error occurred
*/
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request,response);
}
/**
* The doPost method of the servlet. <br>
*
* This method is called when a form has its tag value method equals to post.
*
* @param request the request send by the client to the server
* @param response the response send by the server to the client
* @throws ServletException if an error occurred
* @throws IOException if an error occurred
*/
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setAttribute("name", "michael");
request.getRequestDispatcher("/RequestJsp.jsp").forward(request, response);
}
/**
* Initialization of the servlet. <br>
*
* @throws ServletException if an error occurs
*/
public void init() throws ServletException {
// Put your code here
}
}
–pageContext
–session
–config
–page
–exception
? out 内建对象
–作用
? out 对象被封装成 javax.servlet.jsp.JspWriter接口
? 表示为客户端打开的输出流
? PrintWriter使用它向客户端发送输出流
–主要方法
? 输出各种数据类型的数据,如:out.print(boolean)、
out.println(boolean)/out.print(int)、out.println(int)等
? out.newLine() :输出一个换行字符
? out.flush():输出缓冲区里的数据
? out.close():关闭输出流
? out.clearBuffer():清除缓冲区中的数据,并把数据输出到客户端
? out.clear():清除缓冲区中的数据,但不把数据输出到客户端
? out.getBufferSize():获得缓冲区大小
? out.getRemaining():获得缓冲区中剩余大小
? out.isAutoFlush():判断缓冲区是否自动刷新
– 作用
? request 对象代表请求对象
? 它被封装成HttpServletRequest接口
? 具有HttpServletRequest接口的所有特征
? 它作为jspService()方法的一个参数由容器传递给JSP页面
– 主要方法
? 取得请求参数的方法
– String getParameter(String name) 取得name 的参数值
– Enumeration getParameterNames( ) 取得所有的参数名称
– String [] getParameterValues(String name) 取得所有name 的参数值
– Map getParameterMap( ) 取得一个要求参数的Map
? 取得请求标头的方法
– String getHeader(String name) 取得name 的标头
– Enumeration getHeaderNames() 取得所有的标头名称
– Enumeration getHeaders(String name) 取得所有name 的标头
– Map getParameterMap( ) 取得一个要求参数的Map
– int getIntHeader(String name) 取得整数类型name 的标头
– long getDateHeader(String name) 取得日期类型name 的标头
– Cookie [] getCookies( ) 取得与请求有关的cookies
? 其他请求的方法
–String getContextPath( ) 取得Context 路径
–String getMethod( ) 取得HTTP 的方法(GET、POST)
–String getProtocol( ) 取得使用的协议 (HTTP/1.1、HTTP/1.0 )
–String getQueryString( ) 取得请求的参数字符串,不过,HTTP的方法必须为GET
–String getRequestedSessionId( ) 取得用户端的Session ID
–String getRequestURI( ) 取得请求的URL,但是不包括请求的参数字符串
–Cookie [] getCookies( ) 取得与请求有关的cookies
–String getRemoteAddr( ) 取得用户的IP 地址
–String getRemoteHost( ) 取得用户的主机名称
–int getRemotePort( ) 取得用户的主机端口
–String getRemoteUser( ) 取得用户的名称
–void getCharacterEncoding(String encoding) 设定编码格式,用来解决页
面传递中文的问题
– 作用
? response 对象主要将JSP 处理数据后的结果传回到客户端
? response 对象是实现 javax.servlet.http.HttpServletResponse 接口
– 主要方法
? 设定表头的方法
– void addCookie(Cookie cookie) 新增cookie
– void addDateHeader(String name, long date) 新增long类型的值到name标头
– void addHeader(String name, String value) 新增String 类型的值到name 标头
– void addIntHeader(String name, int value) 新增int 类型的值到name 标头
– void setDateHeader(String name, long date) 指定long类型的值到name标头
– void setHeader(String name, String value) 指定String 类型的值到name 标头
– void setIntHeader(String name, int value) 指定int 类型的值到name 标头
? 设定响应状态码的方法
– void sendError(int sc) 传送状态码(status code)
– void sendError(int sc, String msg) 传送状态码和错误信息
– void setStatus(int sc) 设定状态码
? 用来URL 重写(rewriting)的方法
– String encodeRedirectURL(String url) 对使用sendRedirect( )方法的URL予以编码
– 作用
? session 对象表示目前用户的会话(session)状况。
?用此项机制可以轻易识别每一个用户, 然后针对每一个别用户的要求,给予正确的响应。
? session 对象实现javax.servlet.http.HttpSession 接口
– 主要方法
? long getCreationTime() 取得session产生的时间,单位是毫秒,由1970 年1 月1日零时算起
? String getId() 取得session 的ID
? long getLastAccessedTime() 取得用户最后通过这个session送出请求的时间,单 位是毫秒,由1970 年1 月1 日零时算起
? long getMaxInactiveInterval() 取得最大session不活动的时间,若超过这时间,session 将会失效,时间单位为秒
? void invalidate() 取消session 对象,并将对象存放的内容完全实效
? boolean isNew() 判断session 是否为"新"的,所谓"新"的session,表示session
已由服务器产生,但是client 尚未使用
? void setMaxInactiveInterval(int interval) 设定最大session不活动的时间, 若超过这时间,session 将会失效,时间单位为秒
–作用
? application 对象实现javax.servlet.ServletContext 接口
? 它主要功用在于取得或更改 Servlet 的设定
–主要方法
? 容器相关信息的方法
– int getMajorVersion( ) 取得Container 主要的Servlet API 版本,如: 2
–int getMinorVersion( ) 取得Container 次要的Servlet API 版本,如:4
–String getServerInfo( ) 取得Container 的名称和版本
?有关服务端的路径和文件的方法
–String getMimeType(String file) 取得指定文件的MIME 类型
–ServletContext getContext(String uripath) 取得指定Local URL 的 Application context
–String getRealPath(String path)取得本地端path的绝对路径
?有关日志记录的方法
–void log(String message) 将信息写入log 文件中
–void log(String message, Throwable throwable) 将stack trace 所产生的异常信息写入log文件中
– 作用
? pageContext对象能够存取其他隐含对象。
? 当隐含对象本身也支持属性时,pageContext对象也提供存取那些属性的方法。
– 主要方法
? 取得其他隐含对象的方法
– Exception getException( ) 返回目前网页的异常,不过此网页要为error page, 例如:exception 隐含对象
– JspWriter getOut( ) 返回目前网页的输出流,例如:out 隐含对象
– Object getPage( ) 返回目前网页的Servlet 实体(instance),例如:page 隐含对象
– ServletRequest getRequest( ) 返回目前网页的请求,例如:request 隐含对象
– ServletResponse getResponse( ) 返回目前网页的响应,例如:response 隐含对象
– ServletConfig getServletConfig( ) 返回目前此网页的ServletConfig 对象,例如:config 隐含对象
– ServletContext getServletContext( ) 返回目前此网页的执行环境(context),例如: application隐含对象
– HttpSession getSession( ) 返回和目前网页有联系的会话(session),例如: session 隐含对象
? 取得属性的方法
– Object getAttribute(String name, int scope) 返回name 属性,范围为scope 的 属性对象, 回传类型为 java.lang.Object
– Enumeration getAttributeNamesInScope(int scope) 返回所有属性范围为scope 的属性名称,回传类型为Enumeration
– int getAttributesScope(String name) 返回属性名称为name 的属性范围
– void removeAttribute(String name) 移除属性名称为name 的属性对象
– void removeAttribute(String name, int scope) 移除属性名称为name,范围为 scope 的属性对象
– void setAttribute(String name, Object value, int scope) 指定属性对象的名称为name、值 为value、范围为scope
– Object findAttribute(String name) 寻找在所有范围中属性名称为name 的属性对象
? 范围常量
– PAGE_SCOPE 存入pageContext 对象的属性范围
– REQUEST_SCOPE 存入request 对象的属性范围
– SESSION_SCOPE 存入session 对象的属性范围
– APPLICATION_SCOPE 存入application 对象的属性范围
–作用
?当JSP 网页有错误时会产生异常,而exception 对象就
来针对这个异常做处理
–主要方法
? getMessage( ) 获得错误信息
? getLocalizedMessage( ) 获得本地错误信息
? printStackTrace(new java.io.PrintWriter(out))
打印堆栈信息
附件:http://down.51cto.com/data/2355606
JDBC+Servlet+JSP整合开发之26.JSP内建对象相关推荐
- JDBC+Servlet+JSP整合开发之25.JSP动作元素
–jsp:useBean –jsp:setProperty –jsp:getProperty –jsp:forward –jsp:include –jsp:param –实例 ?计算器 ------- ...
- JDBC+Servlet+JSP整合开发之22.JSP简介
–对JSP的需求 –JSP的结构 –JSP的好处 –JSP实例 ?创建一个简单的JSP页面 ########################################### ? JSP –JSP ...
- Java EE WEB工程师培训-JDBC+Servlet+JSP整合开发之14.Servlet请求头信息
–典型的请求头信息 –读取HTTP请求头 –使用表格显示所有请求头信息 –理解各种请求头的含义 –区分不同的浏览器类型 ##############Michael分割线################ ...
- JDBC+Servlet+JSP整合开发之29-JSP表达式语言(EL)
–EL 简介 –EL的应用场合 –EL 的基本语法 –EL中的算术运算符 –EL中的关系运算符 –EL中的逻辑运算符 ------------------------------START- ...
- JDBC+Servlet+JSP整合开发之30-JDBC、Servlet、JSP的MVC
–Servlet 的优势与弊端 –JSP 的优势与弊端 –MVC 设计模式 –实例 ?使用MVC实现学生信息的添加.显示 -----------------------------START----- ...
- Java EE WEB工程师培训-JDBC+Servlet+JSP整合开发之10.Web_工程结构
–简介 –Web应用程序的思想 –Web应用程序的目的 –Web工程结构 –web.xml 文件 –实例 • 创建一个简单的web应用程序 • 部署到tomcat中来运行 ############## ...
- Java EE WEB工程师培训-JDBC+Servlet+JSP整合开发之13.Form表单处理(1)
–Form 表单简介 –创建并提交表单 –使用Servlet处理表单 • 读取单个请求参数 • 读取多个表单 • 读取所有参数名称 –实例 • 注册会员 ###############Michael分 ...
- Java EE WEB工程师培训-JDBC+Servlet+JSP整合开发之12.Servlet基础(2)
–提交表单的方法 • get • post –Servlet 生命周期 –使用Servlet 输出HTML页面 –获得Servlet初始化参数 –页面导航 • 请求重定向 –response.send ...
- Java EE WEB工程师培训-JDBC+Servlet+JSP整合开发之06.JDBC PreparedStatement
–PreparedStatement –为占位符"?"赋值 –使用PreparedStatement动态执行SQL语句 ####################Michael分割线 ...
最新文章
- JsonObject json字符串转换成JSonObject对象
- 阿里秋招面试全解析(含内推岗)
- 【linux】tc命令使用总结
- 个人的关于c++运算符重载的总结
- IDEA 部署项目的时候出错:Jar not loaded错误
- QT的QNdefRecord类的使用
- RabbitMQ之监控(1)
- “去除更多的鲜艳色彩和动态效果的搭配,精简用户使用步长,让软件更像是一件工具。(不排除以后更先进的吸引眼球的方式)“。
- 第七十一期:管理 | 技术Leader:选OKR还是KPI?
- html实现牌匾效果,4款店面牌匾设计效果图 店铺门头亚克力牌匾样式制作设计图...
- 2.卷1(套接字联网API)---传输层:TCP,UDP 和 SCTP
- 〖Python 数据库开发实战 - MySQL篇㉞〗- 综合案例 - 新闻管理系统数据库设计的基本属性
- HTML5+CSS——个人在线简历
- 推挽电源的基本工作原理、磁通不平衡问题及其解决方法
- 如何编写旋转时钟(源代码)
- 企业该如何用短信推广
- 荣耀magic book忘记pin,只能用pin登录,还着急用电脑里的文件
- iOS面试题-(三)
- 【Linux 常用命令】
- probably,possibly,may的用法区别是什么呀
热门文章
- 第一:Postman安装及使用(超详细)
- java第一章_java 第一章
- c++ 输出二进制_Q音直播编译优化与二进制集成方案
- button点击后出现的边框_代码分享:原生js实现,鼠标点击按钮时,多彩粒子散射特效。...
- android studio service directory path,Android Studio User目录缓存搬移到指定目录
- 计算机算法知识点总结,2021计算机考研知识点总结(1)
- linux ll以编码格式_在Linux中文件的编码及对文件进行编码转换
- Windows10 热点(WIFI)配置教程
- 使用Oracle SQL Developer 编写运行 PL/SQL 块
- docker容器内存和CPU使用限制