unicode从redis返回stringredistemplate java中的奇怪字符

tvmytwxo  于 2021-07-09  发布在  Java
关注(0)|答案(1)|浏览(400)

我想储存葡萄牙语单词 'como você está' 在redis的钥匙。值以unicode格式在redis中设置 'como voc\x88 est\xa0184\' 在redis。但是在获取价值的同时 StringRedisTemplate 在java中,我得到了一些奇怪的值,比如 'como voc� est�184' . 我尝试了下面的代码,但它不工作。

template.setKeySerializer(new StringRedisSerializer());
template.setValueSerializer(new StringRedisSerializer());
template.setHashKeySerializer(new StringRedisSerializer());
template.setHashValueSerializer(new StringRedisSerializer());

这里模板对象是 StringRedisTemplate 班级。有没有什么机制可以让这些特殊人物回来?

j1dl9f46

j1dl9f461#

试着把这个放进你的口袋里 application.properties 文件:

spring.http.encoding.charset=UTF-8 # the encoding of HTTP requests/responses
spring.http.encoding.enabled=true # enable http encoding support
spring.http.encoding.force=true # force the configured encoding

相关问题