实验三 JSP内置对象

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验三JSP内置对象

一.实验目的

(1)了解JSP中9个内置对象request、reponse、out、session、application、config、

pagecontext、page、exception的基本概念。

(2)理解JSP内置对象的常用方法的功能。

(3)掌握JSP内置对象的应用。

二. 主要仪器设备及环境

(1)PC机

(2)操作系统:WINDOWSXP

(3)软件:记事本, JDK、TOMCAT,IE

三. 实验内容与步骤

1.用JSP的内置对象request在前后台页面间传递表单数据;

用内置对象前后台页面间的参数传递

(1)客户端主界面experiment3_1.jsp,表单封装了三个参数:

<%@ page language="java" import="java.util.*" pageEncoding="GBK"%> <%@ page contentType="text/html;charset=GBK"%>

这是第一个JSP

大家好!恭喜你的第一个JSP

第一个数:

第二个数:

第三个数:

(2)第一个后台响应experiment3_2.jsp,用request对象提取前台传过来的参数,验证输入的数据a、b、c分别是西文、数字、中文:

<%@ page language="java" import="java.util.*" pageEncoding="GBK"%> <%!String s1,s2,s3;%>

<% s1=request.getParameter("a");

s2=request.getParameter("b");

s3=request.getParameter("c");

%>

This is experiment3_2.jsp page

前台传过来的a=<%=s1%>

前台传过来的b=<%=s2%>

前台传过来的c=<%=s3%>

a+b+c=<%=s1+s2+s3%>

返回

思考

●请检查结果都正确吗?尤其注意传输中文字符时是否为乱码?如果出现乱

码,如何修改代码?

可用书上介绍的方法,也可request.setCharacterEncoding("GBK");

答:没有出现乱码,只是experiment3_2.jsp的计算为字符串

●s1+s2+s3是什么运算?

答:字符串运算

(3)第二个响应界面experiment3_3.jsp,用request对象提取前台传过来的参数,进行运算后将其结果显示给客户端:

<%@ page language="java" import="java.util.*" pageEncoding="GBK"%> <%!int x,y,z;%>

<%x=Integer.valueOf(request.getParameter("a")).intValue();

y=Integer.valueOf(request.getParameter("b")).intValue();

z=Integer.valueOf(request.getParameter("c")).intValue();

%>

从Experiment3_1.jsp传过来的参数求得体积:

用request:<%=x*y*z%>

返回

思考

●修改Experiment3_1.jsp什么地方才能响应experiment3_3.jsp?

答:在action那里修改,如下图所示:

●为什么三个数据都用

Integer.valueOf(request.getParameter("a")).intValue();语句处理?

答:因为三个数据都要转换成整数

●请在前台输入含有非数字字符数据,你看到什么结果?为什么?

答:会出现一下图的结果,因为强制转换为数字类型,不能为字符型进行计算。

2.购物车

使用session对象模拟购物车

(1)写一个experiment3_4.jsp文件,用表单输入用户姓名。如下图:

代码:

<%@page language="java"contentType="text/html; charset=GBK"

pageEncoding="GBK"%>

<%

String path = request.getContextPath();

String basePath =

request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort ()+path+"/";

%>

<%session.invalidate();%><%--销毁所有session对象--%>

"/TR/html4/loose.dtd">

用户登录

相关文档
最新文档