JSP内置对象(1)

授课内容:
1、九大内置对象、方法及功能。

(1)request :

表示客户端对网页的请求,它实现 javax.servlet.http.HttpServletRequest接口,使用 HTTP 协议处理客户端的请求。常用方法:

一、与请求行相关的信息

l 请求的提交方法:request.getMethod()
l 请求的上下文路径:request.getContextPath()
l 客户端向服务器端传送数据的协议名称及版本:request.getProtocol()
l 查询字符串: request.getQueryString()
l 请求行中请求资源的名称: request.getRequestURI()

二、获得网络连接信息

l 客户端IP:request.getRemoteAddr()
l 客户端的名字:request.getRemoteHost()
l 客户端所使用的网络接口的端口号:request.getRemotePort()
l 服务器的名字:request.getServerName()
l 服务器的端口号:request.getServerPort()
l 服务器接收当前请求的网络接口的IP地址:request.getLocalAddr()
l 服务器接收当前请求的网络接口的IP地址对应的主机名:request.getLocalName()
l 服务器接收当前请求的网络接口的端口号:request.getLocalPort()
l 返回请求的协议名:request.getScheme()

三、获取请求头的信息

l 请求的字符编码方式:request.getCharacterEncoding()
l 请求页的长度:request.getContentLength()
l 请求页类型:request.getContentType()
l 输出请求的头信息:
<%
Enumeration e=request.getHeaderNames();
//得到各个头部信息的名称
while(e.hasMoreElements())
{
String str=(String)e.nextElement();
out.print(str+”: “+request.getHeader(str)+”
”);
//根据名称输出头部信息的值
}
%>

四、获取请求参数信息

l 得到请求页的传来的数据:
<%
request.setCharacterEncoding(“utf-8”);
Enumeration e1=request.getParameterNames();
//得到所有参数名称
while(e1.hasMoreElements())
{
String str=(String)e1.nextElement(); //将每个参数名称赋予一个变量
out.print(“名称为”+str+“的属性值为:”+request.getParameter(str)+“
”); //根据参数得到值
}
%>

爱好:

<%
String[] strs=request.getParameterValues(“hobby”); //得到一个数组
for(String str:strs)
{
out.println(str+” “);
}
%>

五、利用请求域属性传递信息

重点:(1)得到客户端传来的数据;(2)在属性内放置变量,进行数据传递

程序功能:文件一表单向JSP文件输入信息,将请求信息及数据显示出来。

程序案例步骤如下:
步骤一、 建立测试表单文件requestTest.html,文件内容为:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
    <title>requestTest.html</title>
  </head>
  <body>
   <form method="post" action="accept.jsp">
<table border="1">
<tr><td>输入姓名:</td>
<td><input type="text" name="name"></td>
</tr>
<tr><td>输入密码:</td>
<td><input type="text" name="password"></td>
</tr>
<tr><td>性 别:</td>
<td><input type="radio" name="sex" value="男"><input type="radio" name="sex" value="女"></td>
</tr>
<tr><td>爱好:</td>
<td><input type="checkbox" name="hobby" value="篮球">篮球
<input type="checkbox" name="hobby" value="排球">排球
<input type="checkbox" name="hobby" value="网球">网球
</td></tr>
<tr><td>来自的国家:</td>
<td><select name="country" >
<option  value="中国">中国</option>
<option  value="美国">美国</option>
<option  value="法国">法国</option>
</select>  </td>
</tr>
<tr align="center" ><td colspan="2" ><input type="submit" value="登录"></td></tr>
</table>
</form>
  </body>
</html>

accept.jsp:

<%
     request.setCharacterEncoding("utf-8");
     Enumeration e1=request.getParameterNames();
     while(e1.hasMoreElements())
     { 
        String str=(String)e1.nextElement();
        out.print("名称为"+str+"的属性值为:"+request.getParameter(str)+"<br/>");
     }
   %><br/>
   爱好:<br/>
   <%
   String[] strs=request.getParameterValues("hobby");
   for(String str:strs)
   {
      out.println(str+" ");
   }
    %><br/>

(2)response:

sendRedirect、setCharacerEncoding

(3)session

setAttribute、getAttribute

(4)pageContext

setAttribute、getAttribute、findAttribute

(5)application

setAttribute、getAttribute、

(6)config、exception、page

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值