私はデータベースにヒンディー語を保管しています。 私のfetchメソッドでは、私はobjectMapper
を使用しています。これはヒンディー語フォントを特殊文字に変換しています。 objectmapper
なしでうまくいきます。objectMapperはヒンディー語のテキストを特殊文字に変換します "???"
@CrossOrigin
@RequestMapping(value = "", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE)
public ResponseEntity<?> fetchDepartmentInfo() {
try {
List<Map<String, Object>> departmentList = departmentServices.fetchDepartments();
if (departmentList == null || departmentList.isEmpty())
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
else
return new ResponseEntity<String>(new ObjectMapper().writeValueAsString(departmentList), HttpStatus.OK);
} catch (Exception e) {
System.out.println(e);
return new ResponseEntity<>(HttpStatus.BAD_REQUEST);
}
}
O/P:
[
{
"department": "?? ?? ?????",
"departmentId": 1
}
]
が、それは次のようになります。
[
{
"department": "जल कल विभाग",
"departmentId": 1
}
]
文字列へのシリアル化中にこの破損が発生していて、入力を読み取っていないことが確実ですか?デバッガを使用して、まず 'departmentList'に正しい値が含まれていることを確認します。 – AlexR
objectmapperを削除すると、期待通りの結果が返されます。そう、はい、objectmapperの問題。 –