put encodebase64消息在mysql中当我得到这个消息时,我得到了不同的结果

6uxekuva  于 2021-06-24  发布在  Mysql
关注(0)|答案(2)|浏览(293)

我有问题,当我写一些信息''我有价值的数据库'udhg&#bdldd'但当我红和解码这个消息,我有'???'*

@Entity
public class Message {

    @Id
    private Integer id;

    @Column
    private String message;

    @Column(name = "message")
    public String getMessage() {
        return String(Base64.encodeBase64(message.getBytes())) : null;
    }

    @JsonIgnore
    public void setMessage(String message) {
        byte[] base64 = message.getBytes();
        this.body = new String(Base64.decodeBase64(base64));
    }
}
lawou6xi

lawou6xi1#

getbytes():此方法使用平台的默认字符集将此字符串编码为字节序列,并将结果存储到新的字节数组中。
可能与数据库使用的平台字符集不同。

ppcbkaq5

ppcbkaq52#

您应该使用unicode转换格式:utf-8 <String>.getBytes(Charset.forName("UTF-8"))

相关问题