一,out内置对象
out对象用来向客户端输出数据。被封装为javax.servlet.jsp.JspWriter类对象,通过Jsp容器变换为java.io.PrintWriter类对象。Servlet使用java.io.PrintWriter类对象向网页输出数据。
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>201819102002彭立鑫</title>
</head>
<body>
<%
out.print("<font size=40 color=red >");
out.print("呼伦贝尔学院");
out.print("</font>");
%>
</body>
</html>
输出样例
二,request内置对象
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>request内置对象</title>
</head>
<body>
<form action="show.jsp" method="post">
<ul style="list-style:none;line-height:30px">
<li>用户姓名:<input type="text" name="name" /><br /></li>
<li>用户密码:<input type="text" name="key" /></li>
<li><input type="submit" value="提交" /></li>
</ul>
</form>
</body>
</html>
输出样例
三,session对象
session在网络中被称为会话。由于HTTP协议是一种无状态协议,也就是当一个客户向服务器发出请求,服务器接收请求,并返回响应后,该连接就结束了,而服务器并不保存相关的信息。为了弥补这一缺点,HTTP协议提供了session。通过session可以在应用程序的Web页面间进行跳转时,保存用户的状态,使整个用户会话一直存在下去,直到关闭浏览器。但是,如果在一个会话中,客户端长时间不向服务器发出请求,session对象就会自动消失。这个时间取决于服务器,例如,Tomcat服务器默认为30分钟。不过这个时间可以通过编写程序进行修改。
index.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>学员注册</title>
<meta name="author" content="pan_junbiao的博客">
<style>
.txtBox{
padding: 3px;
width: 300px;
font-size: 16px;
}
</style>
</head>
<body>
<div align="center">请输入注册信息
<form name="form1" method="post" action="reginfo.jsp">
<table border="0" align="center">
<tr>
<td>用户姓名:</td>
<td><input type="text" name="name" value="彭立鑫" class="txtBox" /></td>
</tr>
<tr>
<tr>
<td>兴趣爱好:</td>
<td>
<input type="checkbox" name="interests" value="足球" />足球
<input type="checkbox" name="interests" value="篮球" />篮球
</td>
</tr>
<tr>
<td>
<input type="submit" value="提交" />
</td>
<td>
<input type="reset" value="取消" />
</td>
</tr>
</table>
</form>
</div>
</body>
</html>
reginfo.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%
request.setCharacterEncoding("UTF-8"); //设置请求编码
String name = request.getParameter("name"); //获取用户名
//获取兴趣爱好
String[] interests = request.getParameterValues("interests");
String interStr = "";
if(interests != null)
{
for(String item : interests)
{
interStr += item + ";";
}
}
%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>注册信息</title>
<meta name="author" content="彭立鑫">
</head>
<body>
用户姓名:<%= name %><br/>
兴趣爱好:<%= interStr %>
</body>
</html>
1)注册页面 index.jsp
(2)注册提交页面 reginfo.jsp
** 四,application对象**
application对象用于保存所有应用中的共有数据。它在服务器启动时自动创建,在服务器停止时销毁。当application对象没有被销毁时,所有用户都可以共享该application对象。与session对象相比,application对象的生命周期更长,类似于系统的“全局变量”。
<%@ page import="java.util.*" %>
<% Enumeration<String> enume = application.getInitParameterNames(); //获取全部初始化参数
while(enume.hasMoreElements()) { String name = enume.nextElement();
String value = application.getInitParameter(name);
out.println(name + ":");
out.println(value); }%>
五,page对象
page对象代表JSP本身,只有在JSP页面内才是合法的。page对象本质上是包含当前Servlet接口引用的变量,可以看作是this关键字的别名。
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><!DOCTYPE html><html><head><meta charset="UTF-8"><title>page对象各方法的应用</title><meta name="author" content="彭立鑫"></head><body>
<%! Object object; %>
<ul>
<li>getClass()方法的返回值:<%=page.getClass()%></li>
<li>hashCode()方法的返回值:<%=page.hashCode()%></li> <li>toString()方法的返回值:<%=page.toString()%></li>
<li>与Object对象比较的返回值:<%=page.equals(object)%></li>
<li>与this对象比较的返回值:<%=page.equals(this)%></li></ul></body></html>
六,exception对象
exception对象用来处理JSP文件执行时发生的所有错误和异常,只有在page指令中设置 isErrorPage属性值为true的页面中才可以被使用,在一般的JSP页面中使用该对象将无法编译JSP文件。exception对象几乎定义了所有异常情况,在Java程序中,可以使用try…catch关键字来处理异常情况,如果在JSP页面中出现没有捕获到的异常,就会生成exception对象,并把exception对象传送到在page指令中定义的错误页面中,然后在错误页面中处理相应的exception对象。
(1)创建index.jsp文件,在该文件中,首先在page指令中定义reginfoPage属性值为reginfo.jsp,即指定显示异常信息的页面。
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" reginfoPage=" reginfo.jsp" %>
<!DOCTYPE html><html><head><meta charset="UTF-8"><title>使用exception对象获取异常信息</title>
<meta name="author" content="彭立鑫"></head><body><% request.setAttribute("price", "12.5元");
float price = Float.parseFloat(request.getAttribute("price").toString()); %></body></html>
(2)编写reginfo.jsp文件,将该页面的page指令的 isReginfoPage属性值设置为true,并且输出异常信息。
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" isReginfoPage="true" %>
<!DOCTYPE html><html><head><meta charset="UTF-8"><title>错误提示页面</title>
<meta name="author" content="彭立鑫"></head><body>错误提示为:
<%= exception.getMessage() %>
</body></html>
七,config对象
config对象主要用于取得服务器的配置信息。当一个Servlet初始化时,容器把某些信息通过config对象传递给这个Servlet。开发者可以在web.xml文件中为应用程序环境中的Servlet程序和JSP页面提供初始化参数。
八,pageContext对象
获取页面上下文的pageContext对象是一个比较特殊的对象,通过它可以获取JSP页面的request、response、session、out、exception等对象。pageContext对象的创建和初始化都是由容器来完成的,JSP页面中可以直接使用pageContext对象。
九,response对象
response对象用于响应客户请求,向客户端输出信息。它封装了JSP产生的响应,并发送到客户端以响应客户端的请求。请求的数据可以是各种数据类型,甚至是文件。response对象在JSP页面内有效。