Struts2 导出 JSP 到 Excel
Struts2 Export JSP to Excel
在 .jsp 文件中,我迭代了 userList 和 header 列表。标签的 id 属性包含列表中存在的数据实例。此 ID 在 java 小脚本中用于实现应用程序逻辑。
<logic:iterate id="a" name="ExcelForm" property="userList">
<tr>
<logic:iterate id="b" name="ExcelForm" property="header">
<td>
String a = (data.get(header) instanceof String)? ((String) data.get(header)) : (((String[])data.get(header)).length > 1000 ? ((String[])data.get(header))[1000] : "");
....
%>
</td>
</tr>
</logic:iterate>
需要将其转换为 Struts2,但我不知道如何在 scriptlet 中使用 OGNL 变量。
<s:iterator var="a" value="%{userList}">
<tr>
<s:iterator var="b" value="%{header}">
<td>
String a = (data.get(header) instanceof String)? ((String) data.get(header)) : (((String[])data.get(header)).length > 1000 ? ((String[])data.get(header))[1000] : "");
....
%>
</td>
</s:iterator>
</tr>
</s:iterator>
您可以使用 s:set
tag 在指定范围(默认为操作范围)中创建变量,并根据 OGNL 表达式求值为其分配一个值。
<s:set var="a" value='%{(data.get(header) instanceof String)? ((String) data.get(header)) : (((String[])data.get(header)).length > 1000 ? ((String[])data.get(header))[1000] : "")}'/>
在 .jsp 文件中,我迭代了 userList 和 header 列表。标签的 id 属性包含列表中存在的数据实例。此 ID 在 java 小脚本中用于实现应用程序逻辑。
<logic:iterate id="a" name="ExcelForm" property="userList">
<tr>
<logic:iterate id="b" name="ExcelForm" property="header">
<td>
String a = (data.get(header) instanceof String)? ((String) data.get(header)) : (((String[])data.get(header)).length > 1000 ? ((String[])data.get(header))[1000] : "");
....
%>
</td>
</tr>
</logic:iterate>
需要将其转换为 Struts2,但我不知道如何在 scriptlet 中使用 OGNL 变量。
<s:iterator var="a" value="%{userList}">
<tr>
<s:iterator var="b" value="%{header}">
<td>
String a = (data.get(header) instanceof String)? ((String) data.get(header)) : (((String[])data.get(header)).length > 1000 ? ((String[])data.get(header))[1000] : "");
....
%>
</td>
</s:iterator>
</tr>
</s:iterator>
您可以使用 s:set
tag 在指定范围(默认为操作范围)中创建变量,并根据 OGNL 表达式求值为其分配一个值。
<s:set var="a" value='%{(data.get(header) instanceof String)? ((String) data.get(header)) : (((String[])data.get(header)).length > 1000 ? ((String[])data.get(header))[1000] : "")}'/>