【问题标题】:How do I display an image from my database in a JSP? [duplicate]如何在 JSP 中显示数据库中的图像? [复制]
【发布时间】:2015-11-13 04:28:02
【问题描述】:

我在显示数据库中的图像时遇到了一些问题。

文章.class

@Entity
@Table(name = "cmr_article", indexes = { @Index(columnList = "name",    unique = true) })
public class Article {

public static final int NAME_MAX = 50;
public static final int DESCRIPTION_MAX = 100;
public static final int FULL_MAX = 500;

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private long id;

@Column(nullable = false, length = NAME_MAX)
private String name;

@Column(nullable = false, length = DESCRIPTION_MAX)
private String description;

@Lob
@Column(nullable = false, length = FULL_MAX)
private String full;

@Column(nullable = false)
private String date;

@Column(nullable = false)
private byte[] data;

@ManyToOne
private User user;

文章保存:

@Transactional(propagation=Propagation.REQUIRED, readOnly=false)
public void articleSave2(long userId, ArticleForm articleForm) {
    User user = userRepository.findOne(userId); 
    DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm");
    Date date = new Date();
    Article article = new Article();
    article.setName(articleForm.getName());
    article.setDescription(articleForm.getDescription());
    article.setDate(dateFormat.format(date));
    article.setFull(articleForm.getFull());
    article.setData(articleForm.getData()); 
    article.setUser(user);
    articleRepository.save(article);
}

jps 文件:

<img src='<c:out value="${article.data}"></c:out>' />

问题是JSP文件中的图片不显示,显示代码:[B@6acdfc86。在 MYSQL 中,我看到我保存图像。如何更改代码以在我的 jsp 中查看图像?

【问题讨论】:

    标签: java spring jsp spring-mvc spring-data-jpa


    【解决方案1】:

    没有办法用原始字节数组和 JSP EL 来做你想做的事情。您要么需要将图像嵌入为base 64 data as described here,要么需要将图像保存到磁盘的某个位置并在src 属性中提供一个URL 来访问它。

    【讨论】:

      猜你喜欢
      • 2014-08-18
      • 1970-01-01
      • 1970-01-01
      • 2012-02-23
      • 2011-09-13
      • 1970-01-01
      • 2013-03-27
      • 2012-08-27
      • 2016-05-02
      相关资源
      最近更新 更多