永发信息网

jsp 表单提交中文数据乱码怎么解决呢?

答案:4  悬赏:0  手机版
解决时间 2021-06-01 00:57
  • 提问者网友:绫月
  • 2021-05-31 12:49

q1.html

 <form action="q2.jsp" method="post">
    请输入您的姓名:<input type="text" name="name">
    <input type="submit" value="提交">
    </form>

q2.jsp

 

 <%!String name=""; %>
  <%
  name=request.getParameter("name");
  session.setAttribute("username",name);
   %>
    您的姓名是:<%=name %><br/>
    <div>
    <form method="post" action="q3.jsp">
    你喜欢的水果是:<input type="text" name="fruit">
    <input type="submit" value="提交">
    </form>

英文字母没有乱码,就中文出现乱码!

最佳答案
  • 五星知识达人网友:骨子里都是戏
  • 2021-05-31 14:09

由于你使用POST方法提交,所以不用考虑TOMCAT配置文件编码的问题,只需要保证页面编码,和后台编码一致即可。


在浏览器右键看一下你的页面编码是不是utf-8,然后看看在servlet之前有没有过滤器改变过编码就可以了


应用一下方法,百分之九十都能解决掉了


首先,就是加入过滤器,如果不起作用,就按下面方法来做。


为了让JSP编译器能正确地解码我们的含有中文字符的JSP文件   
<%@ page pageEncoding="gb2312"%>  
  
保证JSP向客户端输出时是采用中文编码方式输出   
<%@ page contentType="text/html;charset=GB2312"%>  
  
为了让JSP能正确获得传入的参数   
<%request.setCharacterEncoding("gb2312");%>  
  
对于SERVLET只要在最前面加上这句即可:   
为了让JSP响应按照正确的编码格式   
response.setContentType(”text/html; charset=gb2312″); 


全部回答
  • 1楼网友:野慌
  • 2021-05-31 16:02
<%  request.setCharacterEncoding("GB2312"); %>
  • 2楼网友:深街酒徒
  • 2021-05-31 15:44
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8" contentType="text/html;charset=utf-8"%>
  • 3楼网友:摆渡翁
  • 2021-05-31 14:38

request.setCharter("UTF-8");
就可以了那个Charter好像拼的不对,就是字符的意思,jSP的第一句话上面有

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