JSP/Servlet Web 学习笔记 DayThree
JSP内置对象
使用JSP语法可以存取这些内置对象来执行JSP网页的Servlet环境相互作用。内置对象其实是由特定的Java类所产生的。每一种内置对象都映射到一个特定的Java类或者端口,在服务器运行时根据情况自动生成。
下表列出了所有的JSP内置对象:
| 对象名 | 描述 | 作用域 | 分类 |
| appliction | 显示相应网页是有应用程序的对象 | 整个应用程序执行期间 | 作用域通信对象:检索JSP页面的Servlet相关信息 |
| session | 保存个人信息的个人所有对象 | 会话期间 | |
| pageContext | 提供调用其它对象方法的对象 | 页面执行期间 | |
| out | 表示服务器端向客户端打开的output数据流对象 | 页面执行期间 | 输入和输出对象:控制页面的输入输出 |
| request | 包含客户端请求信息的对象 | 用户请求期间 | |
| response | 包含从服务器端发送到客户端的相应内容对象 | 页面执行(响应)期间 | |
| page | 显示当前网页的对象 | 页面执行期间 | Servlet对象:提供有关页面环境的信息 |
| config | JSP页面通过容器初始化接收到的对象 | 页面执行期间 | |
| exception | 发生错误时生成的异常对象 | 页面执行期间 | 错误对象:处理页面中的错误 |
1)作用域通信对象
作用范围:pageContext<session<appliction
a)pageContext对象
提供访问当前页面作用域中定义的所有内置对象,常用方法如下:
/*以名称/值的方式,将一个对象的值存放到pageContext中*/
void setAttribute(String name,Object Value)
/*根据名称去获取pageConetxt中存放对象的值*/
void getAttribute(String name)
b)seesion对象
用于保存和跟踪用户的会话状态,常用方法与pageContext相同。
c)application对象
作用于整个英语程序,所有的客户端窗口都可以共享该对象,从服务器开始就存在,直到服务器关闭,常用方法于pageConext相同。
2)输入输出对象
a)request对象
客户端请求,包含了所有请求信息,常用方法如下:
/*根据页面表单组件名称获取请求页面提交的数据*/
String getParameter(String name);
/*获取页面请求中一个表单组件对应多个用户请求数据(复选框等)*/
String getParameterValues(String name);
/*获取所有客户端到服务器端的参数名*/
Enumeration getParameterNames();
b)response对象
处理JSP生成的响应,然后将响应结果发送给客户端,常用方法如下:
/*设置作为相应生成内容的类型和字符编码*/
void setContentType(String name);
/*发送一个相应给浏览器,指示其应请求另一个url(重定向到另一个url,会丢失数据,跳转后不再执行sendRedirect方法下面的代码)*/
void sendRedirect(String name);
/*返回到客户端的输出流对象*/
getOutputStream();
c)out对象
表示输出流,此输出流将作为请求的相应发送到客户端,常用方法:print()、println()、write()。
out在程序代码中几乎不用,因为JSP表达式会自动地放入输出流中,而无需再明确指向out输出。
3)Servlet对象
a)page对象
提供对网页上定义的所有对象的访问,表示页面本身,相当于Java中的this关键字。
b)config对象
config对象存储Servlet的一些初始信息。config对象表示编译JSP页面的Servlet初始化数据的配置。
4)错误对象exception
处理JSP页面中的错误,只有在错误页面(在页面指令包含isErrorPage="true"的页面)才可以使用。
在出错页面,使用<%=exception.getMessage()%>来获取错误信息。
JSP的异常处理
如果在执行JSP的Java代码时发生异常,可以通过下面的指令将HTTP请求转发给另一个专门处理的网页:
<%@ page errorPage="errorpage.jsp"%>
并且在处理异常的网页中,应该将下面语句:
<%@ page isErrorPage="true"%>也声明进去。
在处理异常的网页中可以直接访问exception隐含对象,获取详细的异常消息。
JSP/Servlet Web 学习笔记 DayThree的更多相关文章
- JSP/Servlet Web 学习笔记 DayThree —— 实现一个登陆小界面
项目说明 利用JSP.HTML.JS实现了一个简易的登陆系统.根据前两天的所学,实现了如下功能: a)用户名.密码验证(不基于数据库,只做一个简单的表单数据获取并验证) b)页面访问次数统计 c)验证 ...
- JSP/Servlet Web 学习笔记 DayOne
JSP概述 1)JSP是一种动态网页技术标准,它是在传统的页面HTML文件中插入Java程序段和JSP标记(tag),从而形成JSP文件(*.jsp),也称JSP页面. 2)JSP容器是一个支持JSP ...
- JSP/Servlet Web 学习笔记 DayFour
Servlet概述 Servelt是使用Java Servlet应用程序接口及相关类和方法的Java程序. Servlet是用Java编写的Server端程序,它与协议和平台无关.Servlet运行于 ...
- JSP/Servlet Web 学习笔记 DayTwo
JSP指令 a)page指令 定义JSP文件中的全局属性.一个JSP页面可以包含多个page指令.除了Import以外,其他page指令定义的属性/值只能出现一次. 其详细语法为: <%page ...
- JSP/Servlet Web 学习笔记 DaySix —— EL表达式
1)EL从scope中得到参数时可以自动转换类型,因此对于类型转换的限制更加宽松. 2)使用EL表达式,可以简化变量和对象的访问. 3)EL表达式必须以 ${XXXX} 来表示. 4)EL提供点(.) ...
- JSP/Servlet Web 学习笔记 DayFive
ServletConfig <只对当前Servlet有效> (1)在Web容器初始化Servlet实例时,都会为这个Servlet准备一个唯一的ServletConfig实例(俗称Serv ...
- [原创]java WEB学习笔记11:HttpServlet(HttpServletRequest HttpServletRsponse) 以及关于 Servlet 小结
本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...
- Java Web学习笔记之---JSP
Java Web学习笔记之---JSP (一)JSP常用语法 (1)HTML注释 <!--所要注释的内容 --> 在客户端显示一个注释. (2)隐藏注释 <%--所要注释的内容--% ...
- java web 学习笔记 编码问题总结
java web 学习笔记 编码问题总结 1.非form表单中提交的中文参数---------------------------传递给Servlet服务器时,默认以iso-8859-1解码 ...
随机推荐
- MongoDB在MFC下使用C++驱动编译错误的解决
.post p{text-indent: 2em;} 今天使用MongoDB的C++驱动,在编译连接的时候一直出现错误,显示的string_data.h下93行max宏的问题,可视其本身并不是调用ma ...
- Linux内存管理 - slab分配器和kmalloc
本文目的在于分析Linux内存管理机制的slab分配器.内核版本为2.6.31.1. SLAB分配器 内核需要经常分配内存,我们在内核中最常用的分配内存的方式就是kmalloc了.前面讲过的伙伴系统只 ...
- 数据库可视化工具简介以及pymysql的使用
1.可视化工具Navicat 我们自己开发测试时,可以使用该可视化工具,以图形界面的形式操作数据库 在生产环境中,为了显示自己的逼格,一般不建议使用它 官网下载:https://www.navicat ...
- 写给iOS小白的MVVM教程(序)
这几天,需要重构下部分代码,这里简要记录下.但是涉及的技术要点还是很多,所以分为多个篇章叙述.此教程来源于,并将于应用于实践,不做过多的概念性阐释和争论.每个篇章都会附上实际的可执行的代码.因涉及的技 ...
- centos6 下查看SELinux状态 关闭SELinux
转载自:https://blog.csdn.net/boomjane_testingblog/article/details/52859977 SELinux(Security-Enhanced Li ...
- Element-ui组件--pagination分页
一般写后台系统都会有很多的列表,有列表就相应的要用到分页,根据项目中写的几个分页写一下我对分页的理解,就当是学习笔记了. 这是Element-ui提供的完整的例子 <template> ...
- scrapy--matplotlib
昨天晚上看了一些关于保存文件的相关资料,早早的睡了,白天根据网上查找的资料,自己再捡起来.弄了一上午就爬取出来了,开心!!!好吧,让我们开始 老规矩,先上图.大家也赶快行动起来 分类文件: 文件内co ...
- anaconda+jupyter notebook 安装配置
安装Anaconda 从清华大学开源软件镜像站选择合适自己的版本 wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda ...
- bash:/usr/bin/mogod/:connot execute binary:exec fotmat error
前两天博主在安装mogodb的时候出现以下错误,很是郁闷,明明按照教程里面做的,怎么到最后 执行命令的时候出错了呢,以下为错误execute binary:exec fotmat error" ...
- [Bzoj1037][ZJOI2008]生日聚会(DP)
Description 题目链接 Solution 这题状态比较难想, \(dp[i][j][g][h]\)表示强i个人有j个男生,在某个区间男生最多比女生多g人,女生最多比男生多h人的方案数,然后D ...