javaEE中的session的理解及session 运用

  在服务器上,通过session来区分每一个上网用户,用户只要连上服务器,就会立即分配一个Session 给用户

  Session 主要方法:

    服务器上通过session给每一个用户分配一个不会重复的session ID,sessionID 是由服务器统一管理的,人为不能控制。

    session.getId();  长度:32

  判断是否为新的session

    public boolean isNew();

  Session的属性设置

    设置属性:public void setAttribute(String name,Object value);

    取得属性:public Object getAttribute(String name)

    删除属性:public void removeAttribute(String name)

  注销用户:让用户的session失效

    如果session失效,则在session所保留的全部操作也会消失

    public void invaldate() 是session失效(手工)

    如果session长时间不被使用,也会自动失效

  得到session的创建时间

    public long getCreateTime()

    此方法放回long类型,通过new Date()可以取得一个完整时间

    取得用户最后操作的时间:pubic long getLastAccessedTime();

  总结

  Session将信息保存在服务器上,而cookie保存在客户端上

  Session比Cookie更安全,Session比Cookie更占资源

  开发原则:Session 要尽量少用,尽量少向Session中保存信息

  Session使用了Cookie的机制,如果Cookie被禁用,则Session也无法使用,因为客户端的Session ID以Cookie的形式存在,保存在客户端的内存中,我们可以通过url重写来保证session的有效性。

  重写URL的方法如下

  resp.encodeURL(request.getRequsetURL().toString());

 

posted @ 2017-07-17 16:41  legends  阅读(1013)  评论(0编辑  收藏  举报