JSP中四种属性保存范围(2)
1.session
<%@ page language="java" contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<title>Insert title here</title>
</head>
<body>
<%
//获取session ID Manager 可以将session保存在本地上
String id = session.getId();
%>
<h1><%=id %></h1>
</body>
</html>
<%@ page language="java" contentType="text/html"
pageEncoding="GBK"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Insert title here</title>
</head>
<body>
<%
if(session.isNew()){
%>
<h1>欢迎新用户</h1>
<%
}else{
%>
<h1>老用户</h1>
<%
}
%>
</body>
</html>
<%@ page language="java" contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<title>Insert title here</title>
</head>
<body>
<%
long start = session.getCreationTime(); //创建此会话的时间
long end = session.getLastAccessedTime();//客户端上一次发送与此会话关联的请求的时间,最后一次操作此会话时间
long time = (end-start)/1000; // 毫秒转换为秒
%>
<h1>您已经在此网页停留了<%=time %>秒</h1>
</body>
</html>
2.request
<%@ page language="java" contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<title>Insert title here</title>
</head>
<body>
<%
Cookie c1 = new Cookie("hw","hello world");
Cookie c2 = new Cookie("hi","nice to meet you");
c1.setMaxAge(300);//设置最大生存时间300秒
c2.setMaxAge(30); //设置最大生存时间30秒
response.addCookie(c1);
response.addCookie(c2);
%>
</body>
</html>
<%@ page language="java" contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<title>Insert title here</title>
</head>
<body>
<%
Cookie [] c = request.getCookies();
if(c!=null){
for(int i=0;i<c.length;i++){
%>
<h1>name:<%=c[i].getName() %>--value:<%=c[i].getValue() %></h1>
<%
}
}
%>
</body>
</html>
3.定时刷新
<%@ page language="java" contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<title>Insert title here</title>
</head>
<body>
<%!
int count = 0;
%>
<%
response.setHeader("refresh","1"); //每隔1秒刷新一次
%>
<h3>已经刷新了<%=count++ %>次</h3>
</body>
</html>
4.定时跳转页面一
<%@ page language="java" contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<title>Insert title here</title>
</head>
<body>
<h1>访问错误,5秒后跳转至首页,如果没有跳转,请点击<a href=hello.jsp>这里</a></h1>
<%!
int count = 0;
%>
<%
response.setHeader("refresh","5; url=hello.jsp");
%>
</body>
</html>
4.定时跳转页面二
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="refresh" content="5;url=hello.jsp" charset="utf-8">
<title>Insert title here</title>
</head>
<body>
<h1>访问错误,5秒后跳转至首页,如果没有跳转,请点击<a href=hello.jsp>这里</a></h1>
</body>
</html>
5.重定向
<%@ page language="java" contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<title>Insert title here</title>
</head>
<body>
<%
response.sendRedirect("hello.jsp");
%>
</body>
</html>
6.addcookie
<%@ page language="java" contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<title>Insert title here</title>
</head>
<body>
<%
Cookie c1 = new Cookie("hw","hello world");
Cookie c2 = new Cookie("hi","nice to meet you");
c1.setMaxAge(300);//设置最大生存时间300秒
c2.setMaxAge(30); //设置最大生存时间30秒
response.addCookie(c1);
response.addCookie(c2);
%>
</body>
</html>
<%@ page language="java" contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<title>Insert title here</title>
</head>
<body>
<%
Cookie [] c = request.getCookies();
if(c!=null){
for(int i=0;i<c.length;i++){
%>
<h1>name:<%=c[i].getName() %>--value:<%=c[i].getValue() %></h1>
<%
}
}
%>
</body>
</html>
7.练习
<%@ page language="java" contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<title>Insert title here</title>
</head>
<body>
<form action="login.jsp" method="post">
用户名:<input type="text" name="uname" ><br/>
密 码:<input type="password" name="upass" ><br/>
<input type="submit" value="登陆">
<input type="reset" value="清空">
</form>
<%
//用户名scott,密码orcl
String name=request.getParameter("uname");
String password=request.getParameter("upass"); if(!(name==null||"".equals(name.trim())||password==null||"".equals(password.trim()))){
if("scott".equals(name)&&"orcl".equals(password)){
response.setHeader("refresh","2;url=welcome.jsp");//2秒后跳转welcome页面
session.setAttribute("userName",name); //传值
%>
<h1>登陆成功,两秒后跳转至欢迎页 </h1>
<h1>如果没有跳转,请点击<a href="welcome.jsp">这里</a></h1>
<%
}else{
%>
<h3>用户名或密码错误,请重新登陆...</h3>
<%
response.setHeader("refresh","2;url=login.jsp");
}
}else{
}
%>
</body>
</html>
<%@ page language="java" contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<title>Insert title here</title>
</head>
<body>
<%
session.invalidate();
response.setHeader("refresh","2;login.jsp");
%>
<h2>注销成功,两秒后跳转至首页</h2>
<h1>如果没有跳转,请点击<a href="login.jsp">这里</a></h1>
</body>
</html>
<%@ page language="java" contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<title>Insert title here</title>
</head>
<body>
<%
if(session.getAttribute("userName")!=null){
%>
<h2>欢迎<%=session.getAttribute("userName") %>登陆本系统</h2>
<h1>注销请点击<a href="loginout.jsp">注销</a></h1>
<%
}else{
%>
<h1>请先<a href="login.jsp">登录</a></h1>
<%
}
%>
</body>
</html>
JSP中四种属性保存范围(2)的更多相关文章
- JSP中四种属性保存范围(1)
一.四种属性范围 在JSP中提供了四种属性保存范围 page:在一个页面内保存属性,跳转之后无效request:在一次服务请求范围内,服务器跳转后依然有效session:-在一次会话范围内,无论何种跳 ...
- jsp中四种传递参数的方法
jsp中四种传递参数的方法如下: 1.form表单 2.request.setAttribute();和request.getAttribute(); 3.超链接:<a herf="i ...
- css样式表中四种属性选择器
学习此连接的总结http://developer.51cto.com/art/201009/226158.htmcss样式表中四种属性选择器1> 简易属性 tag[class]{ font-we ...
- (转)JSP中四种传递参数的方法:
1.form表单 2.request.setAttribute();和request.getAttribute(); 3.超链接:<a herf="index.jsp"?a= ...
- JSP中四种传递参数中文乱码问题
查看来源:http://blog.csdn.net/hackerain/article/details/6776083
- JSP九大内置对象和四种属性范围解读
林炳文Evankaka原创作品.转载请注明出处http://blog.csdn.net/evankaka 摘要:本文首先主要解说了JSP中四种属性范围的概念.用法与实例. 然后在这个基础之上又引入了九 ...
- Jsp学习总结(1)——JSP九大内置对象和四种属性范围解读
一.四种属性范围 1.1.在JSP中提供了四种属性保存范围 page:在一个页面内保存属性,跳转之后无效 request:在一次服务请求范围内,服务器跳转后依然有效 session:-在一次会话范围内 ...
- jsp四种属性范围
在JSP提供了四种属性的保存范围.所谓的属性保存范围,指的就是一个设置的对象,可以在多个页面中保存并可以继续使用.它们分别是:page.request.session.appliction. 1.pa ...
- JavaScript中四种不同的属性检测方式比较
JavaScript中四种不同的属性检测方式比较 1. 用in方法 var o = {x:1}; "x" in o; //true "y" in o; //fa ...
随机推荐
- 新接口注册LED字符驱动设备
#include <linux/init.h> // __init __exit #include <linux/module.h> // module_init module ...
- Angular 组件通讯方式
(一)父子组件 输入/输出属性 关键词 Input,Output,EventEmitter. 父子组件信息信息,分为 (1)子组件向父组件传递 (2)父组件向子组件传递 (二)模版变量与 @V ...
- js中的offsetWidth用法
offsetWidth //返回盒模型的宽度(包括width+左右padding+左右border) <style> #div1 { width:200px; height:200px; ...
- eclipse codeFormatter 和 codeTemplates 模板
下载 eclipse_modles.rar 好用高效的eclipse的注释和代码风格模板. 版权声明:本文为博主原创文章,未经博主允许不得转载.
- JVM Heap Memory和Native Memory
JVM管理的内存可以总体划分为两部分:Heap Memory和Native Memory.前者我们比较熟悉,是供Java应用程序使用的:后者也称为C-Heap,是供JVM自身进程使用的.Heap Me ...
- 后台PDF返回Base64,前台接收预览
读取已存在的PDF文件,path为绝对路径 string base64String = "";byte[] buffer=null; using (FileStream fs = ...
- Oracle package demo 包
1.package 程序包说明(由函数.过程.变量.常量.游标和异常组成) create or replace package pk_test is -- Author : CHEN -- Creat ...
- Reference与ReferenceQueue
Reference源码分析 首先我们先看一下Reference类的注释: /** * Abstract base class for reference objects. This class def ...
- k8s+jenkins
1 server 的port , targetport, nodeport的区别 targetport为容器的暴露端口,为最后端的端口 port可以理解为pod的端口,pod是容器的外层,该端口可以在 ...
- Android 播放器开发
GSY https://github.com/CarGuo/GSYVideoPlayer/blob/master/doc/USE.md 阿里云播放器 https://helpcdn.aliyun.co ...