您的位置:寻梦网首页编程乐园Java天地JSP 专辑JSP由浅入深
JSP由浅入深
编译:ZSC/太平洋网络学院
  • (1) 熟悉JSP服务器
  • (2) 第一个JSP
  • (3) 通过表达式增加动态内容
  • (4) Scriptlets
  • (5) Scriptlets和HTML的混合
  • (6) JSP声明
  • (7) JSP Directives
  • (8) JSP Tags
  • (9) JSP Sessions
  • (10) Beans and Forms处理
  • (11) 标记库
  • (12) 表单编辑
  • (9) JSP Sessions

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

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

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

    <HTML>

    <BODY>

    <FORM METHOD=POST ACTION="SaveName.jsp">

    What's your name? <INPUT TYPE=TEXT NAME=username SIZE=20>

    <P><INPUT TYPE=SUBMIT>

    </FORM>

    </BODY>

    </HTML>

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

    <%

    String name = request.getParameter( "username" );

    session.setAttribute( "theName", name );

    %>

    <HTML>

    <BODY>

    <A HREF="NextPage.jsp">Continue</A>

    </BODY>

    </HTML>

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

    <HTML>

    <BODY>

    Hello, <%= session.getAttribute( "theName" ) %>

    </BODY>

    </HTML>

    如果你打开两种不同的浏览器,或者从两台不同的机器上运行两个浏览器,你可以在一个浏览器中放置一个名字,而在另外一个浏览器中放置另外的名字,但是两个名字都将被跟踪。Session保持跟踪直到超时,这时它就会假设用户没有访问网站了,所以就取消了session。

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

    [上一页] [下一页]