Jsp学习整理

一、Jsp对象

1、out对象——jspWriter类的实例,向客户端输出内容常用对象

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
	<h1>out对象的使用</h1>
	<%
		out.println("静夜诗<br>");
		out.println("窗前明月光,<br>");
		out.println("疑是地上霜。<br>");
		out.println("举头望明月,<br>");
		out.println("低头思故乡。<br>");
	%>
	缓冲区大小:<%=out.getBufferSize() %>byte<br>
	缓冲区剩余大小:<%=out.getRemaining() %>byte<br>
	是否自动清空缓冲区:<%=out.isAutoFlush() %><br>
</body>
</html>
out其他常用对象

void println(); //向客户端打印字符串

void clear(); //清楚缓冲区内容,如果在flush后出现抛异常

void clearBuffer(); //清楚缓冲区内容,如果在flush之后不会抛异常

void flush(); //将缓冲区内容输出到客户端

int getBufferSize(); //返回缓冲区大小,如果不设置是为0

int getRemaining(); //返回剩余缓冲区大小

boolean isAutoFlush(); //返回缓冲区满时是自动清空,还是抛出异常

void close(); //关闭输出流

2、get和post区别

<form name = "regForm" action = "action" method="get/post">
</form>

get:以明文提交方式,速度快,传输不超过2k,适合提交数据量不大、安全系数不高的数据,比如:搜索、查询;

post:将用户提交的信息封装到HTML HEADER内。适合提交数据量大、安全性高的用户信息。比如:注册、修改、上传等功能。

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
	<h1>用户登录</h1>
	<hr>
		<form action = "dologin.jsp" name="logForm" method = "post">
			<table>
				<tr>
					<td>用户名:</td>
					<td><input type = "text" name="username"/></td>
					</tr>
				
				<tr>
					<td>密码:</td>
					<td>
						<input type="password" name = "password"/>
					</td>
				</tr>
				<td colspan="1"><input type="submit" value="登录"></td>
			</table>
		</form>
	</hr>
</body>
</html>

3、request对象

客户端的请求信息被封装在request对象中,通过它才能了解到客户的需求,然后做出响应。它是httpServletRequest类的实例。request对象具有请求域,即完成客户端的请求之前,该对象一直有效。

String getParameter(String name) 返回name指定参数的参数值

String[] getParameterValues(String name) 返回含参数name的所有值的数组

void setAttribute(String,Object);存储此请求中的属性

object getAttribute(String name);返回指定属性的值

String getContentType()得到请求体的MIME 类型

String getProtocol() 返回请求的协议类型及版本号

String getServerName() 返回接受请求的服务器主机名

3、response对象

4、Session对象

简单来说就是打开浏览器,到关闭的时间,这样一个特殊的时间段叫做session

<%@page import="java.util.Date"%>
<%@page import="java.text.SimpleDateFormat"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Session</title>
</head>
<body>
	<h1>session Study</h1>
	<hr>
	<%
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日HH:mm:ss");
		Date d = new Date(session.getCreationTime());
		session.setAttribute("username", "admin");
	%>
	Session创建时间:<%=sdf.format(d) %><br>
	Session的ID编号:<%=session.getId() %><br>
	从Session中获取用户名:<%=session.getAttribute("username")%><br>
	
</body>
</html>