实验2-Http请求

来源:网络收集 时间:2025-06-15 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xuecool-com或QQ:370150219 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

实验2 HTTP请求对象

一、实验目的

1. 掌握如何获得请求参数; 2. 掌握如何检索请求头;

3. 了解如何通过请求对象获得客户信息;

4. 重点掌握使用请求对象存储数据和请求转发。

二、实验原理

对客户的请求,容器根据请求调用Servlet的相应doXxx()方法,该方法带有两个参数,一个是HttpServletRequest,一个是HttpServletResponse,它们分别表示请求对象和响应对象,它们是容器自动创建的两个对象。可以使用这两个接口定义的若干方法完成有关操作。

三、实验内容与步骤

(一)通过查询串传递请求参数,并在Servlet中检索请求参数 【步骤1】编写下面的Servlet。 package cn.edu.servlet.request; import java.io.*;

import javax.servlet.*; import javax.servlet.http.*;

public class HelloUserServlet extends HttpServlet{

public void service(HttpServletRequest request,HttpServletResponse response)

throws ServletException, IOException{

String userName = request.getParameter(\PrintWriter pw = response.getWriter(); pw.println(\pw.println(\pw.println(\pw.println(\

pw.println(%userName + \pw.println(\pw.println(\} }

【步骤2】在MyEcipse下查看web.xml文件,关键代码如下:

HelloUserServlet

cn.edu.servlet.request.HelloUserServle

HelloUserServlet /myHelloUserServlet

【步骤3】使用下面的URL访问之。

http://localhost:8080/prac02_request/myHelloUserServlet?userName=tom

效果:

将userName的值改为你自己的名字(不要使用汉字),看输出结果。若不给出查询字符串,结果如何?参数值使用汉字如何?

将userName的值改为自己的名字(不使用汉字)结果如下:

若不给出查询字符串结果如下:

参数值使用汉字结果如下:

从该实验可知尽管未对response对象进行转码操作,但还是可以正确显示中文。 (二)通过表单传递请求参数,使用HttpServletRequest对象获得请求参数

【步骤1】首先编写一个input.html文件,存放在helloapp目录中。该页面在屏幕上显示一个表单,其中包括姓名和年龄域,点击“确定”按钮后,将表单参数传递给ParamServlet并显示出来。

input.html代码如下:

参数传递

从表单向Servlet传递参数

姓名:

【步骤2】编写ParamServlet.java,其代码如下: package cn.edu.servlet.request;

import java.io.*; import java.util.*; import javax.servlet.*; import javax.servlet.http.*;

public class ParamServlet extends HttpServlet {

public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{ response.setCharacterEncoding(\

response.setContentType(\

String name = request.getParameter(\

name = new String(name.getBytes(\String age = request.getParameter(\

PrintWriter pw = response.getWriter(); pw.println(\ pw.println(\ pw.println(\ pw.println(\

pw.println(\姓名:\ pw.println(\年龄:\ pw.println(\ pw.println(\ }

public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{ doGet(request, response); } }

【步骤3】查看web.xml文件,关键代码如下:

ParamServlet

cn.edu.servlet.request.ParamServlet

ParamServlet /myParamServlet

【步骤4】测试参数传递。在浏览器的地址栏中输入:

http://localhost:8080/prac02_request/input.html。输入数据,点击“确定”按钮,体会表单参数的传递。

测试过程如下:

测试结果:

问题1:如何通过超链接的锚标签()传递请求参数?

用get方式提交表单,形式如下

(三)编写一个Servlet,显示所有请求头

【步骤1】ShowHeadersServlet.java的Servlet能够检索所有的请求头,代码如下: package cn.edu.servlet.request; import java.io.*; import java.util.*; import javax.servlet.*; import javax.servlet.http.*;

public class ShowHeadersServlet extends HttpServlet {

百度搜索“70edu”或“70教育网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,70教育网,提供经典综合文库实验2-Http请求在线全文阅读。

本文链接:https://www.70edu.com/wenku/209845.html(转载请注明文章来源)
Copyright © 2020-2025 70教育网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:370150219 邮箱:370150219@qq.com
苏ICP备16052595号-17
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:7 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219