最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SpringBoot響應(yīng)出現(xiàn)中文亂碼的解決方法

 更新時(shí)間:2024年02月03日 10:22:48   作者:K_arot  
這篇文章主要介紹了SpringBoot響應(yīng)出現(xiàn)中文亂碼的解決方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作有一定的參考價(jià)值,需要的朋友們下面隨著小編來一起來學(xué)習(xí)吧

第一種方式

創(chuàng)建Servlet類

解決亂碼也可以直接resp.setContentType("text/html;charset=utf-8"),為了演示使用字符集過濾器類這里先不設(shè)置編碼格式,輸出流記得刷新和關(guān)閉。

package com.thugstyle.web;
 
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
 
public class MyServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        doPost(req,resp);
    }
 
    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
       resp.setContentType("text/html");
        PrintWriter out = resp.getWriter();
        out.println("<p style='color:orange'>歡迎訪問我的servlet</p>");
        out.flush();
        out.close();
    }
}

注冊Servlet

@Configuration聲明配置類,@Bean可以將方法返回值添加到Spring容器中,可由容器調(diào)用

package com.thugstyle.config;
 
import com.thugstyle.web.MyServlet;
import org.springframework.boot.web.servlet.FilterRegistrationBean;
import org.springframework.boot.web.servlet.ServletRegistrationBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.filter.CharacterEncodingFilter;
 
@Configuration
public class ConfigApplication {
    @Bean /*在配置類中注冊servlet*/
    public ServletRegistrationBean servletRegistrationBean(){
        ServletRegistrationBean bean = new ServletRegistrationBean();
        bean.setServlet(new MyServlet());
        bean.addUrlMappings("/myServlet");
        return bean;
    }
}

啟動容器對象

SpringApplication.run返回值為容器對象,可用來測試

package com.thugstyle;
 
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
 
@SpringBootApplication
public class Application {
    public static void main(String[] args) {
        SpringApplication.run(Application.class,args);
    }
}

響應(yīng)內(nèi)容出現(xiàn)中文亂碼,因此這里需要將字符集過濾器類注冊到容器中

注冊字符集過濾器類

使用框架中的字符集過濾器類,并聲明編碼格式為utf-8,指定request和response都使用encoding的值

 @Bean
    public FilterRegistrationBean filterRegistrationBean(){
        FilterRegistrationBean filterBean = new FilterRegistrationBean();
        CharacterEncodingFilter filter = new CharacterEncodingFilter();
        /*將文本過濾器類注冊到容器中*/
        filter.setEncoding("utf-8");
        filter.setForceEncoding(true);
        filterBean.setFilter(filter);
        filterBean.addUrlPatterns("/*");
        return filterBean;
    }

關(guān)閉系統(tǒng)默認(rèn)過濾器

SpringBoot中默認(rèn)配置的CharacterEncodingFilter為IS0-8859-1,設(shè)置enabled=fales目的是關(guān)閉系統(tǒng)默認(rèn)的字符集過濾器,使用上一步自定義的CharacterEncodingFilter編碼格式(utf-8)

server.servlet.encoding.enabled=false

再次訪問Servlet發(fā)現(xiàn)未出現(xiàn)中文亂碼

第二種方式

可以在application.properties配置文件中配置自定義編碼格式,其中編碼使能開關(guān)默認(rèn)是true可省略,

并設(shè)置請求與響應(yīng)都使用自定義編碼格式,這種方式不需要注冊CharacterEncodingFilter過濾器,推薦使用。

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

以上就是SpringBoot響應(yīng)出現(xiàn)中文亂碼的解決方法的詳細(xì)內(nèi)容,更多關(guān)于SpringBoot響應(yīng)中文亂碼的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • mybaties plus實(shí)體類設(shè)置typeHandler不生效的解決

    mybaties plus實(shí)體類設(shè)置typeHandler不生效的解決

    這篇文章主要介紹了mybaties plus實(shí)體類設(shè)置typeHandler不生效的解決方案,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • springboot如何實(shí)現(xiàn)國際化配置

    springboot如何實(shí)現(xiàn)國際化配置

    這篇文章主要介紹了springboot如何實(shí)現(xiàn)國際化配置問題,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • IntelliJ IDEA查看方法說明文檔的圖解

    IntelliJ IDEA查看方法說明文檔的圖解

    今天小編就為大家分享一篇關(guān)于IntelliJ IDEA查看方法說明文檔的圖解,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧
    2018-10-10
  • 淺談Maven環(huán)境隔離應(yīng)用

    淺談Maven環(huán)境隔離應(yīng)用

    這篇文章主要介紹了淺談Maven環(huán)境隔離應(yīng)用,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-09-09
  • springboot加載一個(gè)properties文件轉(zhuǎn)換為map方式

    springboot加載一個(gè)properties文件轉(zhuǎn)換為map方式

    這篇文章主要介紹了springboot加載一個(gè)properties文件轉(zhuǎn)換為map方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • 詳解Java HashMap實(shí)現(xiàn)原理

    詳解Java HashMap實(shí)現(xiàn)原理

    HashMap是基于哈希表的Map接口實(shí)現(xiàn),提供了所有可選的映射操作,并允許使用null值和null建,不同步且不保證映射順序。本文將記錄一下研究HashMap實(shí)現(xiàn)原理。
    2017-01-01
  • Spring boot整合mybatis實(shí)現(xiàn)過程圖解

    Spring boot整合mybatis實(shí)現(xiàn)過程圖解

    這篇文章主要介紹了Spring boot整合mybatis實(shí)現(xiàn)過程圖解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-08-08
  • springboot security自定義認(rèn)證過程

    springboot security自定義認(rèn)證過程

    這篇文章主要介紹了springboot security自定義認(rèn)證過程,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2025-03-03
  • Spring Boot Starter 封裝的實(shí)現(xiàn)示例

    Spring Boot Starter 封裝的實(shí)現(xiàn)示例

    Spring Boot Starter封裝了項(xiàng)目中常用的一些依賴,使得開發(fā)者可以快速啟動和運(yùn)行項(xiàng)目,而無需手動配置這些依賴,下面就來詳細(xì)的介紹一下如何實(shí)現(xiàn),感興趣的可以了解一下
    2025-09-09
  • java使用命令行打包JAR

    java使用命令行打包JAR

    如何把寫好的Java程序打包為jar文件呢?下面說的就是java使用命令行打包JAR的方法
    2013-11-11

最新評論

中牟县| 岳阳市| 牙克石市| 会东县| 大理市| 航空| 台南市| 彩票| 唐海县| 景宁| 象州县| 珠海市| 龙山县| 卢氏县| 鄄城县| 铁岭市| 城固县| 兴安县| 黄浦区| 马边| 荆门市| 永济市| 奎屯市| 德阳市| 通榆县| 德江县| 长泰县| 新营市| 东方市| 建德市| 和硕县| 商水县| 镇坪县| 宁陵县| 长武县| 禹城市| 孟连| 东乌珠穆沁旗| 察哈| 黑龙江省| 顺义区|