jsp实验指导书
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
if(isLogin==null){
isLogin=false;
}
String name=req.getParameter("username");//获取表单上的用户名
String password=req.getParameter("password");//获取表单上的密码
if(isLogin==true){
import javax.servlet.http.HttpSession;
public class LoginServlet extends HttpServlet{
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
实验步骤:
1.创建一个Web工程,名称为login。
2.在工程的sunyang包下创建一个Servlet类LoginServlet.java,该类用来输出登录页面和欢迎用户登录的信息。类LoginServlet的代码如下:
import java.io.IOException;
import java.io.PrintWriter;
name=(String)session.getAttribute("name");
out.println("<center><h2>欢迎"+name+"登录</h2></center>");
}else if(name!=null&&password!=null){
session.setAttribute("name", name);//把用户名保存在HttpSession中
throws ServletException, IOException {
this.doPost(req, resp);
}
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
1)当用户不输入用户名和密码,直接点击“登录”时,跳回login.jsp页面。
2)当用户只输入用户名或者只输入密码,就点击“登录”时,跳回login.jsp页面,并且将用户刚才输入的用户名或密码显示在对应的位置。
3)当用户完整输入用户名和密码,点击“登录”时,跳转到success.jsp,并在该页面显示用户名,以及该用户是第几个用户。
return side * side;//计算正方形的面积
}
}
2.创建名称为sideInput.jsp的页面文件,该页面文件的代码如下:
<%@ page contentType="text/html; charset=gb2312" language="java"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
实验步骤:
1.编写main.jsp
加载circle.jsp页面代码如下:
请同学们编写加载梯形的代码,并传递参数。
2.编写circle.jsp
核心代码如下:
3.编写ladder.jsp
请同学们根据题目要求编写该页面
4.测试页面
结果如图所示:
5.思考
如何能够将圆的半径和梯形的个边实现动态输入?
实验三request内置对象的应用
4.建立一个Web应用,在index.jsp中显示“您好,这是我的第一个JSP站点。”;
发布测试。
index.jsp页面代码:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTቤተ መጻሕፍቲ ባይዱ HTML 4.01 Transitional//EN">
实验一JSP实验环境组建与简单JSP应用
实验目的:
熟悉JSP开发环境,使用开发环境进行JSP程序开发。
实验要求:
安装JDK,Tomcat,MyEclipse/Eclipse,并建立一个简单Web应用且发布测试。
实验步骤:
1.安装JDK;
2.安装Tomcat;
3.安装MyEclipse或Eclipse;
<html>
<head>
<title>My JSP 'index.jsp' starting page</title>
</head>
<body>
您好,这是我的第一个JSP站点。<br>
</body>
</html>
实验二JSP语法的应用
实验目的:
掌握jsp基本语法。
掌握JSP中page标签的使用。
掌握JSP中forward动作标签的使用。
实验步骤:
1.getNumber.jsp
2.Result.jsp
3.large.jsp
4.small.jsp
success.jsp
实验五Javabean的应用
实验目的:
掌握利用Javabean组件实现JSP的基本应用;掌握jspSmartUpload提供的API。
实验要求:
(编写一个JSP页面,该页面提供一个表单,用户通过表单输入正方形的边长后提交给本页面,JSP页面将计算正方形面积和周长的任务交给一个JavaBean去完成,并将计算结果在另外一个JSP页面中显示出来。
实验步骤:
1.创建名称为Square.java的JavaBean文件,代码如下:
package square;
public class Square {
private int side = 1;//定义私有变量side表示正方形的边长
public Square() {//无参的构造函数
}
public int getSide() {
<title>计算正方形的周长与面积</title>
</head>
<body>
<form id="form1" name="form1" method="post" action="square.jsp">
请输入圆的半径:
<input name="radius" type="text" id="radius" />
实验目的:
1.掌握form表单提交信息;
2.掌握request对象的方法;
3.掌握在jsp页面声明、使用方法;
实验要求:
编写三个jsp页面:login.jsp、dologin.jsp和success.jsp,将三个jsp页面保存在同一目录下。login.jsp页面结构如下:
dologin.jsp校验login.jsp页面的输入内容并进行页面跳转,内容如下:
实验六Servlet的应用
实验目的:
熟悉Servlet接口及其中规定的方法和意义;掌握Servlet编写、部署和运行。
实验要求:
当请求Servlet时,出现一个包含文本框、密码框和提交按钮的界面,当输入用户名和密码,单击【登录】按钮后,将用户的信息放入HttpSession中,并输出欢迎当前用户登录的信息。
return side;//返回变量side的值
}
public void setRadius(int newSide) {
side = newSide;//给变量side赋值
}
public double squareLength() {
return side * 4.0;//计算正方形的周长
}
public double squareArea() {
实验步骤:
1.设计login.jsp
2.编写dologin.jsp
3.编写success.jsp
4.测试页面
5.思考
用户访问次数的记录特点,何时重新计数?
实验四猜数字游戏
实验目的:
1.掌握session对象的使用
实验要求:
实现猜数字的小游戏。当客户访问服务器上的getNumber.jsp时,随机分配给客户一个1~100之间的整数,然后将这个整数存在客户的session对象中。客户在表单里输入一个整数,来猜测分配给自己的那个整数。客户输入一个整数后,提交给result.jsp,该页面负责判断这个整数是否和客户session对象中存在的那个整数相同,如果相同就连接到success.jsp;如果不相同就连接到large.jsp或small.jsp,然后,客户在这些页面再重新提交整数result.jsp,效果如下图所示:
resp.setCharacterEncoding("GBK"); //设置响应的编码类型为GBK
PrintWriter out=resp.getWriter(); //获取输出对象
out.println("<html>");
out.println("<head>");
out.println("<title>用户登录</title>");
}else{
out.println("<h2>用户登录</h2>");
out.println("<form action=login method=post>");
掌握jsp中include动作标签的使用。
实验要求:
编写三个JSP页面:main.jsp、circle.jsp和ladder.jsp,将三个JSP页面保存在同一Web服务目录中。main.jsp使用include动作标记加载circle.jsp和ladder.jsp页面。circle.jsp页面可以计算并显示圆的面积,ladder.jsp可以计算并显示梯形的面积。当circle.jsp和ladder.jsp被加载时获取main.jsp页面include动作标记的param子标记提供的圆的半径以及梯形的上底、下底和高的值。
out.println("正方形的周长为:" + squareBean.squareLength());
out.println("<br><br>");
out.println("正方形的面积为:" + squareBean.squareArea());
%>
</body>
</html>
4.程序执行过程如图所示:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>计算正方形的周长与面积</title>
</head>
<body>
<jsp:useBean id="squareBean" scope="session" class="square.Square" />
<%
int side = Integer.parseInt(request.getParameter("side"));
squareBean.setSide(side);
out.println("正方形的边长为:" + squareBean.getSide());
out.println("<br><br>");
<input type="submit" name="submit" value="开始计算" />
</form>
</body>
</html>
3.创建名称为square.jsp的页面文件,该页面文件的代码如下:
<%@ page contentType="text/html; charset=gb2312" language="java"%>
out.println("</head>");
out.println("<body>");
HttpSession session=req.getSession();//获取HttpSession实例
Boolean isLogin=(Boolean)session.getAttribute("isLogin");
session.setAttribute("password", password);//把密码保存在HttpSession中
//把判断用户是否登录的字段保存在HttpSession中
session.setAttribute("isLogin", true);
out.println("<center><h2>欢迎"+name+"登录</h2></center>");
isLogin=false;
}
String name=req.getParameter("username");//获取表单上的用户名
String password=req.getParameter("password");//获取表单上的密码
if(isLogin==true){
import javax.servlet.http.HttpSession;
public class LoginServlet extends HttpServlet{
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
实验步骤:
1.创建一个Web工程,名称为login。
2.在工程的sunyang包下创建一个Servlet类LoginServlet.java,该类用来输出登录页面和欢迎用户登录的信息。类LoginServlet的代码如下:
import java.io.IOException;
import java.io.PrintWriter;
name=(String)session.getAttribute("name");
out.println("<center><h2>欢迎"+name+"登录</h2></center>");
}else if(name!=null&&password!=null){
session.setAttribute("name", name);//把用户名保存在HttpSession中
throws ServletException, IOException {
this.doPost(req, resp);
}
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
1)当用户不输入用户名和密码,直接点击“登录”时,跳回login.jsp页面。
2)当用户只输入用户名或者只输入密码,就点击“登录”时,跳回login.jsp页面,并且将用户刚才输入的用户名或密码显示在对应的位置。
3)当用户完整输入用户名和密码,点击“登录”时,跳转到success.jsp,并在该页面显示用户名,以及该用户是第几个用户。
return side * side;//计算正方形的面积
}
}
2.创建名称为sideInput.jsp的页面文件,该页面文件的代码如下:
<%@ page contentType="text/html; charset=gb2312" language="java"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
实验步骤:
1.编写main.jsp
加载circle.jsp页面代码如下:
请同学们编写加载梯形的代码,并传递参数。
2.编写circle.jsp
核心代码如下:
3.编写ladder.jsp
请同学们根据题目要求编写该页面
4.测试页面
结果如图所示:
5.思考
如何能够将圆的半径和梯形的个边实现动态输入?
实验三request内置对象的应用
4.建立一个Web应用,在index.jsp中显示“您好,这是我的第一个JSP站点。”;
发布测试。
index.jsp页面代码:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTቤተ መጻሕፍቲ ባይዱ HTML 4.01 Transitional//EN">
实验一JSP实验环境组建与简单JSP应用
实验目的:
熟悉JSP开发环境,使用开发环境进行JSP程序开发。
实验要求:
安装JDK,Tomcat,MyEclipse/Eclipse,并建立一个简单Web应用且发布测试。
实验步骤:
1.安装JDK;
2.安装Tomcat;
3.安装MyEclipse或Eclipse;
<html>
<head>
<title>My JSP 'index.jsp' starting page</title>
</head>
<body>
您好,这是我的第一个JSP站点。<br>
</body>
</html>
实验二JSP语法的应用
实验目的:
掌握jsp基本语法。
掌握JSP中page标签的使用。
掌握JSP中forward动作标签的使用。
实验步骤:
1.getNumber.jsp
2.Result.jsp
3.large.jsp
4.small.jsp
success.jsp
实验五Javabean的应用
实验目的:
掌握利用Javabean组件实现JSP的基本应用;掌握jspSmartUpload提供的API。
实验要求:
(编写一个JSP页面,该页面提供一个表单,用户通过表单输入正方形的边长后提交给本页面,JSP页面将计算正方形面积和周长的任务交给一个JavaBean去完成,并将计算结果在另外一个JSP页面中显示出来。
实验步骤:
1.创建名称为Square.java的JavaBean文件,代码如下:
package square;
public class Square {
private int side = 1;//定义私有变量side表示正方形的边长
public Square() {//无参的构造函数
}
public int getSide() {
<title>计算正方形的周长与面积</title>
</head>
<body>
<form id="form1" name="form1" method="post" action="square.jsp">
请输入圆的半径:
<input name="radius" type="text" id="radius" />
实验目的:
1.掌握form表单提交信息;
2.掌握request对象的方法;
3.掌握在jsp页面声明、使用方法;
实验要求:
编写三个jsp页面:login.jsp、dologin.jsp和success.jsp,将三个jsp页面保存在同一目录下。login.jsp页面结构如下:
dologin.jsp校验login.jsp页面的输入内容并进行页面跳转,内容如下:
实验六Servlet的应用
实验目的:
熟悉Servlet接口及其中规定的方法和意义;掌握Servlet编写、部署和运行。
实验要求:
当请求Servlet时,出现一个包含文本框、密码框和提交按钮的界面,当输入用户名和密码,单击【登录】按钮后,将用户的信息放入HttpSession中,并输出欢迎当前用户登录的信息。
return side;//返回变量side的值
}
public void setRadius(int newSide) {
side = newSide;//给变量side赋值
}
public double squareLength() {
return side * 4.0;//计算正方形的周长
}
public double squareArea() {
实验步骤:
1.设计login.jsp
2.编写dologin.jsp
3.编写success.jsp
4.测试页面
5.思考
用户访问次数的记录特点,何时重新计数?
实验四猜数字游戏
实验目的:
1.掌握session对象的使用
实验要求:
实现猜数字的小游戏。当客户访问服务器上的getNumber.jsp时,随机分配给客户一个1~100之间的整数,然后将这个整数存在客户的session对象中。客户在表单里输入一个整数,来猜测分配给自己的那个整数。客户输入一个整数后,提交给result.jsp,该页面负责判断这个整数是否和客户session对象中存在的那个整数相同,如果相同就连接到success.jsp;如果不相同就连接到large.jsp或small.jsp,然后,客户在这些页面再重新提交整数result.jsp,效果如下图所示:
resp.setCharacterEncoding("GBK"); //设置响应的编码类型为GBK
PrintWriter out=resp.getWriter(); //获取输出对象
out.println("<html>");
out.println("<head>");
out.println("<title>用户登录</title>");
}else{
out.println("<h2>用户登录</h2>");
out.println("<form action=login method=post>");
掌握jsp中include动作标签的使用。
实验要求:
编写三个JSP页面:main.jsp、circle.jsp和ladder.jsp,将三个JSP页面保存在同一Web服务目录中。main.jsp使用include动作标记加载circle.jsp和ladder.jsp页面。circle.jsp页面可以计算并显示圆的面积,ladder.jsp可以计算并显示梯形的面积。当circle.jsp和ladder.jsp被加载时获取main.jsp页面include动作标记的param子标记提供的圆的半径以及梯形的上底、下底和高的值。
out.println("正方形的周长为:" + squareBean.squareLength());
out.println("<br><br>");
out.println("正方形的面积为:" + squareBean.squareArea());
%>
</body>
</html>
4.程序执行过程如图所示:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>计算正方形的周长与面积</title>
</head>
<body>
<jsp:useBean id="squareBean" scope="session" class="square.Square" />
<%
int side = Integer.parseInt(request.getParameter("side"));
squareBean.setSide(side);
out.println("正方形的边长为:" + squareBean.getSide());
out.println("<br><br>");
<input type="submit" name="submit" value="开始计算" />
</form>
</body>
</html>
3.创建名称为square.jsp的页面文件,该页面文件的代码如下:
<%@ page contentType="text/html; charset=gb2312" language="java"%>
out.println("</head>");
out.println("<body>");
HttpSession session=req.getSession();//获取HttpSession实例
Boolean isLogin=(Boolean)session.getAttribute("isLogin");
session.setAttribute("password", password);//把密码保存在HttpSession中
//把判断用户是否登录的字段保存在HttpSession中
session.setAttribute("isLogin", true);
out.println("<center><h2>欢迎"+name+"登录</h2></center>");