JAVA中怎么使用session
怎么引用, 实例,一些常用方法和这些方法的使用方法说明。
谢谢>.<........
========================================================
在java文件里,已经引用了HttpSession
实例HttpSession hs= new HttpSession();最后一段报错?!
该怎么正确实例?
还有
ArrayList al=放了很多值
session.set~~~("key",al)
out.print(session.get~~~("key"));
这样可以把所有值都打出来,但我get这个key后,我要把里面的值便利一遍,一各个单独拎出来和另个值做比对,这样的话该怎么做?
题目已经提高10分悬赏 展开
不考虑框架下,在JAVA中使用session
大概有以下几种使用方法:
1、前台设置:利用jsp的内置对象session进行设置。
<%
session.setAttribute("username", username);
%>
2、后台设置:
(1)Filter设置:
public class MyFilter implements Filter {
@Override
public void doFilter(ServletRequest arg0, ServletResponse arg1, FilterChain chain) throws IOException, ServletException {
//把请求和响应对象强制转换为HttpServlet域对象
HttpServletRequest request = (HttpServletRequest)arg0;
HttpServletResponse responce = (HttpServletResponse)arg1;
HttpSession session = request.getSession(false);
session.setAttribute("username", username);
}
}
(2)Servlet设置:
public class MyServlet extends HttpServlet {
//doGet()与doPost()任选
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//创建session对象
HttpSession session = request.getSession(false);
session.setAttribute("username", username);
}
}
扩展资料:
Session:在计算机中,尤其是在网络应用中,称为“会话控制”。Session
对象存储特定用户会话所需的属性及配置信息。
这样,当用户在应用程序的 Web 页之间跳转时,存储在 Session
对象中的变量将不会丢失,而是在整个用户会话中一直存在下去。
当用户请求来自应用程序的 Web 页时,如果该用户还没有会话,则 Web
服务器将自动创建一个 Session 对象。当会话过期或被放弃后,服务器将终止该会话。
Session
对象最常见的一个用法就是存储用户的首选项。例如,如果用户指明不喜欢查看图形,就可以将该信息存储在 Session 对象中。
有关使用
Session 对象的详细信息,请参阅“ASP 应用程序”部分的“管理会话”。注意 会话状态仅在支持 cookie 的浏览器中保留。
session的工作原理:
1、当一个session第一次被启用时,一个唯一的标识被存储于本地的cookie中。
2、首先使用session_start()函数,PHP从session仓库中加载已经存储的session变量。
3、当执行PHP脚本时,通过使用session_register()函数注册session变量。
4、当PHP脚本执行结束时,未被销毁的session变量会被自动保存在本地一定路径下的session库中,这个路径可以通过php.ini文件中的session.save_path指定,下次浏览网页时可以加载使用。
参考资料:百度百科 ------ session
HttpSession session = request.getSession();
session.setAttribute("变量名", 值对象);
session.getAttribute("变量名"); //此时取出来的是Object, 一般需要强转
session.removeAttribute("变量名");
session.invalidate(); //删除所有session中保存的键
------------------------------------------------------
HttpSession是不能new出来的,
要从HttpServletRequest中调用getSession方法得到.
一般也就是request.getSession();
使用request对象获取session,然后进行操作。
1,引入包servlet-api.jar 。
2,使用request获取session:HttpSession session = request.getSession();
3,对session的操作:
session.setAttribute("key", value);
session.getAttribute("key");
session.removeAttribute("key");
session.invalidate(); //删除所有session中保存的键
session.setAttribute('s','t');
然后这样取出t
session.getAttribute('s');
session.getAttribute(变量名);//获取
使用完后
session.removeAttribute("变量名");//移出