在MYSQL数据库中存储base64字符串的最佳方法是什么?

时间:2016-11-01 10:04:29

标签: java html mysql hibernate base64

我正在开发一个小型Web应用程序,我必须将用户的图像存储到Mysql数据库中。我是hibernate框架的新手,我来到这里。我已将图像转换为Base64字符串。任何人都可以建议我如何使用hibernate将此字符串存储到数据库中。

2 个答案:

答案 0 :(得分:3)

除非您可以为Base64 String定义最大尺寸,否则存储图片内容的最佳方式不是将其存储为Base64 String,而是将其存储为JPA JPA只需使用@Lob @Basic(fetch = FetchType.LAZY) private byte[] image; 注释@Lob(代表大对象)和#macro( tablerows $color $values ) #foreach( $value in $values ) <tr><td bgcolor=$color>$value</td></tr> #end #end #set( $greatlakes = ["Superior","Michigan","Huron","Erie","Ontario"] ) #set( $color = "blue" ) <table> #tablerows( $color $greatlakes ) </table> 注释@Basic(fetch = FetchType.LAZY)来定义字段,就可以得到一个字节数组(因为它可能很大)如果您希望懒散地获取它,请按下一步:

<table>
<tr><td bgcolor="blue">Superior</td></tr>
<tr><td bgcolor="blue">Michigan</td></tr>
<tr><td bgcolor="blue">Huron</td></tr>
<tr><td bgcolor="blue">Erie</td></tr>
<tr><td bgcolor="blue">Ontario</td></tr>
</table>

答案 1 :(得分:0)

我推荐以下

@keyframes flip {
  0% {
    transform: rotateX(50deg) rotateY(0deg);
  }
  60% {
    transform: rotateX(0deg);
  }
  100% {
    transform: rotateX(0deg) rotateY(180deg);
} 
}

@Lob @Basic(fetch = FetchType.LAZY) @Column(name = "file64", columnDefinition = "LONGBLOB") private byte[] file64; 可以保存更大的内容。