Spring Boot从入门到放弃-消息转换器

目录:

第一个程序 hello World

Spring Boot 关闭某些自动配置

Spring Boot 修改banner

Spring Boot 全局配置文件

Spring Boot 从入门到放弃-获取自定义配置

Spring Boot 整合测试

Spring Boot Application与Controller分离

Spring Boot 日志文件

Spring Boot 自定义日志文件

Spring Boot 开发模式

Spring Boot 访问静态资源(以HTML为例)

摘要:

     在WEB应用开发中,我们页面需要和后端进行数据交互,数据的编码格式容易对传输数据进行干扰,导致乱码问题,所以在SpringMVC中可以在XML文件中配置消息转换器对交互的数据进行字符集处理,然而Spring Boot不推荐使用XML文件,那么问题来了,怎么对Spring Boot进行消息转换器配置。

其实,Spring Boot已经为我们配置了消息转换器,所以我们不配置也没关系,但是作为一个不拘的程序员,我们肯定要自定义才显得自己高大上呀!

代码:

以@ResponseBody返回中文字符串为例(UTF-8):

package com.edu.usts.controller;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.autoconfigure.data.redis.RedisAutoConfiguration;
import org.springframework.context.annotation.Bean;
import org.springframework.http.converter.StringHttpMessageConverter;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

import java.nio.charset.Charset;

/**
 * create by hgz
 * 2019.12.4 21点13分
 */

@Controller
public class IndexController {

//    返回路径为"/ "即访问地址为:http://localhost:8080/
    @RequestMapping("/")
    @ResponseBody
    public String index(){
        return "消息转换器测试!";
    }

    //定义消息转换器
//    Spring Boot 默认配置了消息转换器
    @Bean
    public StringHttpMessageConverter stringHttpMessageConverter(){
        StringHttpMessageConverter converter = new StringHttpMessageConverter(Charset.forName("UTF-8"));
        return converter;
    }

}

截图:

正常使用UTF-8成功。

改成GBK则出现乱码。

可以修改 Charset.forName("UTF-8") 进行字符集修改,我们改成gbk试试。

成功将数据交互的字符集改成gbk格式。

注意:

在消息转换器方法上需要加上@Bean注解。

源码gitee地址:

https://gitee.com/jockhome/springboot

发布了41 篇原创文章 · 获赞 108 · 访问量 10万+

猜你喜欢

转载自blog.csdn.net/qq_37857921/article/details/103510383