兰州工业学院jsp实验答案 - 图文

更新时间:2023-03-11 13:37:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

软 件 工 程 系

《JSP应用技术》

实验指导书

专业班级: 软件11-1、2 指导教师: 朱亚玲

1

实验一 JSP开发环境的搭建

一、 实验目的

1. 熟练掌握Tomcat服务器的安装与配置,为后续实验做好准备工作; 2. 掌握Web服务目录的设置;

3. 熟练掌握Web服务目录下JSP页面的访问; 4. 掌握Tomcat服务器端口号的修改。

二、 实验环境与地点

PC机一台:JDK6.0+Tomcat6.0+编辑器

三、 实验内容与步骤

1.Tomcat服务器的安装与配置;

(1) 下载jdk6.0进行安装,同时配置系统变量PATH与CLASSPATH。 (2) 下载Tomcat6.0,将其安装到硬盘的某个分区,如D:\\。

2.Web服务目录的设置;

(1) 在D:\\下新建一个目录,名称为student,将student目录设置为Web服务目录,并为该Web

服务目录指定名字为friend的虚拟目录。打开Tomcat目录中conf文件夹里的 文件,找到出现的部分。然后在的前面加入:

3.JSP页面的访问;

(1) 使用“记事本”编写一个简单的JSP页面,文件名用自己的姓名拼音命名(如张三:

zhangSan.jsp),文件名是 ,并保存到Web服务目录student中。

(2) 打开上一步建立的JSP页面进行编辑,使其页面运行起来时显示你的专业、班级、学号,姓

名。

(3) 在浏览器的地址栏中输入Tomcat服务器的IP地址和端口号,并通过虚拟目录friend访问

Web服务目录student中第2步编辑后的JSP页面,访问路径是: 。 (4) 画出第3步JSP页面的运行效果图。

四、 实验总结与分析 1. 2. 3.

2

实验二 JSP语法的练习

一、 实验目的

1. 2. 3. 4.

初步了解JSP的运行; 掌握JSP的语法规则;

能编写简单的JSP应用程序;

熟练掌握成员变量、Java程序片和表达式在JSP中的应用;

二、 实验环境与地点:

PC机一台:JDK6.0+Tomcat6.0+编辑器

三、 实验内容与步骤:

在webapps目录下新建一个Web服务目录:chapter2。将以下编写的JSP页面保存到chapter2中。 1. 编写JSP程序sum.jsp,该页面输出1到100的连续和。写出sum.jsp页面中输出1到100的连续和的程序片段

<% int sum=0;

for(int i=1;i<=100;i++){

sum=sum+i;

}

