三晋一枝花

全靠奋当家

  BlogJava :: 首页 :: 联系 :: 聚合  :: 管理
  13 Posts :: 0 Stories :: 2 Comments :: 0 Trackbacks
天行健,君子以自强不息。
这句话我虽然理解不深,但我认为学习绝非一个人的事,它需要与其它人交流,如果只是闷头学,可能一天就能理解了的东西,你要理解一年,甚至更长。
希望各位高人能对我的学习进行指导,部分问题在此处提出,如果你知道或有理解,请予以评论,谢谢。

-------------------------------------------
1、标签库
我知道了标签库的概念,但我不知道在现在这种框架开发模式下,是否还需要学习标签库的开发等,请指导。此处的学习我先略过了,等需要时再看吧。

2、用户跟踪

对访问站点的用户进行跟踪,可以有以下方法(三种主要机制):Cookies、URL 重写、隐藏式表单域

操作Cookies:
    <%
        Cookie mycookie=new Cookie("user","wuxs");//创建一个Cookie对象
        mycookie.setMaxAge(24*60*60);//设置Cookie的存活期
        response.addCookie(mycookie);//将Cookie存储
    %>
    <%
        //获取Cookie
        Cookie[] cookielist=request.getCookies();
        ..........
        Cookie mycookie=cookielist[i];
        if (mycookie.getName.equals("user")){out.println(mycookie.getValue());}
    %>

使用会话,Session:
使页面可以支持会话:<% page language="java" import="java.util.*" session="true" %>,默认是支持的,如果要使其不支持会话,则可以将其设为false

在Session中存储数据:
Integer i=new Integer(1);
session.setAttribute("userAccessTimes",i);
如上,保存会话的属性值用的是整型对象而不是简单数据类型int。因为 Session 对象只能存储对象,而不能保存像int 这样的简单数据类型。

获取Session中的数据:
Integer i=(Integer) session.getAttribute("user");

检查新会话:
if (session.isNew()){....}    //什么是新会话?

获取会话标识符:
String sid=session.getId();

删除会话:
当不需要会话时,可以立即将会话失效。session.invalidate();

会话超时:
由于http 协议是无状态的,因此判断用户是否活动的唯一机制是超时。所以要确保会话定期刷新。
可以使用session.getMaxInactiveInterval()方法获取最大超时时间,可以用session.setMaxInactiveInterval()方法进行设置。
在配置文件中web.xml这样设置:
<webapp>
    <session-config>
        <session-timeout>-1</session-timeout> 
   </session-config>
</webapp>
可以将会话设为永不超时。

会话范围:有page , session ,request , application ,但没有理解

application 对象:
application 对象提供方法:getAttribute()、setAttribute()、getAttributeNames()、removeAttribute()

边学边更新中....
posted on 2008-10-09 15:40 三晋一枝花 阅读(179) 评论(0)  编辑  收藏

只有注册用户登录后才能发表评论。


网站导航: