JSP由浅入深(9)—— JSP Sessions

在经典的网站上,访问者可以浏览几个网页并执行一些交互的行为。如果你在编写这样的网站,利用每一个用户的一些数据是非常有用的。为了这个目的,我们可以使用JSP中的"sessions"。

Session是一个跟用户相关的对象。当用户访问网站的时候,一些数据就被存放于session中,并在需要的时候从中取出数据。Session为不同的用户保存了不同了数据。

以下的网页将用户的名字放置于session中,并可以在其它地方来显示它。首先我们要制作一个表单,然后将它命名为GetName.html

1<html>
2<body>
3<form action="SaveName.jsp" method="POST">   
4  
5What's your name? <input name="username" size="20" type="TEXT"/>
6<p><input type="SUBMIT"/>
7</p></form>
8</body>
9</html>

这个表单的目标是“SaveName.jsp”,它在session保存了用户的名字。

1   
2  
3String name = request.getParameter( "username" );   
4  
5session.setAttribute( "theName", name );   
6  
1<html>
2<body>
3<a href="NextPage.jsp">Continue</a>
4</body>
5</html>

SaveName.jsp在session保存了用户了名字,并连接到另外一个网页NextPage.jsp。NextPage.jsp 显示了怎样取出被保存的名字:

1<html>
2<body>   
3  
4Hello, ```
5= session.getAttribute( "theName" ) 
``` 如果你打开两种不同的浏览器,或者从两台不同的机器上运行两个浏览器,你可以在一个浏览器中放置一个名字,而在另外一个浏览器中放置另外的名字,但是两个名字都将被跟踪。Session保持跟踪直到超时,这时它就会假设用户没有访问网站了,所以就取消了session。

最后再布置一下本教程的联系:利用session,在上面的例子中增加一个用户的“age”属性。

Published At
Categories with Web编程
Tagged with
comments powered by Disqus