博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
EL表达式中,param和requestScope的区别
阅读量:4677 次
发布时间:2019-06-09

本文共 1052 字,大约阅读时间需要 3 分钟。

在看param和requestScope之前,不妨先了解下在java下request的情况:

1. request对象通常用来接收客户端提交到服务端的数据,如:在servlet或者action中可以用request.getParameter()的方法获取获取参数内容;

2. requestScope通常是在servlet或者action的服务端中通过request.setAttribute()方法把数据放到request对象中供客户端获取,然后客户端获取的方法就是requestScope.getAttribute()。

1. getParameter

可以获取URL中传递过来的String参数,如: 中的abc;

提示:对于POST/GET提交的表单,在服务器端我们都可以通过request.getParameter获取表单中的值。

当我们在进行一个请求重定向(redirect)的时候,我们可以通过request.setParameter传递参数,如果用request.setAttribute在重定向页面是取不到值的。

(待验证,因为HttpServletRequest中没有setParameter方法。)

2. getAttribute:

获取的是一个对象(Object)。

当我们进行一个请求转发(forward)的时候,可以使用request.setAttribute传递参数。

3. requestScope作为El表达式中的使用:

是EL表达式中的一个隐含对象,类似request,如:${requestScope.username} 表示在request域中取得username属性所对应的值,相当于request.getAttribute(“username”)。

4. param,El表达式中的使用

${param.username} 可理解为:request.getParameter(“username”);

结论:

${param.name} 等价于 request.getParamter("name"),这两种方法一般用于服务器从页面或者客户端获取的内容,这些内容都是String的。

${requestScope.name} 等价于 request.getAttribute("name"),一般是从服务器传递结果到页面,在页面中取出服务器端保存的值!

转载于:https://www.cnblogs.com/damoblog/p/8250345.html

你可能感兴趣的文章
(Dynamic Proxy)动态代理模式的Java实现
查看>>
sql三大范式
查看>>
关于TP5模板输出时间戳问题--A non well formed numeric value encountered
查看>>
js延迟加载
查看>>
如何在win 2008 server和win 7上add web site
查看>>
[Selenium]如何实现上传本地文件
查看>>
★不评价别人的生活,是一个人最基本的修养
查看>>
centos 7 下vnc弹出窗口太小解决方法
查看>>
SpringCloud Feign的分析
查看>>
使用MD5WithRSA来签名和验签(.NET)
查看>>
异常:This application has no explicit mapping for /error, so you are seeing this as a fallback.
查看>>
使用gifplayer操作gif的方法
查看>>
利用SOAtest建立自动化测试验证网站是否成功加载
查看>>
一些鲜为人知却非常实用的数据结构 - Haippy
查看>>
【C#】C#线程_I/O限制的异步操作
查看>>
Flask-SQLAlchemy
查看>>
kettle参数、变量详细讲解[转]
查看>>
C# - Generics
查看>>
.NET LINQ 转换数据类型
查看>>
[LGP2791] 幼儿园篮球题
查看>>