我有一个字节数组,如下所示,
byte b1[] = {-127, -87, -32, -112};
当我尝试将其转换为字符串时,它会显示黑钻像字符,我想将其插入数据库。
我应该将哪个字符集用于数据库?
我试过了utf8mb4
和CP1250
?我使用mysql version 5.7.14
?
插入时出现以下错误:
java.sql.SQLException: Incorrect string value: '\xEF\xBF\xBD\xEF\xBF\xBD...' for column
以下是代码:
byte b1[] = {-127, -87, -32, -112};
TRNRequest tr = new TRNRequest();
tr.set(new String(b1));
trnRequestService.saveTransactionRequest(tr);
trnRequestService
是 dao layer service ,它将对象存储在数据库中,TRNRequest
是我的类,我使用 Hibernate 进行数据库连接。我想读这个角色
public class DbByteInsert {
public static void main(String[] args) {
System.out.println(new String(new byte[]{ 48, 50}));
System.out.println(new String(new byte[]{ -127, -87, -32, -112}));
}
}
检查这个例子我能够在db中插入第一个字节数组但是我不能插入第二个..!