实验目的
- 掌握JSP内置对象的使用;
- 内置对象包括out\request\response\cookie等。
实验内容
【1】创建一个JSP网页,文件名为index.jsp,利用request内置对象获取客户端访问ip的功能,屏蔽用户利用局域网实际ip访问Web,但保留回路地址正常访问。效果如图(局域网ip请利用计算机网络课程学习的方法在系统查看):
正常登录界面
屏蔽登录界面
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Text8</title>
</head>
<body>
<%
String ipAddress = request.getRemoteAddr();
boolean isLocalIp = false;
if (ipAddress.equals("127.0.0.1") || ipAddress.equals("::1")) {
out.println(" 当前访问ip为:" + ipAddress);
out.print("</br>");
out.println("正常IP,可以访问网页。");
out.print("</br>");
out.println("哈喽米孝子,欢迎访问教务系统");
}else{
out.println(" 当前访问ip为:" + ipAddress);
out.print("</br>");
out.println("异常IP,拒绝访问网页。");
}
%>
</body>
</html>
【2】创建两个JSP网页,文件名为index.jsp和other.jsp,网页内容分别显示“当前页面为index.jsp”和“当前网页为other.jsp”。其中访问index.jsp的时候,在url带一个参数,参数名称为forward。利用reponse进行重定向:当访问index.jsp时,如果forward参数的值为0,则直接显示index.jsp,如果forward参数的值为0以外的值,则实际上跳到other.jsp:
forward为零时显示的界面
forward为其它值时显示的界面
(说明:当输入forward参数为0以外的值时,直接跳转到了other.jsp,所以地址栏已经为other.jsp,并没有显示参数。)
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Index</title>
</head>
<body>
<%
String forward = request.getParameter("forward");
if (forward.equals("0")) {
out.println("当前页面为 index.jsp");
} else {
response.sendRedirect("other.jsp");
}
%>
</body>
</html>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Other</title>
</head>
<body>
<h1>当前页面为 other.jsp</h1>
</body>
</html>