request.setAttribute一次传参数,速度快,缺点是参数只能取一次。
request.getSession().setAttribute保存参数,将参数放入后主要不清,就一直在,随时可以取来用。缺点是比较占用资源。
两个各有好处,根据实际情况使用。
第一个将变量放入request 也就是他的生存范围一个请求那么长
它适合用于但其应用的,比如菜单id
第二个是放入session,他的生命长度比第一个要长。
他适合长期应用的比如用户登陆信息
补充一点:
你这是servlet中的代码吧。
第二种,系统开销大,占用更多的内存。
request指一次请求,完了就死亡了
session指的是一次会话:也就是说只要1、浏览器不关,2、session不被人为的死亡,session就跟着走,比如说你登录邮箱后,你的用户名一直跟你走,session的应用 在购物车例子上是个很好的表现~!
第一个生命周期是request级别的
第二个生命周期是session级别的