所有实验代码https://gitee.com/sukels/usts-java-ee一、实验目的
1 了解MyEclipse 开发环境的构成
2 掌握MyEclipse 下JAVA EE开发环境的设置
3 掌握JSP技术及JSP语法的基础内容
二、实验内容
1.测试简单 jsp 文件
2.在MyEclipse集成环境下编写Java web项目
3.验证JSP语法元素并回答问题:
【问题1】该JSP页面包含哪些JSP语法元素。在浏览器中访问该页面,输出结果如何?多次刷新页面,结果如何?
【问题2】打开counter.jsp转换后的源文件counter_jsp.java,对应的类文件在哪里?文件名是什么?
【问题3】查看count变量是在哪里声明的?
【问题4】将上面JSP页面中的<%! int count = 0; %>一行改为<% int count = 0; %>,页面能否正常执行,它与上面页面有什么区别?
4.了解隐含对象是如何定义的(选做)
5.各种隐含对象与作用域变量的使用
三、实验步骤及实验结果记录
1. 测试简单 jsp 文件
2. 在MyEclipse集成环境下编写Java web项目
3. 实验结果截图
问题1 答案:指令元素、脚本元素。方法声明和表达式元素输出结果为:Welcome! You are visitor number 1。多次刷新页面,最后的数字会不断增加
问题2 答案:对应的类文件在tomcat文件夹下\work\Catalina\localhost\test\org\apache\jsp,文件名是counter_jsp.class
问题3 答案:<%! %> 声明变量和方法
问题4 答案:能正常执行,但尾数无法加1 第一个是声明语句,第二个是赋值语句
4.(选做)截图
5. 实验结果截图
【步骤1】request隐含对象的使用(request.jsp)
【步骤2】out隐含对象的使用(out.jsp)
【步骤3】application隐含对象的使用(application.jsp)
【步骤4】session隐含对象的使用(session.jsp)
四、源代码
1. 测试简单 jsp 文件
<body>
<%
out.print("Hello World!");
%>
</body>
2. 在MyEclipse集成环境下编写Java web项目
input.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>用户信息输入</title>
</head>
<body>
<form action="receive.jsp" method="post">
<p>请输入下列信息:</p>
输入您的姓名:<input type="text" name="name"><br>
选择性别:
<input type="radio" name="sex" value="男"/>男
<input type="radio" name="sex" value="女">女
<br>
选择您最喜欢的歌手:
<input type="checkbox" name="singer" value="薛之谦">薛之谦
<input type="checkbox" name="singer" value="迪丽热巴">迪丽热巴
<input type="checkbox" name="singer" value="宋祖儿">宋祖儿
<input type="checkbox" name="singer" value="张杰">张杰
<br>
<input type="submit" value="提交">
</form>
</body>
</html>
receive.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>用户信息输出</title>
</head>
<body>
<%
request.setCharacterEncoding("utf-8");
String name = request.getParameter("name");
String sex = request.getParameter("sex");
String[] singerList = request.getParameterValues("singer");
%>
您的姓名:<%=name%><br>
您的性别:<%=sex%><br>
您喜欢的歌手:
<%
for (String singer : singerList) {
%>
<%=singer + " "%>
<%}%><br>
<%
out.print("hidden提交的值:这是隐藏信息");
%>
</body>
</html>
3. 验证JSP语法元素并回答问题:
counter.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<%@ page language="java" %>
<%! int count = 0; %>
<% count++; %>
Welcome! You are visitor number
<%= count %>
</body>
</html>
4.了解隐含对象是如何定义的(选做)
5. 各种隐含对象与作用域变量的使用
【步骤1】request隐含对象的使用(request.jsp)
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%
String remoteAddr = request.getRemoteAddr();
String remoteHost = request.getRemoteHost();
int serverPort = request.getServerPort();
%>
<html>
<head>
<title>request隐含对象的使用</title>
</head>
<body>
你的IP地址为:<%=remoteAddr %><br>
你的主机名为:<%=remoteHost %><br>
服务器的端口号为:<%=serverPort %><br>
</body>
</html>
【步骤2】out隐含对象的使用(out.jsp)
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>out隐含对象的使用</title>
</head>
<body>
<h2>out对象的使用</h2>
<%
out.print("学习使用out对象");
int buffer = out.getBufferSize();
int available = out.getRemaining();
%>
<br>
out对象的类型为:<%= out.getClass().getName() %><br>
BufferSize=<%= buffer %><br>
Available=<%= available %>
</body>
</html>
【步骤3】application隐含对象的使用(application.jsp)
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%
int number = 0;
Integer num = (Integer) application.getAttribute("num");
if (num == null) {
application.setAttribute("num", new Integer(number));
} else {
number = num.intValue() + 1;
application.setAttribute("num", new Integer(number));
}
%>
<html>
<head>
<title>application隐含对象的使用</title>
</head>
<body>
<center><font color="#0000ff" size="5">application对象示例</font>
</center>
<hr>
本页面文件的实际路径是:<br><%=application.getRealPath("application.jsp") %><br>
application对象中变量num的值为:<%=application.getAttribute("num") %>
</body>
</html>
【步骤4】session隐含对象的使用(session.jsp)
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ page session="true" %>
<%
session.setAttribute("user", "欧阳清风");
%>
<html>
<head>
<title>session隐含对象的使用</title>
</head>
<body>
您的会话ID是:<%=session.getId()%><br>
session对象中存放的变量user的值为:<%=session.getAttribute("user")%>
</body>
</html>
五、实验总结
**********************
**********************