Java web应用编程基础实验报告 实验2:JSP基本语法实验
姓名:_ __ _ ___ 班级:_ _ _ ___ 学号:_ ___ _ 成绩:_ _ _ __
一、实验目的:
熟悉HTML语法,理解和掌握JSP基本语法。 初步掌握JavaScript的使用
初步掌握利用指令、脚本元素和动作元素,进行简单的JSP和HTML混合编程的方法
和技术。
二、实验要求:
理解Web Server,正确使用Apache的Tomcat建立JSP Server。
编写程序完成以下实验内容,通过手工和MyEclipse两种方式分别完成JSP文件的
布署。
上交实验报告电子文档(文档包含源程序,以班级、学号、姓名依次出现组成的
字符串标识文档,以班级为单位上交)。
三、实验内容:
1、采用声明实现访问计数器count.jsp,并在页面中显示:“当前访问本网站的用户数为:**人/次。”
程序:
<%@ page language=\"java\" import=\"java.util.*\" pageEncoding=\"GB2312\"%>
if (application.getAttribute(\"count\") == null) {
application.setAttribute(\"count\ }
Integer count=(Integer)application.getAttribute(\"count\");
application.setAttribute(\"count\
实用大全
标准文档
count=(Integer)application.getAttribute(\"count\"); %>
访问记数结果:
2、编写一个JSP程序,计算整数的阶乘,并显示出结果。要求先声明计算阶乘的方法,再调用该方法,最后在页面上输出结果。(要求:通过表单提交一个正整数,然后计算它的阶乘。其中要对提交的是否为整数作判断,是整数则进行阶乘计算,不是整数则要求重新提交。)
程序: <%@page language=\"java\" import=\"java.util.*\" contentType=\"text/html;charset=gb2312\"%>
long Factorial(int n){ if(n==0){ return 0; } else{ int sum=1; for(int i=1;i<=n;i++) {sum=sum*i;} return sum; } } %> <% //检测输入的数据是否为整数 int num=0; String str=request.getParameter(\"num\"); try{ 实用大全 标准文档 if(str!=null){ num=Integer.parseInt(str); } else{ } } catch(Exception e){ out.println(\"只能输入整数\"); } %> 请输入一个整数: <%=num%>的阶乘是:<%=Factorial(num)%>
输入一个整数6:
实用大全
标准文档
得出计算结果:
输入小数8.1:
实用大全
标准文档
提示只能输入整数:
3、在JSP页面中静态包含文件。要求程序包含两个文件,主文件静态包含一个能够计算数据的算术平方根的页面。
程序:
(quest3-1.jsp) <%@ page language=\"java\" import=\"java.util.*\" contentType=\"text/html;charset=gb2312\"%>
请输入一个正数
<%@include file=\"quest3-2.jsp\"%> //包含页面quest3-2.jsp
(quest3-2.jsp)
实用大全
标准文档
<%@ page language=\"java\" import=\"java.util.*\" contentType=\"text/html;charset=gb2312\"%>
String str=request.getParameter(\"num\"); try{ if(str!=null){ num=Double.parseDouble(str); } else{ } } catch(Exception e){ out.println(\"只能输入数字\"); } %> 请输入一个数字: <%=num%>的平方根是:<%=Math.sqrt(num)%>
实用大全
标准文档
输入正数9.0:
计算得出结果:
4、动态包含页面并传递数据。要求程序包含两个文件,主文件加载次文件,并将随机产生的0 ~ 1之间的数据传递给它,并且在页面上显示出来。之后,再把动态包含改为跳转,比较两者之间的区别。
程序:
(quest4-1.jsp)
<%@ page language=\"java\" contentType=\"text/html;charset=UTF-8\" pageEncoding=\"UTF-8\"%>
<%@page import=\"java.util.Random\"%>
实用大全
标准文档
<% //随机函数
Random rand=new Random(); int type=rand.nextInt(2); %>
(quest4-2.jsp)
<%@ page language=\"java\" contentType=\"text/html;charset=UTF-8\" pageEncoding=\"UTF-8\"%>
<%
if(request.getParameter(\"type\")!=null){
String str=request.getParameter(\"type\"); int num=Integer.parseInt(str); %>
<%=num%>
<%
}else{} %>
message from quest4-2.jsp
随机数1:
实用大全
标准文档
随机数0:
四、实验过程中遇到的问题及解决手段:
在第二个阶乘运算的实验中,出现了点击“开始计算”的按钮后就卡在“等待localhost…响应”的阶段无法显示计算结果的情况,在我对代码进行仔细的检查后,发现问题出在了算法中的for循环上,我不小心将循环条件的代码打错,导致for循环陷入了死循环,无法跳出,在我将代码改正后,阶乘运算的功能终于得以正常实现。
五、本次实验的体会(结论):
通过这次实验,我熟悉了HTML语法,理解和掌握了JSP基本语法,初步掌握JavaScript的使用,初步掌握利用指令、脚本元素和动作元素,进行简单的JSP和HTML混合编程的方法和技术。通过在实验中发现问题,解决问题,我锻炼了自学能力,加深了对专业课程知识的理解。
实用大全
因篇幅问题不能全部显示,请点此查看更多更全内容