1、实验3JSP基础实验3 JSP基础一、实验目的1掌握JDK的安装配置2熟悉Tomcat的配置3掌握JSP的运行环境测试4掌握JSP的页面的基本结构5. 掌握JSP的指令标识和动作标识二、实验要求1实验之前,下载最新版本的JDK和Tomcat,并在微机上安装配置。安装配置参考教材和讲课内容。2要求在D盘根目录下建立文件夹名为:test+学号,在Tomcat中设置该文件夹作为JSP的Web服务目录。除特别说明外,此后实验中涉及的JSP页面均保存在该目录下。3本次实验分为3个任务:根据实验任务1任务3要求,编写网页程序,并调试运行。 4. 实验完成后撰写实验报告,实验报告需放上网页测试的数据及网页测
2、试结果的截图,网页截图中必须包含地址。将网页代码和实验报告电子版压缩到文件:学号+姓名+实验次数,发送到教师的邮箱:三、实验内容任务1 JSP页面的基本结构1实验目的本实验的目的是让学生掌握怎样在JSP页面中使用成员变量,怎样使用Java程序、Java表达式。2实验要求编写两个JSP页面,分别为和。(1)的具体要求该页面有一个表单,用户通过该表单输入自己的姓名并提交给页面。(2)的具体要求¥该页面有名字为person、类型是StringBuffer的成员变量以及名字是count、类型为int的成员变量。该页面有public void judge ()方法。该方法负责创建person对象,当co
3、unt的值是0时,judge ()方法创建person对象。该页面有public void addPerson(String p)方法,该方法将参数p指定的字符串添加到成员变量person末尾,同时将count作自增运算。该页面在程序片中获取页面提交的姓名,然后调用judge()创建person对象、调用addPerson方法将用户的姓名添加到成员变量person末尾。如果页面没有提交姓名,或姓名含有的字符个数大于10,就使用标记将用户转到页面。通过Java表达式输出person和count的值。3 JSP页面效果示例(效果如图3-1所示)图3-1 输入姓名|(效果如图3-2所示)图3-2 显
4、示姓名和人数4参考代码代码仅供参考,学生可按照实验要求,参考本代码编写代码。JSP页面参考代码 请输入姓名: %! int count; StringBuffer person; public void judge() if(count=0) person=new StringBuffer(); public void addPerson(String p)# if(count=0) (p); else (,+p); count+; 10) % 目前共有人浏览了该页面,他们的名字是: 任务2 JSP指令标记1实验目的本实验的目的是让学生掌握怎样在JSP页面中使用page指令设置contentT
5、ype的值;使用include指令在JSP页面中静态插入一个文件的内容。2实验要求?编写三个JSP 页面: 、和。另外,要求用“记事本”编写一个TXT文件,该txt的名称为:学生自己姓名的拼音全称,如: 。的每行有若干个英文单词,单词之间用空格分隔,每行之间用“”分隔,如下所示:package apple void back publicprivate throw class hello welcome(1)的具体要求使用page指令设置contentType属性的值是text/plain,使用include指令静态插入文件。(2)的具体要求使用page指令设置contentType属性的值是
6、application/,使用include指令静态插入文件。(3)的具体要求使用page指令设置contentType属性的值是application/msword,使用include指令静态插入文件。3 JSP页面效果示例(效果如图3-3所示)图3-3 contentType的值是text/plain(效果如图3-4所示)图3-4 contentType的值是application/(效果如图3-5所示)图3-5 contentType的值是application/msword4参考代码代码仅供参考,学生可按照实验要求,参考本代码编写代码。JSP页面参考代码 任务3 JSP动作标记1实验目
7、的本实验的目的是让学生掌握怎样在JSP页面中使用include标记动态加载文件;使用forward实现页面的转向。2实验要求编写四个JSP 页面: 、和。 、和页面都含有一个导航条,以便让用户方便地单击超链接访问这三个页面,要求这三个页面通过使用include动作标记动态加载导航条文件,该文件文件名为:head+学号后3位,如 。导航条文件的内容如下所示: ) 页面 页面 页面 (1)的具体要求要求页面有一个表单,用户使用该表单可以输入一个1100之间的整数,并提交给该页面;如果输入的整数在50100之间(不包括50)就转向,如果在150之间就转向;如果输入不符合要求就转向。要求forward
8、标记在实现页面转向时,使用param子标记将整数传递到转向的或页面,将有关输入错误传递到转向的页面。(2)、和的具体要求要求和能输出传递过来的值,并显示一幅图像,该图像的宽和高刚好是页面传递过来的值。页面能显示有关的错误信息和一幅图像。3 JSP页面效果示例(效果如图3-6所示)图3-6 使用include动作标记加载导航条(效果如图3-7所示)图3-7 得到param子标记传递来的值(效果如图3-8所示)图3-8 得到param子标记传递来的值(效果如图3-9所示)图3-9 显示错误信息4参考代码代码仅供参考,学生可按照实验要求,参考本代码编写代码。JSP页面参考代码 . 请输入1至100之
9、间的整数: =1&n jsp:param name=number value= / 50&n jsp:param name=number value= / jsp:param name=mess value= / ; ? This is . % String s=(number); (传递过来的值是+s); % img src= width= height= : This is . % String s=(number); (传递过来的值是+s); % img src= width= height= This is . % String s=(mess); (传递过来的错误信息+s); % 实
10、验总结:相关知识点1JSP页面的基本结构一个JSP页面可由普通的HTML标记、JSP标记、成员变量和方法的声明、Java 程序片以及Java表达式组成。JSP引擎把JSP页面中的HTML标记交给用户的浏览器执行显示;JSP引擎负责处理JSP标记、变量和方法声明;JSP引擎负责运行Java程序片、计算Java 表达式,并将需要显示的结果发送给用户的浏览器。JSP页面中的成员变量是被所有用户共享的变量。Java 程序片可以操作成员变量,任何一个用户对JSP页面成员变量操作的结果,都会影响到其他用户。如果多个用户访问一个JSP页面,那么该页面中的Java程序片就会被执行多次,分别运行在不同的线程中,
11、即运行在不同的时间片内。运行在不同线程中的Java程序片的局部变量互不干扰,即一个用户改变Java程序片中的局部变量的值不会影响其他用户的Java程序片中的局部变量。2JSP指令标记page 指令用来定义整个JSP页面的一些属性和这些属性的值。比较常用的两个属性是contentType和import。page指令只能为contentType指定一个值,但可以为import属性指定多个值。include指令标记的作用是在JSP页面出现该指令的位置处,静态插入一个文件。被插入的文件必须是可访问和可使用的,如果该文件和当前JSP页面在同一Web服务目录中,那么“文件的URL”就是文件的名字;如果该文
12、件在JSP页面所在的Web服务目录的一个子目录中,比如fileDir子目录中,那么“文件的URL”就是“fileDir/文件的名字”。include指令标记在编译阶段就处理所需要的文件,被处理的文件在逻辑和语法上依赖于当前JSP页面,其优点是页面的执行速度快。3JSP动作标记include 动作标记是在JSP页面运行时才处理加载的文件,被加载的文件在逻辑和语法上独立于当前JSP页面。include 动作标记可以使用param子标记向被加载的JSP文件传递信息。forward动作标记的作用是:从该指令处停止当前页面的继续执行,而转向执行page属性指定的JSP页面。forward标记可以使用param动作标记作为子标记,以便向要转向的JSP页面传送信息。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1