1
我想显示具有图像的细节。其实可能是一个没有形象的人。这里是我的控制器来显示它如何在春天显示存储在数据库中的图像mvc
@RequestMapping(value="/Hows/{categoryId}/{categoryName}",method=RequestMethod.GET)
public String showHowsCategory(@PathVariable("categoryId")int category,Model model,HttpServletRequest request){
int page = 1;
if(request.getParameter("page")!=null)
page = Integer.parseInt(request.getParameter("page").toString());
ListHows = showCategoryService.showAllHowInCategory(category,(page- 1)*pageSize,pageSize);
for(int i=(page-1)*pageSize;i<pageSize;i++){
byte[] binaryData = ListHows.get(i).getImage();
if(binaryData != null){
try {
byte[] encodeBase64 = Base64.encode(binaryData);
String base64Encoded = new String(encodeBase64, "UTF-8");
imageList.add(base64Encoded);
} catch (Exception e) {
e.printStackTrace();
}
}
}
model.addAttribute("image", imageList);
model.addAttribute("howList",ListHows);
并在jsp视图中使用此代码。但不显示图像。
<c:forEach var="how" items="${howList}" varStatus="counter">
<c:set var="url" value="${how.how}"/>
<c:set var="count" value="0" />
<div class="table">
<div style="float: left;margin-left: 10px;">
<c:if test="${how.image != null}">
<img src="data:image/jpeg;base64,${image[count]}" width="150" height="120"/>
<c:set var="count" value="${count + 1}" />
</c:if>
<c:if test="${how.image == null}">
<img width="150" height="120" src="<c:url value="/resources/images/how.jpg" />"/>
</c:if>
</div>
我的问题是什么?
当我使用此model.addAttribute(“image”,imageList.get(2))并在jsp视图其工作。 – 2014-10-20 22:39:28
是的,我了解你的情况,但你在另一个列表中使用foreach。 也许你需要把图像的数据放入howList。你可以像这样重现。 当你开始循环时,你的计数总是为零,所以你总是得到$ {image [0]} – 2014-10-20 22:48:54
,但是通过这个 。为什么要显示一个图像>如何将它放入howList? –
2014-10-20 22:57:37