首页 > 其他分享 >SpringBoot的编码方式

SpringBoot的编码方式

时间:2023-12-26 20:27:12浏览次数:28  
标签:编码 SpringBoot encoding filterRegistrationBean server filter 编码方式 servlet

 

方式1.使用配置文件的方式对字符进行编码

1.第一种方式:

在配置文件中(properties或者yaml文件中均可)添加:

server.servlet.encoding.enable=true
但是现如今的许多程序已经弃用了这种写法

2.第二种方式:

server.servlet.encoding.charset=UTF-8;
server.servlet.encoding.force=true

方式2.使用传统的spring提供的字符编码过滤器:

@Configuration//说明该类是一个配置类
public class CharacterConfig {
    @Bean
    public FilterRegistrationBean filterRegistrationBean(){
​
        //创建SpringWeb提供的字符编码过滤器,主要实现字符编码过滤
        CharacterEncodingFilter filter = new CharacterEncodingFilter();
        filter.setForceEncoding(true);//强制对请求的编码,
        filter.setEncoding("GBK");//使用GBK编码
        
        FilterRegistrationBean filterRegistrationBean = new FilterRegistrationBean();
        filterRegistrationBean.setFilter(filter);
        filterRegistrationBean.addUrlPatterns("/*");
        return filterRegistrationBean;
    }
}

 

因为对字符编码的过滤器在框架中已经有了,我们不需要再重新写了,直接进行配置类的实现即可。而且这种方式能够实现的方式需要在配置文件中的server.servlet.encoding.enable的值为false时才会生效。

 

 

 

 

标签:编码,SpringBoot,encoding,filterRegistrationBean,server,filter,编码方式,servlet
From: https://www.cnblogs.com/qiang2023/p/17929258.html

相关文章

  • 浅聊springboot的启动流程
    前言本文会对Springboot启动流程进行详细分析。但是请注意,Springboot启动流程是Springboot的逻辑,请千万不要将Springboot启动流程相关逻辑与Spring的相关逻辑混在一起,比如把Spring的bean生命周期的逻辑混在Springboot启动流程中,那么整个体系就复杂且混乱了。所以本文仅重点关注Spri......
  • SpringBoot实现热部署详解
    前言SpringBoot热部署是一种开发时极为有用的功能,它能够让开发人员在代码修改后无需手动重启应用程序就能立即看到变化的效果。以下是使用SpringBoot热部署的几个主要原因:1.提高开发效率热部署使开发人员能够更快地验证和测试他们的代码更改。无需手动重启应用程序,每次修改后只需......
  • springboot自动部署脚本
    #!/bin/sh##javaenvexportJAVA_HOME=/usr/local/jdk/jdk1.8.0_101exportJRE_HOME=$JAVA_HOME/jreAPI_NAME=apiJAR_NAME=$API_NAME\.jar#PID代表是PID文件PID=$API_NAME\.pid#使用说明,用来提示输入参数usage(){echo"Usage:sh执行脚本.sh[start|stop|re......
  • SpringBoot集成多个RabbitMq(多个MQ链接)
    ##2023年12月16日20:25:36 项目中使用RabbitMQ作为应用间信息互通,本次梳理下关于MQ的使用。1、引入依赖<!--引入依赖,使用v2.5.6版本--><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot......
  • 基于SpringBoot+Vue的毕业设计系统的开发设计实现(源码+lw+部署文档+讲解等)
    (文章目录)前言:heartpulse:博主介绍:✌全网粉丝10W+,CSDN特邀作者、博客专家、CSDN新星计划导师、全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战✌:heartpulse:......
  • SpringBoot项目导入的时候没有显示父工程
    一、出现错误导入选中要导入的项目的文件夹,然后点击OK,接下来一直next即可。但是导入完了之后没有出现父模块,只有子模块。二、修正错误CTRL+SHIFT+A打开下面的菜单输入maven,选择AddMavenProjects.选择你要导入的工程的pom文件,然后点击OK,父模块就导入了。三、较好的导入方法从......
  • 【SpringBootWeb入门-18】案例-准备工作
    1、案例前言在前面的章节中,我们学习完了后端springbootweb开发的基础知识、MySQL数据库以及Mybatis框架,接下来我们来完成一个Web开发的综合案例,通过这个案例我们学习到前端程序、后端程序以及数据库之间是如何交互协作的,同时通过这个案例我们也学习到根据接口文档、开发服务端接......
  • 启动springboot的测试类,报红:Java HotSpot(TM) 64-Bit Server VM warning: Sharing is
    启动springboot的测试类时,报红:JavaHotSpot(TM)64-BitServerVMwarning:Sharingisonlysupportedforbootloaderclassesbecausebootstrapclasspathhasbeenappended原因:JavaHotSpot(TM)64位服务器虚拟机已附加引导程序类路径解决办法:IDEA—》Settings—》Build......
  • SpringBoot多级缓存
    SpringBoot实现项目更删改查后,会有新的问题需要解决,就是并发大的问题,一般而言,解决查询并发大的问题,常见的手段是为查询接口增加缓存,从而可以减轻持久层的压力。按照我们以往的经验,在查询接口中增加Redis缓存即可,将查询的结果数据存储到Redis中,执行查询时首先从Redis中命中,如果命中......
  • SpringBoot 这么实现动态数据源切换,就很丝滑!
    大家好,我是小富~简介项目开发中经常会遇到多数据源同时使用的场景,比如冷热数据的查询等情况,我们可以使用类似现成的工具包来解决问题,但在多数据源的使用中通常伴随着定制化的业务,所以一般的公司还是会自行实现多数据源切换的功能,接下来一起使用实现自定义注解的形式来实现一下。......