2020.09.17

一、request内置对象
request内置对象是最常用的对象之一,它代表的是java.servlet.HttpServletRequest类的对象。request内置对象中包含了有关浏览器请求的信息,并提供了多个用于获取cookie、header以及session内数据的方法。
request常用方法的实例:

<%@ page contentType="text/html;charset=GBK" %>
<html>
<head><title> request 内置对象的实例 </title></head>
<body>
<form aciton="request.jsp">
<br>Get request results:
<br><input type="text" name="myname">
<br><input type="submit" name="get value">
</form>
返回HTTP 请求信息中使用的方法名称:<%=request.getMethod()%>
<br>
返回请求信息中调用Servlet 的URL 部分:<%=request.getServletPath()%>
<br>
返回HTTP GET 请求信息中URL 之后的查询字符串:<%=request.getQueryString()%>
<br>
返回请求实体的MIME 类型:<%=request.getContentType()%>
<br>
返回请求信息中的协议名名字和版本号:<%=request.getProtocol()%>
<br>
有关任何路径信息:<%=request.getPathInfo()%>
<br>
返回接受请求的服务器主机:<%=request.getServerName()%>
<br>
返回服务器的端口号:<%=request.getServerPort()%>
<br>
返回提交请求的客户机的规范名字:<%=request.getRemoteHost()%>
<br>
返回提交请求的客户机的IP地址:<%=request.getRemoteAddr()%>
<br>
返回请求中使用的模式(协议)名字:<%=request.getScheme()%>
<br>
返回这个request值,提交过来的值:<%=request.getParameter("myname")%>
</body>
</html>

在这里插入图片描述
二、response内置对象

response对象与request对象相对应,它是用于响应客户请求,向客户端输出信息。response是javax.servlet.HttpServletResponse类的对象。
页面重定向实例:

<%@ page language="java" contentType="text/html;charSet=GBK" %>
<html>
<body>
<center><h3>response.sendRedirect()使用例子</h3></center>
<form action="index4.jsp">
    <table border=1>
        <tr>
            <td>
                <select name="pg">
                    <option value=0>本页</option>
                    <option value=1>hello页面</option>
                    <option value=2>goodbye页面</option>
                </select>
            </td>
        </tr>
        <tr><td><input type="submit" value="提交"></td></tr>
    </table>
</form>
<%
String pg = request.getParameter("pg"); //获取传递参数pg
if("1".equals(pg)) //如果pg等于1
response.sendRedirect("hello.jsp"); //则页面重定向为hello.jsp
else if("2".equals(pg)) //如果pg等于2
response.sendRedirect("goodbye.jsp"); //则页面重定向为goodbye.jsp
else //否则不进行页面重定向,即还显示本页
out.println("没有进行页面重定向");
%>
</body>
</html>

在这里插入图片描述

三、page内置对象

page对象有点类似于Java编程中的this指针,就是指当前JSP页面本身。page是java.lang.Object类的对象。
page的常用方法实例:

<%@ page language="java" contentType="text/html;charSet=GBK" %>
<%@ page import="java.lang.Object" %>
<html>
    <body>
        <center><h3>Page内置对象的实例</h3></center>
        <%!Object obj; %> <-- 对象申明 -->
        getClass:<%=page.getClass() %>
        <br>hashCode:<%=page.hashCode()%>
        <br>toString:<%=page.toString()%>
        <br>equals:<%=page.equals(obj) %>
        <br>equlas2:<%=page.equals(this) %>
    </body>
</html>

在这里插入图片描述

四、session内置对象

session是与请求有关的会话期,它是java.servlet.http.HttpSession类的对象,用来表示和存储当前页面的请求信息。
问题回答操作实例:

<%@ page contentType="text/html;charSet=GBK" %>
<html>
    <body>
    <center><h3>用户名输入页面</h3></center>
    <!—提交表单 -->
    <form action="session2.jsp">
        <table border="1" align="center">
        <tr><td>用户名:<input type="text" name="username" size="10"></td></tr>
        <tr><td align="center"><input type="submit" value="提交"></td></tr>
        </table>
    </form>
    </body>
</html>

在这里插入图片描述

<%@ page contentType="text/html;charSet=GBK" %>
<html>
<body>
    <center><h3>回答问题页面</h3></center>
<%
    String username = request.getParameter("username"); //获得传递参数username
    session.setAttribute("theusername",username); //把用户名保存在session中,String可以当着对象
%>
    <p>您的用户名为:<%=username%><p>
    <!—提交表单 -->
    <form action="session3.jsp">
        <table border="1" align="center">
            <tr><td>您喜欢吃什么:<input type="text" name="food" size="10"></td></tr>
            <tr><td align="center"><input type="submit" value="提交"></td></tr>
        </table>
    </form>
</body>
</html>

在这里插入图片描述

<%@ page contentType="text/html;charSet=GBK" %>
<html>
<body>
    <center><h3>显示答案</h3></center>
<%! String food="";%>
<%
    food = request.getParameter("food"); //取得food参数值
    String name = (String)session.getValue("theusername"); //从session取出关键字为theusername的对象
%>
    您的用户名:<%=name%>
    <br>您喜欢吃:<%=food%>
</body>
</html>

在这里插入图片描述

五、application内置对象

application是javax.servlet.ServletContext类对象的一个实例,用于实现用户之间的数据共享(多使用于网络聊天系统)。
网站计数器实例:

<%@ page contentType="text/html;charSet=GBK"%>
<html>
<body>
<br>获得用户名:<%=application.getAttribute("name")%>
<br>计数值:
<%
    //将保存在application中的关键字为counter的字符串对象取出,然后强制转化成整数型
    int mycounter = Integer.valueOf(application.getAttribute("counter").toString()).intValue();
    out.println(mycounter);
    //将数值加一,然后用新的值来更新保存再application中的counter对象
    application.setAttribute("counter",Integer.toString(mycounter+1));
%>
</body>
</html>

六、out内置对象

out对象是在JSP开发过程中使用得最为频繁的对象,但使用也是最为简单的。
数据输出实例:

<%@ page buffer=1kb” autoFlush=true” contentType=”text/html;charSet=GBK” %>
<html>
<body>
<% 
    for(int i=0;i<135;i++) //迭代输出
    Out.println(“Hello world,+i+” “);
%>
<br>BufferSize: <%=out.getBufferSize() %>
<br>BufferRemain: <%=out.getRemaining() %>
<br>AutoFlush: <%=out.isAutoFlush() %>
<% out.clearBuffer(); %>
</body>
</html>

七、exception内置对象
exception内置对象是用来处理页面出现的异常错误,它是java.lang.Throwable类的一个对象。

八、config内置对象

config内置对象是ServletConfig类的一个实例。在Servlet初始化的时候,JSP引擎通过config向它传递信息。

九、pageContext内置对象

pageContext对象是一个比较特殊的对象。它相当于页面中所有其他对象功能的最大集成者,即使用它可以访问到本页面中所有其他对象,例如前面已经描述的request、response以及application对象等。
pageContext对象的简单实例:

<body>
<% 
    request.setAttribute(“MyName”,”zzb1”); //把MyName保存在request范围中
    session.setAttribute(“MyName”,”zzb2”); //将MyName再保存再session范围中
    application.setAttribute(“MyName”,”zzb3”); //将MyName保存在application范围中
%>
request: <%=pageContext.getRequest().getAttribute(“MyName”)%>
<br>session: <%=pageContext.getSession().getValue(“MyName”)%>
<br>application: <%=pageContext.getServletContext().getAttribute(“MyName”)%>
</body>
</html>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值