您的位置  > 互联网

java中的对象用来保存一些在与每个用户会话期间需要保持的数据信息

当用户关闭某个Web服务器上的所有网页时,服务器和客户端的对象及其变量将自动消失。

孤立起来你可能会觉得有点难以理解,所以我们来看一个非常常用的demo——用户登录:

1.用户登录界面.jsp

<%@page import="org.apache.catalina.connector.Request"%>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>

<script type="text/javascript">
function on_submit(){
	if(form1.username.value=="")
		{
			alert("用户名不能为空,请输入用户名!");
			form1.username.focus();
			return false;
			
		}
	if(form1.userpassword.value=="")
		{
			alert("密码不能为空,请输入密码!");
			form1.userpassword.focus();
			return false
		}
}
</script>
<%!
	public String codeToString(String str){ //处理中文字符串的函数
	String s=str;
	try
	{
			byte tempB[]=s.getBytes("ISO-8859-1");
			s=new String(tempB);
			return s;
			
	}catch(Exception e)
	{
		return s;
	}
	
}
%>
<%
	String username=request.getParameter("username");
	String userpassword=request.getParameter("userpassword");
	if(username!=null &userpassword!=null)
	{
		//如果用户名和密码都合法,则记下用户名,一般把用户和密码存在数据库中
		//用数据库中的信息与提交的用户名和密码比较以进行用户合法性检查
		session.setAttribute("username", codeToString(username));
		response.sendRedirect("sessionUserLogin1.jsp");
	}
%>


<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
用户登录

<body>
用户登录
请输入用户名:
请输入密码:  

渲染效果是:

在该页面中,首先声明一个表单,用于填写用户名和密码; 文件的开头是一个程序。 该程序主要用于验证用户名和密码是否为空,由浏览器执行。 接下来是字符中文字符串处理函数; 下一步是java程序。 如果数据合法,表单提交后,需要判断用户名和密码是否为空。 要检查用户名和密码,请使用对象的数据对象来记住用户名,然后此页面重定向到.jsp页面。

2.登录成功跳转page.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>



<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
用户登录成功

<body>
	用户登录成功!
您的用户名是:<%=(String)session.getAttribute("username")%>

渲染效果是:

在该页面中,使用()方法获取对象的数据对象的值并输出。

从上面两个页面我们可以发现,对象可以在同一个会话中共享不同网页中的变量。