处理JAVAWEB中乱码的问题
- 产生乱码的原因: 一般 jsp文件以 utf-8编码存储 而浏览器端默认处理中文使用gb2312编码。 tomcat处理request,response使用 iso-8859-1编码。
- 解决方案:
在page指令中指定如下属性:
pageEncoding="UTF-8" 页面使用UTF-8编码 contentType="text/html;charset=gb2312" 页面输出时使用gb2312编码
并在页面中加入以下代码: response.setContentType("text/html;charset=gb2312") (注:在String path = request.getContextPath(); 之前)
从get或post提交中获取输入时,应使用: new String(request.getParameter("param").getBytes("iso-8859-1"),"gb2312") 来获取param参数携带的值。 注意:必须要先判断 request.getParameter("param")!=null,否则getBytes方法会报空指针错误。
SQL Server数据库经过以上设置后,无需特别处理。 测试项目中SQLServerEncode.jsp中以GuestBook数据库为例。 注意:测试时先确认dbUtil类中的连接字符串的帐号密码正确。
Servlet中输入中文乱码时,必须加入 response.setContentType("text/html;charset=gb2312"); 并且此行必须位于 PrintWriter out=response.getWriter();之前。
不要让昨天的沮丧 让今天的梦想黯然失色
成功的人总是修改方法而不修改目标
微信公众号:javenlife
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· 展开说说关于C#中ORM框架的用法!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?