这里有很多变量:图像是在数据库中还是在文件系统中,并且只有路径/
URI在数据库中?您如何在页面上显示它们?base64编码数据URI方案(
哎哟 对于没有缓存)?您如何加载它们?在页面加载之前的Action中,或在带有例如
<s:action />tag 的迭代中?
假设您拥有一个具有简单属性的对象,并且该对象
List<String>包含字节数组中的base64转换图像(使用Apache
Commons的enprebase64URLSafeString),这是一个基本方案:
class Row { private Long id; private String topic; private List<String> images; }并在到达视图之前在操作中加载这些对象的列表:
private List<Row> rows;public String execute(){ rows = loadRowsInSomeWay(); return SUCCESS;}然后在JSP中可以这样绘制它们:
<s:iterator value="rows"> <s:property value="id"/> <s:property value="topic"/> <s:iterator value="images"> <img /> </s:iterator></s:iterator>
编辑
假设您已经对一个图像进行了操作,并且具有类似上面的结构,并且具有一些属性和一个称为“
images”的String(或Long或其他内容)列表,其中包含
id这些图像的:
<s:iterator value="rows"> <s:property value="id"/> <s:property value="topic"/> <s:iterator value="images"> <img src="contentimage.action?contentID=<s:property />"/> </s:iterator></s:iterator>



