Spring MVC 前台get请求的时候controller中拿到中文字符乱码

Java getBytes()深度解析:字符编码原理、乱码解决与性能优化 字符编码是计算机处理文本数据的核心技术,它定义了字符与二进制字节之间的映射规则。其核心原理在于将人类可读的字符转换为计算机可存储传输的字节序列,这一过程直接影响数据的正确性和系统兼容性。在Java开发中,String.getBytes()方法正是执行这一编码转换的关键入口,它负责将内存中的Unicode字符串转换为指定字符集的字节数组。理解其工作机制对于解决中文乱码、确保跨平台数据一致性具有重要技术价值。无论是文件读写、网络传输还是与数据库交互,正确使用getBytes()都是避免编码问题的基石。本文聚焦J 阅读详情

问题如题:

网上找了很多关于JAVA EE中文乱码的问题:

1、页面中添加 utf-8的源文件   <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />  无效

2、因为使用了spring,所以在web.XML中写入了过滤器 

       <!--解决页面乱码问题 -->
   <filter>
        <filter-name>characterEncodingFilter</filter-name>
        <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
        <init-param>
            <param-name>encoding</param-name>
            <param-value>utf8</param-value>
        </init-param>
        <init-param>
            <param-name>forceEncoding</param-name>
            <param-value>true</param-value>
        </init-param>
    </filter>
    <filter-mapping>
        <filter-name>characterEncodingFilter</filter-name>
        <url-pattern>/*</url-pattern>
      </filter-mapping>

但还是无效

3、在拿取参数的时候,先设置成utf-8来解析   request.setCharacterEncoding("utf-8");   依然无效

4、最终,查看官方文档,查看出,默认的tomcat解析文档 是 ISO-8859-1 所以需要在  server.xml中的connector中添加uRIEncoding="UTF-8" 属性(注意大小写) 还是无效

我都快哭了,各种方法都不行,后来无意中发现一个现象,我的请求是需要打开新窗口的,也就是有target=_blank的属性,将_blank改成_self就ok,但是我需要使用新窗口啊,怎么办?

送js入手,get不行,咱就手动改成post,利用form来进行传递

具体方式:

<form name='form1' method='post'>  
	<input type='hidden' name='type' value="${basicHeader.lookUpType }"/>  
	<input type='hidden' name='mean' value="${basicHeader.meaning }"/>  
	<input type='hidden' name='des' value="${basicHeader.description }"/>  
	<a href="javascript:basicToUpdate('/BYD_GIB/basic/headerToUpdate.do')">${basicHeader.lookUpType }</a>  
</form>  
  function basicToUpdate(rURL){   			 
	document.form1.action = rURL;   
	document.form1.target = "_blank";
	document.form1.submit();   
  } 

到此为止,问题解决。留下此贴作为以后的参考,同时给朋友们一些帮助!!





Java JSON反序列化实战:从String到对象的完整指南与避坑 JSON(JavaScript Object Notation)作为一种轻量级的数据交换格式,已成为现代Web应用和微服务架构中数据传输的事实标准。其核心原理是将结构化的数据序列化为文本,便于网络传输和存储,再通过反序列化还原为程序中的对象。在Java生态中,这一过程的技术价值在于实现跨语言、跨平台的数据互通,是构建RESTful API、处理配置文件、对接第三方服务的基础能力。常见的应用场景包括前后端数据交互、消息队列通信、分布式缓存存储等。针对开发中高频出现的“如何将String类型的JSON字符串高效 阅读详情

相关推荐

DeepSeek V4 Pro 接入 Claude Desktop 的协议级实现原理

大语言模型API接入本质上是协议兼容性问题,核心在于请求/响应格式、字段语义与流式传输机制的对齐。Anthropic 的 messages 协议(基于 JSON Schema)已成为开发者工具链的事实标准,而 DeepSeek V4 Pro 通过主动适配该协议,实现了零修改调用 Claude Desktop 的能力。其技术价值不仅在于模型替换,更体现在上下文窗口标识(如 [1m] 后缀)、effort_level 控制等元数据路由机制,以及 Context-Aware Attention 和 Specula

weixin_30265103的博客 493

SpringMVC 中如何解决POST和GET请求中文乱码问题?(面试题)

这个只是问题只需要就可以了,并且对应的代码在程序中是死的,我们只需要按照对应的格式进行编码就可以了。

weixin_52222660的博客 2082

彻底解决Spring MVC中文乱码问题的方案

主要介绍了彻底解决Spring MVC中文乱码问题的方案,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。

【问题解决:配置】解决spring mvc项目 get请求 获取中文字符串参数 乱码

解决spring mvc项目 get请求 获取中文字符串参数 乱码

你的问题在于,读书太少而想得太多。 748

专治疑难系列 - 解决打印机凭证冲突问题

一、问题描述 二、解决方法 三、问题已解决

Passerby_Wang的博客 2万+

用于可靠的钙钛矿薄膜瞬时光致发光模拟的拟合程序

简介 对光激发后的电荷载流子动态的研究对于确定太阳能电池的几个特性至关重要,例如,体和界面重组的数量以及向电荷传输层转移过程的速度。 瞬态光致发光(trPL)是用于研究这些特性的最流行的表征方法之一。 该实验是通过在样品上照射几纳秒的激光脉冲,并记录一段时间内的发光情况来进行的。辐射性重组的光生电荷载流子将引起太阳能电池的光子发射,而非辐射性重组的电荷载流子将不会对发光作出贡献。因此,可以测量到强度随时间递减的光致发光瞬态。(见图1表示trPL的测量和它的输出)。 图1. 一...

FluximAG的博客 2364

Spring MVC学习——解决请求参数中文乱码

解决请求参数中文乱码的问题,GET请求和POST请求

weixin_57445851的博客 1282

电力抄表协议DL/T645和698.45到底有啥区别?一张图帮你选对协议

本文深入对比了电力抄表协议DL/T645和DL/T698.45的技术差异,从协议架构、报文结构、功能覆盖到实施成本进行全面分析。通过实际案例和数据,揭示698.45协议在通信效率、业务扩展性和长期成本上的优势,并提供清晰的选型决策流程图,帮助工程师根据具体需求选择最适合的电力抄表协议。

weixin_38168696的博客 407

javeWeb springMvc获取到的参数附带特殊符号,接收后被转义

WEB开发时,在前端通过get / post 方法传递参数的时候 如果实参附带特殊符号,后端接收到的值中特殊符号就会被转义 例如该请求:http://localhost:10001/demo/index.do?name=张三(1) 注:中文()不会出现此种情况 后台就收到的实际 name 值为: 张三&#40;1&#41; &#40;其实为htm...

叶菁烜的博客 1万+

用VINS-Fusion跑通EuRoC数据集:Ubuntu22.04+ROS2环境下的保姆级评测指南

本文详细介绍了在Ubuntu22.04和ROS2 Humble环境下使用VINS-Fusion处理EuRoC数据集的完整流程。从环境配置、数据集转换到参数调优和性能评估,提供了一套全面的多传感器融合分析方案,帮助开发者在无人机精准定位场景中实现高效部署与优化。

weixin_29212867的博客 518

用友U8 API开发实战:手把手教你使用API资源管理器完成单据操作

本文详细介绍了用友U8 API开发实战,重点讲解如何使用API资源管理器完成采购订单、销售出库单等核心业务单据的全生命周期管理。从开发环境搭建到单据查询、新增、修改、删除等基础操作,再到高级功能如审核状态管理、业务事件处理和自定义项扩展,帮助开发者快速掌握用友U8接口开发技巧,提升企业数字化转型效率。

weixin_28607671的博客 596

Spring MVC使用Model接收带有【特殊字符】的请求值最佳实践

前言 单纯为了解决问题,请直接下跳转【最佳实践->第三种方案】。 Spring MVC使用时候wield便于数据传输,都会使用Model进行接收参数,见实例: 请求: 127.0.0.1:8080/test?myName=zs&myAge=10 接收请求: @GetMapping("/demo") public R<String> query(Demo demo) ...

Cocos的博客 1150

保姆级教程:在MounRiver Studio上为CH32V307配置FreeRTOS与LwIP网络栈

本文提供了一份详细的教程,指导如何在MounRiver Studio上为CH32V307配置FreeRTOS与LwIP网络栈。从开发环境搭建到网络功能验证,涵盖了FreeRTOS内核定制、LwIP协议栈配置、硬件抽象层实现等关键步骤,帮助开发者快速掌握RISC-V架构下的嵌入式网络开发。

weixin_29275257的博客 362

Spring MVC Controller中返回json数据中文乱码处理

问题 在使用Spring MVC Controller的过程中,发现返回到客户端的的中文出现乱码。后台JAVA代码: @RequestMapping(value = "/upload", method = RequestMethod.POST, produces = "text/json") public @ResponseBody String upload( @Req

hongweigg的专栏 2万+

【DaVinci Developer专题】-28-Client Server Port Interface中useArgumentType、useArrayBaseType和useVoid介绍

共7页 目录 1 ImplPolicy = useArgumentType 2 ImplPolicy = useArrayBaseType 3 ImplPolicy = useVoid 4 三者代码差异部分 5 结尾 <--返回「实战篇」博文-总目录--> <--返回「Autosar从入门到精通-实战篇」专栏主页--> 关键字: 缩略语/术语 含义 DEV DaVinci Developer

「汽车电子助手」的博客 1505

高数15种常见特殊曲线:星形线、心形线、摆线、对数螺线、双曲螺线、阿基米德螺线、伯努利双纽线、三叶玫瑰线、四叶玫瑰线、六叶玫瑰线、三次抛物线、半立方抛物线、箕舌线、蔓叶线、笛卡儿叶形线、概率曲线

4.1 对数螺线(等角螺线、生长螺线)三叶玫瑰线、四叶玫瑰线、六叶玫瑰线。​7.2 半立方抛物线(尼尔曲线)10.笛卡儿叶形线(茉莉花瓣曲线)常考选择题、填空题,大题也涉及。​4.2 双曲螺线(倒数螺线)11.阿基米德螺线(等速螺线)3.摆线(圆滚线、旋轮线)5.双纽线(伯努利双纽线)1.星形线(四尖瓣线)2.心形线(心脏线)..................

刘鑫磊 1万+

Spring MVC Controller中GET方式传过来的中文参数会乱码的问题

Spring MVC controller 这样写法通常意味着访问该请求,GET和POST请求都行,可是经常会遇到,如果碰到参数是中文的,post请求可以,get请求过来就是乱码。如果强行对参数进行了解码,get请求可以了,反而post请求会乱码了。 查阅资料 为何会乱码 Spring MVC 是基于Servlet,在Http请求到达Servlet解析之前,GET过来的URL已经被Tomc...

weixin_30813225的博客 219

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

java 菱形 乱码_(04)Spring MVC之Get方式传参访问Controller,从Controller返回json串出现菱形问号(?????)乱码,解决方法。...

背景:一个简单的Controller类,返回结果直接写死了,跟传的参数没关系@Controller@RequestMapping("/article")public classArticleController {@AutowiredprivateArticleService articleService;@RequestMapping("/add")@ResponseBodypublicResu...

weixin_34043280的博客 266

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

java 接收参数乱码_解决SpringMVC Controller 接收页面传递的中文参数出现乱码的问题...

新配置一个spring的MVC项目,发现对Get请求的中文参数出现了乱码:查看了SpingMVC中关于编码的配置(在web.xml中),如下:encodingFilterorg.springframework.web.filter.CharacterEncodingFilterencodingutf-8forceEncodingtrueencodingFilterappkit应该不是Spring的...

weixin_39614546的博客 471

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

Java开发中彻底解决乱码问题:从原理到实践的全链路编码防御体系

字符编码是计算机科学中处理文本数据的基础概念,它定义了字符与二进制数据之间的映射规则。其核心原理在于编码与解码过程必须使用相同的字符集,否则就会产生乱码现象。在Java开发中,理解并正确应用字符编码技术具有重要价值,它能确保数据在存储、传输和显示过程中的一致性与准确性,避免因乱码导致的数据错误和系统异常。这一技术广泛应用于Web应用开发、文件处理、数据库交互和网络通信等场景。本文聚焦于Java开发中的乱码问题,深入探讨了UTF-8编码标准、字符集(Charset)的显式指定、以及如何在Spring Boot

weixin_30314813的博客 420

springMVC的@ResponseBody出现乱码解决方法

使用@ResponseBody出现乱码解决方法 1、 RequestMapping Java代码 收藏代码 @Controller @RequestMapping(value = "/test") public class TestController { @ResponseBody @R...

tao_wei162的博客 196

SpringBoot @RequestBody接收字符串:从消息转换器到编码陷阱的完整指南

在Web开发中,HTTP请求体数据的处理是基础且关键的一环。其核心原理依赖于HTTP协议的消息转换机制,通过Content-Type头与消息转换器的协同工作,实现字节流到Java对象的转换。这一机制的技术价值在于提供了统一、可扩展的数据绑定方案,极大简化了服务端开发。在实际应用场景中,无论是处理RESTful API的JSON数据、接收第三方回调,还是解析物联网设备的文本流,都离不开对消息转换器的深入理解。本文将聚焦于SpringBoot中通过@RequestBody接收字符串这一常见操作,深入剖析其背后的

weixin_30553777的博客 438

Kimi K2.5、GLM 5、M2.7编程模型选型指南:按工程卡点匹配技术底座

大模型在代码生成场景中并非单纯比拼参数量或基准分数,而是围绕长上下文理解、中文工程语义对齐、确定性工具调用三大核心技术维度构建差异化能力。其底层原理分别涉及AST感知分块与动态NTK插值、本地化API映射与中文commit message指令微调、JSON-RPC签名式函数调用与编译器级根因分析。这些能力直接决定模型在金融系统重构、国产中间件适配、等保三级审计等高要求生产环境中的可用性与可维护性。本文聚焦真实研发卡点——如跨文件符号解析失效、方言SQL迁移错误、审计日志不可追溯等典型故障,结合压测数据与上线

dianning8393的博客 421

springmvcget中文乱码_使用SpringMVC参数传递时,解决get请求时中文乱码的问题

问题描述:使用SpringMVC参数传递时, 遇到get请求中文信息时,页面应答会显示中文乱码.解决办法:一, 我们需要把request.getParameter(“参数名”)获取到的字符串先用ISO-8859-1编码成字节流,然后再将其用utf-8解码成字符流,代码如下:String str = new String(request.getParameter("参数名").getBytes("...

weixin_39534208的博客 378

SpringMVC接收参数中文乱码解决方案

????程序员小王的博客:程序员小王的博客 ???? 欢迎点赞 ???? 收藏 ⭐留言 ???? ???? 如有编辑错误联系作者,如果有比较好的文章欢迎分享给我,我会取其精华去其糟粕 ????java自学的学习路线:java自学的学习路线 1、前端传递参数 <form action="${pageContext.request.contextPath}/user/register" method="post"> 姓名:<input type="text" name="name"&

程序员小王的博客 5201
上一篇: 浅谈abstract和interface
下一篇: Spring mvc中前台表单自动绑定实体类(不用注释)
阿尔卑斯0283
博客等级 码龄14年 51粉丝 103原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值