Java 如何从数据库中检索多个blob图像
嗨,我正在使用SpringMVC和hibernate。我想从数据库中检索多个blob图像,并希望在jsp中显示。我试了很多,但没有得到富有成效的答案。如果有人提供链接或示例代码,那对我来说就太好了。我使用的是服务器端代码,它适合我 弹簧控制器Java 如何从数据库中检索多个blob图像,java,image,hibernate,spring-mvc,jstl,Java,Image,Hibernate,Spring Mvc,Jstl,嗨,我正在使用SpringMVC和hibernate。我想从数据库中检索多个blob图像,并希望在jsp中显示。我试了很多,但没有得到富有成效的答案。如果有人提供链接或示例代码,那对我来说就太好了。我使用的是服务器端代码,它适合我 弹簧控制器 如果您已经在使用spring,还可以查看spring数据和数据存储库。 有很多例子说明了它在实际应用中的表现: 如果使用最新版本,则可以流式传输结果。如果有性能问题,您可以异步加载图像。如果可以,您应该单独保存图像并将其路径存储在DB中。这样,如果数据库损
如果您已经在使用spring,还可以查看spring数据和数据存储库。 有很多例子说明了它在实际应用中的表现:
如果使用最新版本,则可以流式传输结果。如果有性能问题,您可以异步加载图像。如果可以,您应该单独保存图像并将其路径存储在DB中。这样,如果数据库损坏,则图像是安全的,如果图像损坏,则数据库是安全的您有更快的响应时间。根据项目要求,我将此保存为BLOB,并希望在jsp中显示它。但是我不知道怎么做。你用的是什么数据库?我用的是MySQL。你在你的数据库中存储blob图像吗?您将如何在jsp页面中显示此图像?是的,blob图像仅存储在数据库中。调试该代码您是否在imageList中获取图像返回类型希望它能工作..在jsp页面中显示图像如何?像这样你能上传你的模型课吗?
@RequestMapping(value ="/getImages", method = RequestMethod.GET)
@ResponseBody
public List<Product> getStateList(HttpServletResponse response, HttpServletRequest request) {
List<Product> image = imageService.getImageList();
List<Product> imageList= new ArrayList<Product>();
for (Product m : new ArrayList<Product>(image)) {
String base64Encoded = javax.xml.bind.DatatypeConverter.printBase64Binary(m.getImage());
Product imagepath = new Product();
imagepath.setImagePath(base64Encoded);
imagepath.setItemName(m.getItemName());
imageList.add(imagepath);
}
return imageList;
}
public List<Product> getImageList() {
String getImageQuery = "FROM Product";
Query query = sessionFactory.getCurrentSession().createQuery(getImageQuery);
@SuppressWarnings("unchecked")
List<Product> imgList = query.list();
return imgList;
}
@Entity
@Table(name="imageUpload")
public class ImageUpload {
@Id
@Column(name="eloraId")
private int eloraId;
@Column(name="password")
private String password;
@Column(name="ownerName")
private String ownerName;
@Column(name="registeredId",columnDefinition="mediumblob")
private byte[] registeredId;
@Column(name="hospPanCard")
private String hospPanCard;
@Column(name="hospRegCert",columnDefinition="mediumblob")
private byte[] hospRegCert;
@Column(name="ownerPanCard",columnDefinition="mediumblob")
private byte[] ownerPanCard;
@Column(name="ownerselfDec",columnDefinition="mediumblob")
private byte[] ownerselfDec;
@Column(name="ownerAddProof",columnDefinition="mediumblob")
private byte[] ownerAddProof;
@Transient
private String statusMessage;
}