jsp内置对象学习

request对象

request对象主要用于接受客户端通过HTTP协议链接传输到服务器端的数据。
request的方法主要是处理客户端浏览器提交的请求中的各项参数和选项。
部分方法:

object getAttribute(String name) 		//返回name指定的属性值,若没有指定,返回null
Enumeration getAttibuteNames()		//返回所有可用属性名的枚举
String getCharacterEncoding()					//返回字符编码方式
Cookie[] getCOokie()		//返回客户端的cookie对象,结果是一个Cookie数组
String getContentTyoe()		//得到请求体的MIME类型
String[]getParameterValues(String name)		//返回包含参数name的所有的数组
void setAttribute(String key,Object obj)			//设置属性的属性值

getParameter() getParameterValues() getParameterNames()的区别
getParameter() 获取表单中单个name的value值;
getParameterValues() 获取表单中相同name的所有value值;
getParameterNames() 获取表单中所有name的所value值;
通过单选和多选给个示例:
在jsp文件中创建,有多选框和单选框的页面,再在par.jsp中显示;

<form action="par.jsp" method="post">
    爱好:
    <input type="checkbox" name="hobby" value="book">看书
    <input type="checkbox" name="hobby" value="game">打游戏
    <input type="checkbox" name="hobby" value="music">听歌
    <input type="checkbox" name="hobby" value="ball">打球<br>
    <input type="radio" name="sex" value="男" checked>男
    <input type="radio" name="sex" value="女">女<br>
    <select name="address">
        <option value="北京">北京</option>
        <option value="上海">上海</option>
        <option value="广州">广州</option>
    </select><br>
    <input type="submit" value="提交">
</form>

par.jsp

<body>
    <%
        request.setCharacterEncoding("utf-8");
        String hobby[]=request.getParameterValues("hobby");
        if(hobby!=null){
            for (int i=0;i<hobby.length;i++){
                out.println(hobby[i]+"<br>");
            }
        }
        String sex =request.getParameter("sex");
        out.println(sex);
        String address=request.getParameter("address");
        out.println(address);
    %>
    <%=request.getMethod()%><br>
<%=request.getRemoteAddr()%>
<%=request.getLocale().getDisplayCountry()%>
</body>

展示下效果:
在这里插入图片描述
在这里插入图片描述

response

response主要作用是对客户端做出回应
主要方法有:

void addCookie(Cookie cookie)		//添加一个Cookie对象,用来保存客户端用户信息
sendRedirect(java.lang.String location)		//重新定向客户端的请求
sendError(int xc)		//使用指定状态码向客户都安发送错误信息
sendError(int xc,String msg)		//使用指定状态码和描述性信息向客户端发送错误信息

sendRedirect和超链接有点类似

session对象

在用户与服务器连接时,服务器会为每个用户创建一个session对象,用于保存每个用户的状态、
。部分方法:

void setAttribute(String name,Object value)		//将value对象以name名称绑定到会话
object getAttribute(String name)		//从会话session对象中获取name的属性值,如果属性不存在,返回null
void removeAttriute(String name)		//从会话中删除name属性,如果不存在则不执行,也不会出现异常
void invalidate()		//使会话失效,同时删除属性对象 
Boolean isNew()		//检测当前用户是否为新的会话
long getCreationTime()		//返回在会话期间内web容器接受到客户组后发出的请求时间

session对象的Id
客户端首次访问web应用时,容器为其创建一个session对象,服务器会自动为其分配一个唯一的id号,来标识用户的唯一身份

application

当web服务器启动时,web服务器会为每一个web服务目录都创建一个application对象。application你对象相互对立了,和web服务目录对应。当客户在所访问的网站的各个页面之间浏览时,application对象是同一个,直到服务器关闭。

Object getAtttibute(String name)		//返回有name指定的application对象属性的值
void setvttribute(String name,Object object)		//设置属性,指定属性名称和属性值
void removeAttribute(String name)		//根据属性名称删除对应的属性
String getInitParamter()		//根据初始化参数名称,获取初始化参数值

page对象

page对象指当前jsp程序本身对象。

config对象

config对象是在servlet程序初始化时,jsp容器向它传递信息用的。

主要方法:

getServletContent()		//返回一个含有服务器相关信息的ServletContent对象
g
etInitParameterNames()		//可返回一个枚举对象,该对象由Servlet程序初始化所需的所有参数的名称构成
getInitParameter(String name)		//返回servlet程序初始参数的值,参数名为name

pageContext对象

pageContext对象提供对jsp所有对象及命名空间的访问。,可以访问除自身外的8个内置对象。

HttpSession getsession()		//返回session对象
Object getPage()		//返回page对象
		//类推

exception对象

exception对象时一个异常对象,当页面运行发生异常,就会产生这个对象。如果一个·jsp页面要产生此对象就要把isErrorPage改成true,否则无法编译;
主要方法:

String getMessage()		//返回异常描述
String toString()		//返回关于异常的简短描述信息
void printStackTrace()		//显示异常及其栈轨迹
Throwable FillInStack()		//重写异常的执行栈轨迹

示例:
创建一个错误页面

<%@ page contentType="text/html;charset=UTF-8" language="java" errorPage="error.jsp" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
    <% int result=5/0;%>
</body>
</html>

注意添加一个用来指定错误页面error.jsp
error.jsp代码

<%@ page contentType="text/html;charset=UTF-8" language="java" isErrorPage="true" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
异常信息:<%=exception.getMessage()%><br>
异常描述:<%=exception.toString()%>
</body>
</html>

注意:isErrorPAge设置为true
最后浏览器打开
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值