当前位置: 首页 > news >正文

第一季:9SpringMVC中如何解决POST请求中文乱码问题,GET的又如何处理呢【Java面试题】

第一季:9SpringMVC中如何解决POST请求中文乱码问题,GET的又如何处理呢【Java面试题】

  • 前言
  • 推荐
  • 第一季:9SpringMVC中如何解决POST请求中文乱码问题,GET的又如何处理呢
    • 题目
    • 分析
    • 解决
  • 最后

前言


2022 9/30 15:00

路漫漫其修远兮,吾将上下而求索


本文是根据尚硅谷学习所做笔记

仅供学习交流使用,转载注明出处


推荐

【尚硅谷经典Java面试题第一季(java面试精讲)-哔哩哔哩】

第一季:9SpringMVC中如何解决POST请求中文乱码问题,GET的又如何处理呢

题目

SpringMVC中如何解决POST请求中文乱码问题,GET的又如何处理呢

/*
★测试入参为POJO
Spring MVC会按请求参数名和POJO属性名进行自动匹配,
自动为该对象填充属性值。支持级联属性
*/

分析

SpringMVC中有一个过滤器CharacterEncodingFilter中有一个方法doFilterInternal

@Override
protected void doFilterInternal(HttpServletRequest request,HttpServletResponse response,FilterChain filterChain)
throws ServletException, IOException{
	if (this.encoding != null && (this.forceEncoding || request.getCharacterEncoding() == null)){
	request.setcharacterEncoding(this.encoding);
	if (this.forceEncoding) {
		response.setCharacterEncoding(this.encoding);
	}
	filterChain.doFi1ter(request, response);
}

解决

在web.xml中

<!--解决POST请求的请求乱码问题-->
<filter>
	<filter-name>CharacterEncodingFilter </filter-name>
	<filter-class>org.springframework.web.filter.characterEncodingFilter</filter-class>
	<init-param>
		<param-name>encoding</param-name>
		<param-value>UTF-8</param-value>
	</init-param>
	<init-param>
		<param-name>forcencoding</param-name>
		<param-value>true</param-value>
	</init-param>
</filter>
<filter-mapping>
	<filter-name>CharacterEncodingFilter</filter-name>
	<url-pattern>*</url-pattern>
</filter-mapping>

post解决

get有中文乱码了

解决:

在Tomcat配置文件server.xml中

在第一个Connector添加字段 URIEncoding="UTF-8"

最后


2022 9/30 15:17


p9


Markdown 1486 字数 109 行数
HTML 1397 字数 57 段落


相关文章:

  • 看了羊了个羊的源码后我发现这个游戏花了最少钱,赚了最多的钱
  • 『 云原生·分布式』分布式基础——Docker容器详解与Docker的安装(Linux与Windows)
  • Web会话跟踪:Cookie与Session
  • 【大数据】Hadoop在呼唤Hive(附一键部署Hive脚本)
  • 8. SQL中Order by和Group by子句的使用简介
  • 27. 生成CSV文件
  • 【初学者入门C语言】之二维数组(七)
  • 深度学习 Day 14——利用卷神经网络实现运动鞋品牌识别
  • 索引的创建与设计原则(2)(适合创建索引情况 )
  • 写给Python社群的第2课:Python逻辑语句,天天要写的 if 和 while
  • 2022G3锅炉水处理考试练习题模拟考试平台操作
  • C++11:lambda表达式
  • [实践篇]13.6 QNX侧如何抓取日志?
  • Java中如何检测一个元素是否存在于HashSet对象中呢?
  • Cesium:OSGB倾斜摄影模型加载卡顿优化
  • Docker容器管理
  • JAVA之继承和多态
  • vue从创建到完整的饿了么(18)购物车详细信息的展示与删除
  • Yii源码解读-服务定位器(Service Locator)
  • 欢迎参加第二届中国游戏开发者大会
  • 码农张的Bug人生 - 初来乍到
  • 排序算法学习笔记
  • 前端相关框架总和
  • 前嗅ForeSpider采集配置界面介绍
  • 巧用 TypeScript (一)
  • 网络应用优化——时延与带宽
  • ​​​​​​​ubuntu16.04 fastreid训练过程
  • ​力扣解法汇总1802. 有界数组中指定下标处的最大值
  • ​油烟净化器电源安全,保障健康餐饮生活
  • (4)logging(日志模块)
  • (C语言)深入理解指针2之野指针与传值与传址与assert断言
  • (Redis使用系列) Springboot 整合Redisson 实现分布式锁 七
  • (附源码)流浪动物保护平台的设计与实现 毕业设计 161154
  • (教学思路 C#之类三)方法参数类型(ref、out、parmas)
  • (四)【Jmeter】 JMeter的界面布局与组件概述
  • (四)七种元启发算法(DBO、LO、SWO、COA、LSO、KOA、GRO)求解无人机路径规划MATLAB
  • (转)Linux下编译安装log4cxx
  • (转)全文检索技术学习(三)——Lucene支持中文分词
  • ***原理与防范
  • .bat批处理(八):各种形式的变量%0、%i、%%i、var、%var%、!var!的含义和区别
  • .NET Reactor简单使用教程
  • .Net(C#)常用转换byte转uint32、byte转float等
  • .Net8 Blazor 尝鲜
  • .NET框架类在ASP.NET中的使用(2) ——QA
  • .net网站发布-允许更新此预编译站点
  • .NET文档生成工具ADB使用图文教程
  • /etc/motd and /etc/issue
  • /使用匿名内部类来复写Handler当中的handlerMessage()方法
  • ?.的用法
  • [2018-01-08] Python强化周的第一天
  • [BUAA软工]第一次博客作业---阅读《构建之法》
  • [bzoj 3124][sdoi 2013 省选] 直径
  • [bzoj4240] 有趣的家庭菜园
  • [C#][opencvsharp]opencvsharp sift和surf特征点匹配
  • [C/C++]数据结构 循环队列