美文网首页Java技术博客专栏
JSP页面+Servlet乱码问题解决方法

JSP页面+Servlet乱码问题解决方法

作者: 程序大视界 | 来源:发表于2018-12-15 20:39 被阅读0次

jsp产生乱码,从以下4个完整流程方面找原因:

前端jsp传值设置编码格式

后台servlet接收请求参数request设置编码格式

后台servlet返回参数response设置编码格式

前端jsp接收后台返回参数

1、对于前端jsp传值设置编码格式:

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>

这个默认在jsp页面的第一行,设置如上。本文以utf-8格式编码为例

对于这个编码设置,应理解为:该jsp页面显示的文本等编码格式,比如页面标题,文本框标题等。

<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<title>*****</title>

</head>

接着是在<head>标签下的<meta>设置utf-8编码格式,对于这个编码设置,应理解为:该jsp页面携带的请求参数向后台传值时的

编码格式。

2、后台servlet接收request请求参数和返回response参数,归为一类讲解。

     对于GET请求和POST请求同样设置:

@Override

protected void doPost(HttpServletRequest req, HttpServletResponse resp)

  throws ServletException, IOException {

req.setCharacterEncoding("UTF-8");

resp.setContentType("application/json; charset=utf-8"); 

doGet(req,resp);

}

在servlet的HttpServletRequest和HttpServletResponse参数设置编码格式:

HttpServletRequest 设置:req.setCharacterEncoding("UTF-8");

是用来接收jsp请求的参数并转码;跟第一步中在jsp页面请求参数中设置编码格式互为:编码——>解码。

HttpServletResponse 设置:resp.setContentType("application/json; charset=utf-8");

是用来设置后台servlet处理完请求返回给前端jsp页面的编码格式,跟第4步中的jsp页面接收后台返回参数设置的解码格式互为:

编码——>解码。

3、前端jsp页面接收后台servlet处理请求完后设置编码

      通常这个可以忽略,拿出来讲解只是为了让大家更好的理解整个前端+后台编码解码逻辑流程。

对于这里接收的编码格式,无需做特别处理,按照原本的编码设置就好:

<%@ page language="java" contentType="text/html; charset=UTF-8" import="java.util.*" pageEncoding="UTF-8"%>

解析后台传值的编码,设置为utf-8统一整个编码格式设置就好了。

凡是遇到jsp乱码的问题,先从以上几个方面入手分析,看到网上有什么关乎到tomcat应用服务器里server.xml的编码格式设置之类的,把问题弄得太复杂了。

关注个人技术公众号:nick_coding1024

不定期分享最新前沿技术框架和bat大厂常用技术等,加群不定期分享行业内大牛直播讲课以及获得内退一线互联网公司机会。

---------------------CSDN技术博客

原文:https://blog.csdn.net/xuri24/article/details/84280802

相关文章

  • 001_JavaWeb中文乱码问题

    JavaWeb中JSP程序存在有与Servlet程序完全相同的中文乱码问题。 JSP引擎将JSP页面翻译成Serv...

  • JSP页面+Servlet乱码问题解决方法

    jsp产生乱码,从以下4个完整流程方面找原因: 前端jsp传值设置编码格式 后台servlet接收请求参数requ...

  • 跑马灯(获取数据库)20180828

    jsp页面: Dao页面: servlet页面:

  • 面试(一)

    面试题(一) 一、中文问题 jsp页面乱码问题1) 浏览器编码问题页面格式问题,jsp页面有一个标签 pageEn...

  • JSP基本语法

    JSP本质是Servlet,每个JSP页面就是一个Servlet实例。在Tomcat中,JSP生成的Servlet...

  • Servlet进阶与web.xml详解

    在向servlet或JSP页面制定初始化参数或定制URL时,必须首先命名servlet或JSP页面。Servlet...

  • Java面试问题

    1、JSP: jsp和servlet的区别 jsp本质就是Servlet,jsp的工作原理是:JSP页面在执行的时...

  • 复习

    JSP: 1、jsp和servlet的区别 jsp本质就是Servlet,jsp的工作原理是:JSP页面在执行的时...

  • Servlet与JSP学习笔记(三)JSP

    概述: JSP并没有取代Servlet,是对Servlet的补充 JSP实质是Servlet JSP的页面不需要编...

  • JavaWeb-018-中文处理

    JSP程序存在有与Servlet程序完全相同的中文乱码问题输出响应正文时出现的中文乱码问题读取浏览器传递的参数信息...

网友评论

    本文标题:JSP页面+Servlet乱码问题解决方法

    本文链接:https://www.haomeiwen.com/subject/ilqzhqtx.html