Servlet的三个域对象

Servlet的三个域对象

我们在开发javaweb项目的时候,经常会遇到jsp和Servet之间互相传值,既然有传值,就要有对象来传,这里先说Servlet的三大域对象,request,session,application他们共同的特点都是通过键值对传值,这样也很好理解,键是唯一的,通过键可以找到值。

一、request

request汉译为请求需求,request代表的只是一次请求,当你点击一个链接,这就是依次请求,request只是一次请求有效,当你在跳转一次的时候和上一次就不是依次请求了。记住一句话,一次请求就是一个request,只对当前请求有效。


用法:用于一次请求之间的值的传递,在jsp页面设置有name属性的表单,在Servlet通过request对象获取属性值,注意request是jsp内置的九个对象之一,可以直接用
常用方法:

  1. request.setAttribute();

  2. request.getAttribute();

  3. request.getParameter();

注意传值的时候总是根据键值对传值

 

二、session

session会话,他的作用范围只是对一次会话有效,例如打开了一个浏览器访问网址,当你再打开另一个的时候就是两次会话了,当你关闭浏览器的时候本次会话就结束了,这次会话的session也就失效了,一次会话只对应一个session

用法:有时我们要在两个Servlet之间进行传值,用session比较方便,还有就是当用户登录之后,服务器记下这个session键值对,那么本次会话用户就不用二次登录了

常用方法:

  1. session.setAttribute();

  2. session.getAttribute();

在用上面的方法的时候先要获取session对象,在jsp页面中session属于九大内置对象,可以直接拿来用,在Servlet中必须先要获取session对象通过

HttpSession session = request.getSession();


在jsp页面直接拿来

<%session.setAttribute("key",value)%>


session对象进行传值也是通过键值对,键的值是唯一的

 

三、application

这个对象的范围比较大,他是作用于整个服务端,在你启动服务器创建application对象设置值,之后在本项目中都可以获取到,一个项目中只有一个对象,传值的时候根据键的不同区分,application在服务器关闭的时候销毁,

常用方法:

  1. application.setAttribute("key", value);

  2. application.getAttribute("key");

注意在Servlet中也是要获取application对象的,通过下面这句获取

 ServletContext application = request.getServletContext();

ServletContext也是属于JSP九大内置对象之一,故可以直接使用

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值