ognl表达式最关键的几句话
1:ognl context中的值,一般以#开头获取值(如果值放在值栈中#可以省略)
例如:放在request作用域的name值,通过value=“#request.name”来获取
2:在ognl表达式中使用el表达式获取值,或先从值域中获取值,如果没有获取到再从值栈中获取值
3:其他一部分标签使用如下
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%><%@ taglib uri="/struts-tags" prefix="s"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Insert title here</title></head><body><%request.setAttribute("username","李白");session.setAttribute("username","读普");%><h1>表达式</h1><%=request.getAttribute("username") %><br><%=session.getAttribute("username") %><h1>el表达式</h1>${username }<br>${sessionScope.username }<br><h1>ognl表达式</h1><s:property value="#request.username"/><br><s:property value="#session.username"/>
<h1>ognl获取list的值</h1>
<!-- list默认存放在ognl context值栈中 --><s:set var="list" value="{'mike','rose','绽放三'}"></s:set><s:iterator value="list" id="s" >${s }****<!-- 默认获取值栈中的值 --><s:property/>++++<!-- 获取值栈中具体的值 --><s:property value="s"/><br/></s:iterator><h1>获取map集合的值</h1>
<!-- map集合设置值时要在前面加“#“--><s:set var="maps" value="#{'key1':10,'key2':20,'key3':30}"></s:set><s:iterator value="maps"><s:property/>*********<s:property value="key"/>=<s:property value="value"/>+++++${key }=${value }<br/></s:iterator> <h1>s:if标签</h1><s:if test="'mike' in {'jack','rose'}">用户存在</s:if><s:else>用户不存在</s:else></body>
</html>