中南民族大学管理学院学生实验报告课程名称:JSP程序设计年级:2010专业:姓名:学号:指导教师:实验地点:管理学院综合实验室学年至学年度第学期第一章JSP简介实验Tomcat服务器的安装与配置一、实验目的本实验的目的是让学生掌握怎样设置Web服务目录、怎样访问Web服务目录下的JSP页面、怎样修改Tomcat服务器的端口号。二、实验要求1、将下载的apache-tomcat-6.0.13.zip解压到硬盘某个分区,比如D。2、在硬盘分区D下新建一个目录,名字为student,见stuent设置为Web服务目录,并为该Web服务目录指定名字为good的虚拟目录。3、修改端口号为5678.在server.xml文件中找到修改端口号的部分,将端口号修改为5678.4、启动Tomcat服务器。5、用文本编辑器编写一个简单的JSP页面biao.jsp,并保存到Web服务目录student中。6、用浏览器访问Web服务目录student中的jsp页面biao.jsp。三、实验内容1、Tomcat安装成功并运行2、编码实现乘法表3.代码四、实验结果biao.jsp页面五、实验结果分析1、默认的端口号为8080,若修改,在conf目录下的server.xml文件中修改端口号。2、设置虚拟目录。在conf目录下的server.xml中/Host前加入:Contextpath=”/**”docBase=”路径”debug=”0”reloadable=”true/”3、Tomcat服务器必须保持启动。第二章JSP页面与JSP标记实验1JSP页面的基本结构一、实验目的本实验的目的是让学生掌握怎样在JSP页面中使用成员变量,怎样使用Java程序片、Java表达式。二、实验要求本实验将用户输入的单词按字典顺序。需要编写两个JSP页面,名字分别为inputWord.jsp和showDictionary.jsp。1、inputWord.jsp的具体要求该页面有一个表单,用户通过将该表单输入若干个单词,并提交给showDictionary.jsp页面。2、showDictionary.jsp的具体要求该页面负责排序单词,并将排序的全部单词显示给用户。(1)该JSP页面有个名字为dictionary、类型是TreeSet成员变量。(2)该JSP页面有publicvoidaddWord(Strings)方法,该方法将参数s指定的字符串添加到成员变量dictionary中。(3)该JSP页面在程序片中操作dictionary,即显示全部的单词。三、实验内容1)inputWord.jsp页面有一个表单,用户通过该表单输入若干个单词,并提交给showDictionary.jsp页面。2)showDictionary.jsp负责排序单词,并将排序的全部单词显示给用户。3)代码四、实验结果inputWord.jsp页面showDictionary.jsp页面五、实验结果分析1、jsp页面由html标记、jsp标记、成员变了和方法的声明、java程序片和java表达式组成。2、jsp页面中的成员变量是被所有用户共享的变量。Java程序片可以操作成员变了,任何一个用户对jsp页面成员变量操作的结果,都会影响到其他用户。实验2JSP指令标记一、实验目的本实验的目的是让学生掌握怎样在JSP页面中使用include指令标记在JSP页面中静态插入一个文件内容。二、实验要求该实验要求使用include指令标记使得每个页面都包含有导航条。在进行实验之前将名字是leader.txt的文件保存到本实验所使用的web服务目录中。实验要求编写3个JSP页面,具体要求如下。first.jsp的具体要求first.jsp使用include指令静态插入leader.txt.second.jsp的具体要求second.jsp使用include指令静态插入leader.txt.third.jsp的具体要求third.jsp使用include指令静态插入leader.txt.三、实验内容leader.txt编写3个JSP页面。1)frist.jsp使用include指令静态插入leader.txt文本文件。2)second.jsp使用include指令静态插入leader.txt文件。3)third.jsp使用include指令静态插入leader.txt。3)代码12.3.4.4)四、实验结果frist.jsp页面second.jsp页面third.jsp页面五、实验结果分析1、include指令标记是在jsp页面出现该指令的位置处,静态的插入一个文件。被插入的文件必须是可访问和可使用的。Include指令标记是在编译阶段就处理所需要的文件,被处理的文件在逻辑和语法上依赖与当前jsp页面,优点是执行速度快。实验3JSP动作标记一、实验目的本实验的目的是让学生掌握怎样在JSP页面中使用include标记动态加载文件,使用forward实现页面的转向。二、实验要求编写3个JSP页面:giveFileName.jsp、readFile.jsp和error.jsp。1、giveFileName.jsp的具体要求要求giveFileName.jsp页面使用include动作标记动态加载readFile.jsp页面,并将一个文件的名字比如ok.txt传递给被加载的readFile.jsp页面。2、readFile.jsp的具体要求要求readFile.jsp负责根据giveFileName.jsp页面传递过来的文件名字进行文件的读取操作,如果该文件不存在就使用Forward动作标记将用户转向error.jsp页面。3、error.jsp的具体要求负责显示错误信息。三、实验内容1)giveFileName.jsp页面使用include动作标记动态加载readFtle.jsp页面,并将一个文件的名字ok.txt传递给被加载的readFtle.jsp页面。2)readFile.jsp页面负责根据giveFileName.jsp页面传递过来的文件名字进行文件的读取操作,如果该文件不存在就使用forward动作标记将用户转向error.jsp。3)error.jsp负责显示错误信息。4)代码四、实验结果giveFileName.jsp页面error.jsp页面五、实验结果分析1、include动作标记是在jsp页面运行时才处理加载的文件,被加载的文件在逻辑和语法上独立与当前jsp页面,include指令标记可以使用param子标记向被加载的jsp文件传递信息。第三章Tag文件与Tag标记实验1JSP页面的基本结构一、实验目的本实验的目的是让学生灵活掌握在Tag标记中使用标记体。二、实验要求编写一个JSP页面giveMess.jsp和一个Tag文件handleMess.tag。JSP页面通过调用Tag文件在表格中的单元格显示文本,该JSP页面通过使用标记体将要显示的文件传递给被调用的Tag文件。三、实验内容1、giveMess.jsp页面使用带标记体的Tag标记来调用Tag文件,其中标记体是一行文本,如下所示:ok:handleMess南非世界杯/ok:handleMess2、handelMess.tag使用jsp:dobody/处理标记体,将标记体给出的文本显示在表格的单元格中。要求表格每行有三个单元,重复显示标记体给出的文本。3、分别写出giveMess.jsp和handelMess.tag的代码。4.代码四、实验结果giveMess.jsp页面五、实验结果分析1、tag文件中可以有html标记符、特殊的指令标记、成员变了和方法、java程序片和java表达式。2、jsp页面使用tag标记动态执行一个tag文件。3、当jsp页面调用一个tag文件时可能希望动态地向该tag文件传递信息,那么就可以使用带有标记体的tag标记来执行一个tag文件。实验2使用attribute指令一、实验目的本实验的目的是让学生灵活掌握在Tag标记中使用attribute指令。二、实验要求编写一个ShowCalendar.tag文件,该Tag文件负责显示日历。编写一个JSP页面giveYearMonth.jsp,该JSP页面使用Tag标记调用ShowCalendar.tag文件,并且向ShowCalendar.tag文件传递年份和月份。三、实验内容1、giveYearMonth.jsp通过tag标记调用ShowCalendar.tag文件,并且向ShowCalendar.tag文件传递年份和月份。2、ShowCalendar.tag文件根据jsp页面传递过来的年份和月份显示日历。该文件能对jsp页面传递过来的数据进行判断,比如,如果jsp页面传递过来的数据不是数值型数据,tag文件负责显示错误信息。4.代码四、实验结果giveYearMonth.jsp页面五、实验结果分析1、一个tag文件中通过使用attribute指令,使得jsp页面在调用tag文件时,可以向该tag文件中的对象传递一个引用。tag文件中使用attribute指令:%@attributename=对象名字required=true|falsetype=对象的类型%实验3使用variable指令一、实验目的本实验的目的是让学生灵活掌握在Tag标记中使用variable指令。二、实验要求编写一个Tag文件GetWord.tag,负责分解出字符串中的全部单词,并将分解出的全部单词返还给调用该Tag文件的JSP页面。编写一个JSP页面giveSoring.jsp,该页面负责向Tag文件传递一个由英文单词构成的字符串,并负责显示Tag文件返回的全部单词。三、实验内容1、giveSoring.jsp通过tag标记调用GetWord.tag,并传递一个由英文单词构成的字符串,显示tag文件返回的全部单词。2、GetWord.tag使用attibute指令得到jsp页面传递过来的字符串,并用vatiable指令返回全部的单词。3.代码四、实验结果giveSoring.jsp页面五、实验结果分析1、Tag文件可以使用variable指令把一个对象返回给调用它的jsp页面Tag文件使用variable指令给出返回的对象的名字、类型和有效范围:%@variablename-given=“对象名字”variable-class=“对象的类型”scope=“有效范围”%第4章JSP内置对象实验1request对象一、实验目的本实验的目的是让学生掌握怎样在JSP中使用内置对象request。二、实验要求通过JSP页面和Tag文件实现数字的四则运算,要求编写两个JSP页面inputNumber.jsp和receiveNumber.jsp及一个Tag文件Computer.tag。receiveNumber.jsp使用内置对象接受inputNumber.jsp提交的数据,然后将计数任务交给Tag文件Computer.tag去完成。三、实验内容1)inputNumber.jsp页面提供一个表单,用户可以通过表单输入两个数、选择四则运算符号,并将输入的两个数和所选择的运算符号提交给receiveNumber.jsp页面。2)receiveNumber.jsp使用内置对象inputNumber.jsp页面提交的数据,然后将计算任务交给Tag文件Computer.tag去完成。3)要求Computer.tag使用attribute指令得到receiveNumber.jsp页面传递过来的书和运算符号,使用variable指令将运算结果返回给receiveNumber.jsp页面。4)代码四、实验结果inputNumber.jsp页面receiveNumber.jsp页面五:实验结果分析1、内置对象request的作用就是用来接收客户端提交的请求2、request对象用的比较多的方法是getParameter方法。request对象的getParameter方法根据指定的参数,获