ognl表达式

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>

你可能感兴趣的:(Ognl)