将 JSP EL byte[] 转换为图像?
convert JSP EL byte[] to image?
我有一个 jsp 页面,如下所示:
<c:forEach var="employeeVO" items="${list}">
<img src="data:image/jpeg;base64,${employeeVO.employee_pic}" alt="Card image cap"/>
<h5>${employeeVO.employee_position}</h5>
<p>${employeeVO.employee_salary}</p>
</c:forEach>
其中 ${employeeVO.employee_position} 和 ${employeeVO.employee_salary} 工作得很好,因为它们都是字符串类型
我的问题是 ${employeeVO.employee_pic} 这会 return byte[] 我不知道如何将其转换为合法来源?
当我检查页面源代码时,它显示如下:
src="data:image/jpeg;base64,[B@59e9139b"
如果需要更多信息,请告诉我。谢谢。
您不能简单地在 html 中表示 byte[]。
您可以在编写 html 时将文件数据表示为 base64 格式。问题是您发送的不是 base64 字符串,而是字节 []。
您需要按照读取数据的方式公开数据。即需要表示为base64字符串。
为此,您可以在 employeeVO 中创建一个 getter,returns 以 base64 字符串表示文件。举个例子
public String getEmployee_picAsBase64 (){
... do logic to convert file in a base64 string and return it.
}
那么,你可以在html中这样写:
<img src="data:image/jpeg;base64,${employeeVO.employee_picAsBase64}" alt="Card image cap"/>
我有一个 jsp 页面,如下所示:
<c:forEach var="employeeVO" items="${list}">
<img src="data:image/jpeg;base64,${employeeVO.employee_pic}" alt="Card image cap"/>
<h5>${employeeVO.employee_position}</h5>
<p>${employeeVO.employee_salary}</p>
</c:forEach>
其中 ${employeeVO.employee_position} 和 ${employeeVO.employee_salary} 工作得很好,因为它们都是字符串类型
我的问题是 ${employeeVO.employee_pic} 这会 return byte[] 我不知道如何将其转换为合法来源?
当我检查页面源代码时,它显示如下:
src="data:image/jpeg;base64,[B@59e9139b"
如果需要更多信息,请告诉我。谢谢。
您不能简单地在 html 中表示 byte[]。
您可以在编写 html 时将文件数据表示为 base64 格式。问题是您发送的不是 base64 字符串,而是字节 []。
您需要按照读取数据的方式公开数据。即需要表示为base64字符串。
为此,您可以在 employeeVO 中创建一个 getter,returns 以 base64 字符串表示文件。举个例子
public String getEmployee_picAsBase64 (){
... do logic to convert file in a base64 string and return it.
}
那么,你可以在html中这样写:
<img src="data:image/jpeg;base64,${employeeVO.employee_picAsBase64}" alt="Card image cap"/>