欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

java mvc 返回 json 亂碼

江奕云1年前9瀏覽0評論

Java MVC 是一種常見的 web 應用架構,它將應用程序分解為三個主要部分:模型 (Model)、視圖 (View) 和控制器 (Controller)。控制器接收并處理來自用戶的請求,調用指定的模型進行數據處理,并將處理后的數據傳遞給視圖進行呈現。

在 Java MVC 中,我們經常需要返回 JSON 數據給前端。但是,有時候我們會發現返回的 JSON 數據出現了亂碼的情況。

例如以下代碼:
// User 類
public class User {
private Long id;
private String name;
private Integer age;
// 省略 getter 和 setter
}
// UserController 類中的一個方法
@RequestMapping(value = "/getUser", method = RequestMethod.GET)
@ResponseBody
public User getUser() {
User user = new User();
user.setId(1L);
user.setName("張三");
user.setAge(18);
return user;
}

在這個例子中,我們定義了一個 User 類,并在 UserController 類中定義了一個返回 User 對象的 getUser 方法。在方法上使用 @ResponseBody 注解,表示返回的是 JSON 數據。

如果直接訪問 "/getUser" 接口,會發現返回的 JSON 數據中的名字出現了亂碼:{"id":1,"name":"??","age":18}。

產生這個問題的原因是,Spring 默認情況下使用的是 ISO-8859-1 編碼格式,而不是 UTF-8 編碼格式(JSON 數據默認使用 UTF-8 編碼)。因此,需要在配置文件中添加以下配置:

# application.properties 文件中添加以下配置
spring.http.encoding.force=true
spring.http.encoding.charset=UTF-8
spring.http.encoding.enabled=true

添加完上述配置后,再次訪問 "/getUser" 接口,就會發現返回的 JSON 數據中的名字不再是亂碼了。