解决java.sql.SQLException: Incorrect string value: '\xAC\xED\x00\x05sr…' 错误

解决方式:

1.仔细对比传入的参数的类型,名称和用来接收的对象的类型名称是否对应

比如下边,title传入数字,后台要接受的是字符串

前端参数:

{
  "author": "张三",
  "content": "从水电费身无分文额",
  "title":123456,
}

对象:

Article article ;

private String author;

private String content;

private String title;

 

2.仔细检查用来接收数据的对象是否定义正确,是否有多个属性对应同一字段,本人的错误就是这种情况

属性上边使用了@TableField指定对象属性对应的mysql表字段,但是由多对一,在接收数据时报错。

@TableField("ansUserId")
private String ansUserId;

@TableField("ansUserId")
private String name;
根据引用,这个错误是由于在MySQL的某个列中插入了不正确的字符串值导致的。引用中的测试结果显示,当数据库表的字符集是utf8mb4时,执行了"SET NAMES utf8"会导致4字节字符写入MySQL失败。而引用中的变量设置显示,数据库的字符集是utf8mb4。因此,要解决这个错误,你需要确保在插入数据之前将连接的字符集设置为utf8mb4,而不是utf8。 在Java中,可以通过使用以下代码将连接字符集设置为utf8mb4: ```java String url = "jdbc:mysql://localhost/db_name?useUnicode=true&characterEncoding=utf8mb4"; Connection conn = DriverManager.getConnection(url, username, password); ``` 注意,上述代码中的"db_name"应替换为你的数据库名称,"username"和"password"应替换为你的数据库用户名和密码。 这样设置后,你的Java程序将能正确插入包含4字节字符的值到MySQL数据库中,解决错误。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [mysql字符集utf8mb4失效踩坑](https://blog.csdn.net/sz85850597/article/details/99695874)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] - *3* [### Cause: java.sql.SQLException: Incorrect string value:\xF0\x9F\x96\x8B \xE7...‘ for column ...](https://blog.csdn.net/u011488009/article/details/107317632)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值