FreeMarker 获取页面request、session
使用Request里的Attribute值最简单的方法就是直接${AttributeName}或者安全一点:${AttributeName!"default Value"}
1.取Application范围的对象
xml 代码
1. <#if Application.myApplicationAttribute?exists>
2. ${Application.myApplicationAttribute}
3. </#if>
或者 : ${Application.myApplicationAttribute!"default value"}
2.取session范围的对象
xml 代码
1. <#if Session.mySessionAttribute?exists>
2. ${Session.mySessionAttribute}
3. </#if>
或者 : ${Session.mySessionAttribute!"default value"}
3.取request范围的对象
xml 代码
1. <#if Request.myRequestAttribute?exists>
2. ${Request.myRequestAttribute}
3. </#if>
或者 : ${Request.myRequestAttribute!"default value"}
4.取request parameter范围的对象
xml 代码
1. <#if Parameters.myParameter?exists>
2. ${Parameters.myParameter}
3. </#if>
或者 : ${Parameters.myParameter!"default value"}
5.取context parameter范围的对象
xml 代码
1. ${stack.findValue('#myContextParam')}
request 对象直接对应 HttpServletResponse
例如 获取 当前网页地址: ${request.requestURL}
客户端IP地址: ${request.getRemoteAddr()} 或者 ${request.remoteAddr}
提交方式: ${request.method}
等等
Request: 用于获取Request对象中的attribute对象。
例如:${Request["myRequestAttribute"]} 这样是直接在页面输出属性值。相当于request.getAtrribute("myRequestAttribute");
如果要对这个值进行判断就必须使用如下格式:<#if Request["myRequestAttribute"]="edit">
或者 : ${Request["myRequestAttribute"]!"default value"}
Session:用于获取Session 对象中的attribute对象。
用法参照Request的用法。
Application:用于获取 Application(ServletContext)对象中的attribute对象。
用法参照Request的用法。
RequestParameters:用 于获取Request对象的parameter参数(浏览器端发送的请求数据)
例如:${RequestParameters["myRequestAttribute"]}等同于 request.getParameter("myRequestAttribute");
Parameters:属性获取,依次从 RequestParameters、Request、Session、Application对象中获取对应属性/参数,一旦获取,则不再向下查找。
例如:${Parameters["myRequestAttribute"]}
- ${Request["a"]}
- ${RequestParameters["a"]}
- ${Session ["a"]}
- ${Application ["a"]}
- ${JspTaglibs ["a"]}
- 注意RequestParameters等内部对象时常不能获得所以要:
- ${RequestParameters?default({})["_errors"]?default("params")}
- ${Request["request"]?default("request")}
- ${Session["session"]?default("session")}
- ${Application["ctx"]?default("ctx")}
- ${RequestParameters?default({})?keys?size}
- ${Request?keys?first}
- Freemarker可以直接取pageContext,requestAttribute,session,application中的数据,就是不能取requestParameter;
FreeMarker 获取页面request、session的更多相关文章
- FreeMarker 获取页面appplication、request、session
使用Request里的Attribute值最简单的方法就是直接${AttributeName}或者安全一点:${AttributeName!"default Value"} 1.取 ...
- struts2标签获取parameter,request,session,application中的值
http://localhost:8080/demo/index.jsp?flag=kkkk <s:property value="#parameters.flag" /&g ...
- 关于页面跳转之后获取不到session数据的问题
暂时的解决方法有两种,亲测有效: 方法一: 将页面跳转方式由a标签改为请求转发request.getRequestDispatcher("stu_list.jsp").forwa ...
- Struts2初学 Struts2在Action获取内置对象request,session,application(即ServletContext)
truts2在Action中如何访问request,session,application(即ServletContext)对象???? 方式一:与Servlet API解耦的方式 可以使用 ...
- servlet中使用request.getHeader("referer")获取页面从哪跳转过来的
问题 servlet中使用request.getHeader("referer")获取页面从哪跳转过来的,利用这个方法可以判断网页是否正常登录.我做了一个javaweb小项目,其中 ...
- 在Servlet端获取html页面选中的checkbox值,request获取页面checkbox(复选框)值
html端代码: 选项框: <input type="checkbox" name="crowd" value="选项一">选项 ...
- struts2 action中获取request session application的方法
共四种方式: 其中前两种得到的是Map<String,Object> 后两种得到的才是真正的request对象 而Map就是把request对象中的属性取出做成了键值对而已. [方法一] ...
- spring security+freemarker获取登陆用户的信息
spring security+freemarker获取登陆用户的信息 目标页面之间获取 ${Session.SPRING_SECURITY_CONTEXT.authentication.princi ...
- freemarker获取变量的范围的问题
今天做freemarker的时候,想用一下全局的变量.就是在a.ftl 和 b.ftl页面里面,使用a.action里面放入request的变量.a.action的视图页面是a.ftl ,b.ftl是 ...
随机推荐
- Config程序配置文件(configSections)操作实践及代码详注
所有与配置文件相关的类:(粗体为一般情况下使用到的类,其它类功能可能在很复杂的情况下才使用到.) 1.ConfigurationManager,这个提供用于打开客户端应用程序集的Configurati ...
- 莫烦PyTorch学习笔记(六)——批处理
1.要点 Torch 中提供了一种帮你整理你的数据结构的好东西, 叫做 DataLoader, 我们能用它来包装自己的数据, 进行批训练. 而且批训练可以有很多种途径. 2.DataLoader Da ...
- groupBy 后附加数量和每组百分比
SELECT i_State, n, , ) rat FROM ( SELECT * FROM ( ) n FROM planinfo GROUP BY i_State ) t1 ) s ) t
- 数据交互 axios 的使用
Axios 是一个基于 promise 的 HTTP 库,可以用在浏览器和 node.js 中. ##Axios npm version build status code coverage npm ...
- PAT甲级——A1080 Graduate Admission
It is said that in 2011, there are about 100 graduate schools ready to proceed over 40,000 applicati ...
- StringBuffer清空
转载自:http://blog.sina.com.cn/s/blog_56fd58ab0100qfcz.html 在开发程序的时候,经常使用StringBuffer来进行字符串的拼接.如果在循环中来反 ...
- EF中的DbContext类
使用先前的数据上下文,可以通过使用LINQ查询,按字母顺序检索出所有专辑,代码如下
- 使用flags定义命令行参数
TensorFlow定义了tf.app.flags,用于支持接受命令行传递参数,其中tf.app.flags.DEFINE_xxx()是添加命令行的optional argument(可选参数),而t ...
- css 超出两行省略号,超出一行省略号
参考:https://www.cnblogs.com/yangguojin/p/10301981.html 超出一行省略: p{ white-space:nowrap; overflow:hidden ...
- 【心无旁骛】vuex-typescript-example
我不惮以最大的赞美去赞美这样的项目,真的是非常有创意又有能力. 先放上我喜欢的这个项目的开源地址:https://github.com/gluons/vuex-typescript-example 我 ...