面试官搞偷袭竟然问我jsp如何判断session中是否有值?
为什么使用session传值?
我们在jsp中会操作一些表单的值。或者获得用户的值操作,那么我们就可以使用jsp的作用域操作,page、request、session、application这四个作用域,其中最常用的便是request和session的域操作。
使用session域操作,因为使用的web容器是Tomcat服务器,而session只要不关闭浏览器,它就会一直存在不会消失,还是就是时间的默认限制30分钟,那么接下来便是在jsp中使用session
session.setAttribute与getAttribute()方法
session.setAttribute("userSession",Object); 用来设置session值的,userSession是名称,object是你要保存的对象。 session.getAttribute("userSession"); 用来得到对应名称的session值,即得到object对象,注意需要进行类型转换!
session.setAttribute("xyyyy",xyyy);保存 session.getAttribute("xyyyy");取值
代码
//创建一个工具类(后期session传参时使用) public final static String USER_SESSSION="userSession";//作为传参
//jsp页面内容(使用java这种方式进行判断) <% if (session.getAttribute("userSession")==null || session.getAttribute("userSession")==""){ response.sendRedirect("login");//页面跳转 } %>
//控制器中的代码 result=logindao.login(username,password); session.setAttribute(Contants.USER_SESSSION,result); //result:传输内容 //Contants:定义的类名#面经##校招##java##Java开发##Java工程师#
java面经 文章被收录于专栏
分享Java里的一些遇到的问题与面试技巧