San*_*ejű 2 java spring jsp image
我想使用Spring MVC 3 显示图像和字符串.两者都是我使用Hibernate从数据库中检索的POJO的实例变量.
@Entity
@Table(name = "document")
public class Document {
//id
@Column(name = "name")
private String name; // the String
@Basic(fetch = FetchType.LAZY)
@Column(name="content")
private byte [] image;
//getters setters
Run Code Online (Sandbox Code Playgroud)
我想显示使用Spring MVC 3 .jsp页面上的图像和显示旁边的字符串.目前我只能通过流式传输并将字符串打印到控制台来显示图片,但这不是我想要的.(当然我可以显示字符串,但是如果我显示字符串,那么我就无法显示图像.)我想在同一页面上同时显示两者.
@RequestMapping(value = "/displayDocument", method = RequestMethod.POST)
public void displayDocument(@RequestParam("documentId") String documentId, HttpServletResponse response) {
Document doc = documentService.get(Long.valueOf(documentId));
System.out.println(doc.getName());
if (doc.getImage() != null) {
response.setContentType("image/jpg");
try {
response.getOutputStream().write(doc.getImage());
response.getOutputStream().flush();
response.getOutputStream().close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
Run Code Online (Sandbox Code Playgroud)
我不想相信没有任何聪明的解决办法来实现这一目标....
我认为你对http协议的工作原理有点误解.图像总是在通过web浏览器自动一个单独的请求获取(这也无二<script>,<style>,<img>和一些其他的标记).所以基本上,你想构建一个JSP页面,你可以在其中显示名称
<img src="/viewimage?id=${theDocumentId}"/>.
viewimage可能是您提供图像的servlet.
| 归档时间: |
|
| 查看次数: |
5759 次 |
| 最近记录: |