out.println(\ %>

2. 完成课本23页习题2的第5题。 (1) 写出a.jsp文件的代码。 (2) 画出运行结果。 (3) <%@ page

contentType=\%>

(4)

size=3>

(5)

(9)

3

3. 将给定的DispDate.java源文件“改造”成jsp文件,在IE浏览器中运行,要求输出结果如右图所示。写出改造的jsp文件的代码。

四、 实验总结与分析

4

回答课本23页习题2的第1题,第2题。

1.“<%!”和“%>”之间声明的变量与“<%”和“%>”之间声明的变量有何不同? 答:“<%!”和“%>”之间声明的变量在整个JSP页面内都有效,称为JSP页面的成员变量,成员变量的有效范围与标记符号<%!、%>所在的位置无关。所有用户共享JSP页面的成员变量,因此任何一个用户对JSP页面成员变量操作的结果,都会影响到其他用户。

“<%”和“%>”之间声明的变量称为局部变量,局部变量在JSP页面后继的所有程序片以及表达式部分内都有效。运行在不同线程中的Java程序片的局部变量互不干扰,即一个用户改变Java程序片中的局部变量的值不会影响其他用户的Java程序片中的局部变量。当一个线程将Java程序片执行完毕,运行在该线程中的Java程序片的局部变量释放所占的内存。

2.如果有两个用户访问一个JSP页面,该页面中的Java程序片将被执行几次? 答:两次。

DispDate.java import java.util.*;

public class DispDate { public String getTime(String str) { StringTokenizer cat = new StringTokenizer(str, \ String temp = null; int num = 0; while (cat.hasMoreTokens() && num++ < 4) { temp = cat.nextToken(); } return temp; } public static void main(String[] args) { DispDate ob = new DispDate(); Date dt = new Date(); String str = dt.toString(); System.out.println(); System.out.println(\对象对应的日期为:\ System.out.println(); String thisTime = ob.getTime(str); System.out.println(\当前时间为:\ } }

5

实验三JSP标记的使用

一、 实验目的

1. 掌握在JSP页面中使用page指令和include指令; 2. 掌握在JSP页面中使用include、forward动作标记;

二、 实验环境与地点:

PC机一台:JDK6.0+Tomcat6.0+编辑器

三、 实验内容与步骤:

在webapps目录下新建一个Web服务目录:chapter3。将以下编写的JSP页面保存到chapter3中。 1. 编写includeHello.jsp文件,该文件欲设置contentType属性的值是“text/plain”的代码 <%@ page contentType=\ ,使用include指令静态插入hello.txt文件的代码 <%@ include file=”hello.txt”> 。

2. 编写两个jsp页面:第一个动态调用第二个页面计算梯形的面积,同时提供梯形的参数;第二个页面能显示传递过来的参数,同时计算面积并显示结果。 (1) 写出两个jsp文件的代码。 (2) 画出运行结果。

<%@ page contentType=\ <%

double a=2, b=3, h=4; %>


加载ladder.jsp计算上底.下底和高分别为<%=a%>,<%=b%>,<%=h%>的梯形面积:

<%@ page contentType=\<%! public String getArea(double a,double b,double h) {

double area=(a+b)*h/2.0; return \ } %>

<% String sideA=request.getParameter(\ String sideB=request.getParameter(\ String sideH=request.getParameter(\ double a=Double.parseDouble(sideA); double b=Double.parseDouble(sideB);

6

double h=Double.parseDouble(sideH); %>

我是被加载的文件,负责计算梯形的面积

给我传递的上底. 下底和高分别是:<%=sideA%>,<%=sideB%>,<%=sideH%>
梯形的面积:<%= getArea(a,b,h)%>

四、 实验总结与分析

回答课本39页习题3的第1题,第2题,第3题,第4题。

7

课后实验 Tag文件与Tag指令

一、 实验目的

1. 2. 3. 4. 5. 6.

掌握Tag文件的的语法规则;

熟练掌握Tag文件中如何使用标记体; 掌握Tag文件中的常用指令; 会编写Tag文件;

掌握JSP文件如何调用Tag文件;

了解JSP文件与Tag文件数据的传递。

二、 实验环境与地点:

PC机一台:JDK6.0+Tomcat6.0+编辑器

三、 实验内容与步骤:

在webapps目录下新建一个Web服务目录:chapter3。将以下编写的JSP页面保存到chapter3中。 1. 编写Tag文件date.tag,要求在该文件中完成当前日期的显示。写出date.tag文件的程序代码: 2. 编写Tag文件jiecheng.tag,要求在该文件中完成n!的计算及显示,n从JSP页面传入。写出

jiecheng.tag文件的程序代码:

3. 编写Tag文件circle.tag,要求在该文件通过JSP页面传入的半径r计算并显示圆周长和圆面

积。写出circle.tag文件的所有程序代码:

四、 实验总结与分析

1. 用户可以使用浏览器直接访问一个Tag文件吗?为什么? 2. Tag文件应该存放在怎样的目录?

8

实验四 利用request和response对象进行设计

一、 实验目的

1. 2. 3. 4.

理解内置对象的概念;

熟练掌握request对象如何获取客户端信息;

熟练掌握response对象的动态响应功能和重定向功能; 熟练编写简单的JSP实用程序。

二、 实验环境与地点:

PC机一台:JDK6.0+Tomcat6.0+编辑器

三、 实验内容与步骤:

在webapps目录下新建一个Web服务目录:chapter4。将以下编写的JSP页面保存到chapter4中。 1. 编写一个简单的用户注册页面register.jsp,页面中包括用户名、密码、年龄、性别、爱好等信息。 要求:

(1) 密码不能少于6位,年龄必须在10到100岁之间,性别采用单选按钮实现,爱好采用复选

框实现;

(2) 在result.jsp页面获取输入的信息,若有信息不符合条件,response对象将用户重新定向到

注册页面使其重新输入信息;若符合条件,则将信息显示出来。

register.jsp

<%@ page contentType=\

用户注册

result.jsp

<%@ page contentType=\

用户注册

10

<%

String username=request.getParameter(\ String pwd=request.getParameter(\ String confirmpwd=request.getParameter(\ String age = request.getParameter(\ String sex = request.getParameter(\ String[] love=request.getParameterValues(\ byte[] b = sex.getBytes(\ sex = new String(b); for(int k=0;k

int iage = 10; if (age!=null)

iage = Integer.parseInt(age);

if (!(pwd.equals(confirmpwd)) || pwd.length()<6 || age==null || iage<10 || iage>100) response.sendRedirect(\ else{ %>

11

<%}%>

(3) 完成以下任务:

① 画出register.jsp页面的运行效果图。

② 给出result.jsp页面中获取register.jsp页面提交的用户信息的代码。 ③ 如果register.jsp表单提交的信息中有汉字,result.jsp页面应怎样处理? ④ 给出result.jsp页面中判断用户信息是否符合条件并作出相应处理的代码。

2. 制作如下图所示的JSP程序inputNumber.jsp。

要求:

(1) select下拉列表中有加、减、乘、除四个选项;

(2) 用户点击“提交”按钮后提交到inputNumber.jsp页面完成数据的处理,并将结果显示在

JSP页面。

(3) 写出inputNumber.jsp的代码。

<%@ page contentType=\

四、 实验总结与分析 1. 2.

13

实验五 利用session和application对象进行设计

一、 实验目的

1. 理解session对象的会话功能;

2. 理解application对象的应用程序级变量;

3. 能够掌握出session和application二者的区别;

4. 熟练掌握session对象如何存储与用户有关的数据;

5. 熟练掌握application对象如何存储与web服务有关的数据。

二、 实验环境与地点:

PC机一台:JDK6.0+Tomcat6.0+编辑器

三、 实验内容与步骤:

在webapps目录下新建一个Web服务目录:chapter4。将以下编写的JSP页面保存到chapter4中。 1.参考教材例4-8编写一个简单的购物车程序。

(1) 画出购物车的运行效果图。 (2) 给出购物车的关键代码。

2.使用application对象制作一个网站计数器。

(3) 画出网站计数器的运行效果图。 (4) 给出网站计数器的关键代码。

四、 实验总结与分析

1.一个用户在不同Web服务目录中的session对象相同吗?一个用户在同一Web服务目录的不同子目录中的session对象相同吗?为什么?

2. 所有用户在同一Web服务目录中的application对象相同吗?用户在不同Web服务目录中的application对象相同吗?为什么?

3. 若用户长时间不关闭浏览器,用户的session对象可能消失吗?application对象可能消失吗?用户关闭浏览器后,用户的session对象一定消失吗?application对象可能存在吗?为什么?

14

实验六 Javabean的设计和使用

一、 实验目的

1. 熟悉JavaBean的生命周期;

2. 掌握JavaBean的定义、调用、存储和运行方法;

3. 熟练掌握userBean动作标记及设置/读取其属性的方法。 4. 掌握两层模式JSP+JavaBean的开发。

二、 实验环境与地点:

PC机一台:JDK6.0+Tomcat6.0+MySQL5.1+Navicator8+编辑器

三、 实验内容与步骤:

在webapps目录下新建一个Web服务目录:chapter5。将以下编写的JSP页面保存到chapter5中。 1.参考教材三角形bean制作并完成圆形bean。JSP页面通过表单输入圆半径并提交给该页面,表单提交后,JSP页面将计算圆面积和周长的任务交给一个bean去完成。 (1)写出bean的代码。

(2)写出JSP页面中调用bean的代码。 (3)画出运行效果图。

2. 参考教材四则运算bean制作完成关系运算bean。JSP页面通过表单输入两个数和关系运算符号(>,>=,<,<=,= =,!=)提交给该页面,表单提交后,JSP页面将计算任务交给一个bean去完成。

(1)写出bean的代码。

(2)写出JSP页面中调用bean的代码。 (3)画出运行效果图。

<%@page contentType=\

<%@page import=\

15

四、 实验总结与分析 1. 2.

16

课后实验 JSP中的文件操作

一、 实验目的

1. 理解目录及文件列表的读取方法; 2. 掌握在JSP中读写文件的方法。

二、 实验环境与地点:

PC机一台:JDK6.0+Tomcat6.0+编辑器

三、 实验内容与步骤:

在webapps目录下新建一个Web服务目录:chapter6。将以下编写的JSP页面保存到chapter6中。 1. 参考教材96页例2编写一个JSP文件,列出该Web服务目录下的所有子目录和文件。写出JSP关键代码,并画出JSP页面的运行效果图。

2. 编写JSP文件下载data.txt。写出JSP关键代码,并画出JSP页面的运行效果图。

3. 编写JSP文件上传若干word文件。写出JSP关键代码,并画出JSP页面的运行效果图。 4. 调试教材107页标准化考试系统,画出运行结果。

四、 实验总结与分析 1. 2.

17

实验七 JSP中数据库的查询

一、 实验目的

1. 掌握JDBC的方式连接MySQL数据库;

2. 熟练掌握在JSP编程中实现数据库数据查询的方法;

二、 实验环境与地点:

PC机一台:JDK6.0+Tomcat6.0+MySQL5.1+Navicator8+编辑器

三、 实验内容与步骤:

在webapps目录下新建一个Web服务目录:chapter7。将以下编写的JSP页面保存到chapter7中。 1. 设计一个学生成绩数据库StuDB,建立数据库表student,并输入数据如下图所示。写出表结构。

2.数据库的连接:

(1)若采用JDBC-ODBC桥接器方式连接数据库,请写出需要经过的3个步骤:

① 创建 (假设数据源名称是stuDsn,访问用户名和命名均为teacher);

② 应用程序建立JDBC-ODBC桥接器的代码是: ③ 根据第①步建立的数据源stuDsn,与其指定的数据库建立连接,代码是: (2)若采用纯Java数据库驱动程序连接MySQL数据库,请写出需要经过的3个步骤:

① 将数据库驱动程序拷贝到特定位置,即首先将mysql-connector-java-5.1.7-bin.jar拷贝到目录

② 应用程序加载MySQL驱动程序的代码是: ③ 与第1步的数据库StuDB建立连接的代码是(假设访问用户名和命名均为teacher): 3.编写JSP程序实现对数据库的查询:

(1)编写JSP程序selectShunxu.jsp实现对student表的顺序查询,并显示表中所有信息。

① SQL语句是:

② 创建向数据库提交SQL语句的对象的代码是: ③ 执行SQL语句的代码是: ④ 显示查询结果的记录集的代码是: ⑤ 关闭数据库连接的代码是: (2)编写JSP程序selectTiaojian.jsp实现条件查询,根据JSP页面上文本框输入的姓名进行查询并显示。

① SQL语句是: ② 画出运行结果。

(3)编写JSP程序selectMohu.jsp实现模糊查询,将姓名以“林”打头的记录查询并显示。

① SQL语句是: ② 画出运行结果。

(4)编写JSP程序selectPaiXu.jsp实现排序查询,将查询结果以年龄升序排序后显示。

① SQL语句是: ② 画出运行结果。

四、 实验总结与分析

18

实验八 JSP中数据库的录入和维护

一、 实验目的

1. 掌握JDBC的方式连接MySQL数据库;

2. 熟练掌握在JSP编程中实现数据库数据录入和维护的方法;

二、 实验环境与地点:

PC机一台:JDK6.0+Tomcat6.0+MySQL5.1+Navicator8+编辑器

三、 实验内容与步骤:

在webapps目录下新建一个Web服务目录:chapter7。将以下编写的JSP页面保存到chapter7中。 1. 设计一个学生成绩数据库StuDB,建立数据库表student,表结构如下。

2. 编写JSP程序实现对数据库的录入和维护:

(1) 编写DBUtil.java文件,功能是连接学生成绩数据库。写出该文件的代码。

(2) 编写JSP程序addStu.jsp调用DBUtil.java连接数据库并添加一条学生成绩信息。写出关键代码。画出运行效果图。

(3) 编写JSP程序updateStu.jsp调用DBUtil.java连接数据库修改一条学生成绩信息。写出关键代码。画出运行效果图。

(4) 编写JSP程序deleteStu.jsp调用DBUtil.java连接数据库并删除某个学号的学生成绩信息。写出关键代码。

四、 实验总结与分析 1. 2.

19

实验九 servlet的设计和使用

一、 实验目的

1. 2. 3. 4.

熟悉JSP中调用Servlet的方法;

掌握Servlet的定义、部署和运行方法; 掌握web.xml文件的定义方法。

掌握三层模式JSP+Servlet+JavaBean的开发。

二、 实验环境与地点:

PC机一台:JDK6.0+Tomcat6.0+MySQL5.1+Navicator8+编辑器

三、 实验内容与步骤:

在webapps目录下新建一个Web服务目录:chapter8。将以下编写的JSP页面保存到chapter8中。 1. 编写一个Servlet文件,功能是在浏览器中显示你的专业,班级,学号,姓名,性别,年龄等个

人信息。要求:

(1)写出Servlet文件的源代码。

(2)对该Servlet在web.xml中进行部署,写出部署的内容。 (3)写出浏览器直接访问该servlet对象的路径。 (4)画出运行结果。

2. 使用jsp+servlet模式完成矩形面积和周长的计算和显示。首先由JSP通过表单将矩形的长和宽

提交给Servlet,Servlet获取长和宽后计算面积和周长,交给JSP页面显示。要求: (1)写出Servlet文件的源代码。

(2)对该Servlet在web.xml中进行部署,写出部署的内容。

3. 编写Servlet,功能是显示英文大写字母表和英文小写字母表。要求:

(1)写出Servlet文件的源代码。

(2)对该Servlet在web.xml中进行部署,写出部署的内容。 (3)写出浏览器直接访问该servlet对象的路径。

四、 实验总结与分析

1.Servlet对象是在服务器端还是在客户端被创建? 2.Servlet对象创建后,首先调用哪个方法?

20

课后实验 MVC设计

一、 实验目的

1. 理解MVC的模型结构;

2. 掌握JSP、JavaBean和Servlet的逻辑关系并熟练掌握; 3. 掌握基于MVC模式的Web程序的编译、部署和运行方法。

二、 实验环境与地点:

PC机一台:JDK6.0+Tomcat6.0+MySQL5.1+Navicator8+编辑器

三、 实验内容与步骤:

在webapps目录下新建一个Web服务目录:chapter9。将以下编写的JSP页面保存到chapter9中。 1. 采用jsp+servlet+javabean模式完成用户登录功能。写出表结构,相关代码,并画出运行结果。 提示:第一步,建立一个简单的数据库及用户表。 第二步,建立Web工程。

第三步,编写jsp文件:login.jsp。

第四步,编写javabean文件:DBConn.java,User.java,UserDao.java。 第五步,编写servlet文件:LoginServelt.java。 第六步,运行调试。

要求:

(1)登录时若成功登录则在session中保存登录用户的用户名并显示“***登录成功!”(***代表登录用户的用户名),若登录失败则重定向到login.jsp。

(2)写出Servlet文件的源代码。

(3)写出Servlet在web.xml中进行部署的内容。

(4)下图是MVC实现原理图,读图在方框内根据JSP+JavaBean+Servlet三层模式的开发写出登录模块的具体的文件名,得到该模块的MVC图示后,理解MVC设计原理。

视图:由一个或多个JSP页面构成控制器:由一个或多个servlet构成数据:数据库或文件模型:由一个或多个avabean构成

四、 实验总结与分析

思考并回答以下问题:

1.如果Servlet类不重写service方法,那么应当重写哪两个方法? 2. Servlet对象怎样获得用户的session对象?

3. 在JSP中,MVC模式中的模型角色、控制器角色、视图角色分别由谁来承担?

21

课后实验 MVC设计

一、 实验目的

1. 理解MVC的模型结构;

2. 掌握JSP、JavaBean和Servlet的逻辑关系并熟练掌握; 3. 掌握基于MVC模式的Web程序的编译、部署和运行方法。

二、 实验环境与地点:

PC机一台:JDK6.0+Tomcat6.0+MySQL5.1+Navicator8+编辑器

三、 实验内容与步骤:

在webapps目录下新建一个Web服务目录:chapter9。将以下编写的JSP页面保存到chapter9中。 1. 采用jsp+servlet+javabean模式完成用户登录功能。写出表结构,相关代码,并画出运行结果。 提示:第一步,建立一个简单的数据库及用户表。 第二步,建立Web工程。

第三步,编写jsp文件:login.jsp。

第四步,编写javabean文件:DBConn.java,User.java,UserDao.java。 第五步,编写servlet文件:LoginServelt.java。 第六步,运行调试。

要求:

(1)登录时若成功登录则在session中保存登录用户的用户名并显示“***登录成功!”(***代表登录用户的用户名),若登录失败则重定向到login.jsp。

(2)写出Servlet文件的源代码。

(3)写出Servlet在web.xml中进行部署的内容。

(4)下图是MVC实现原理图,读图在方框内根据JSP+JavaBean+Servlet三层模式的开发写出登录模块的具体的文件名,得到该模块的MVC图示后,理解MVC设计原理。

视图:由一个或多个JSP页面构成控制器:由一个或多个servlet构成数据:数据库或文件模型:由一个或多个avabean构成

四、 实验总结与分析

思考并回答以下问题:

1.如果Servlet类不重写service方法,那么应当重写哪两个方法? 2. Servlet对象怎样获得用户的session对象?

3. 在JSP中,MVC模式中的模型角色、控制器角色、视图角色分别由谁来承担?

21

本文来源:https://www.bwwdw.com/article/ubww.html

Top