`
microapple
  • 浏览: 15888 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

web中文乱码的post与get

 
阅读更多
1.数据库

在创建的时候,指定其编码为UTF-8.

   (1)oracle:

SQL> select userenv('language') from dual;

USERENV('LANGUAGE')
---------------------------------------------
SIMPLIFIED CHINESE_CHINA.UTF8

SQL>

jdbc url无须指定编码。

   (2)SqlServer:
留着

   (3)MySQL:

安装mysql的时候选utf-8;管理工具安装后,首先设置管理工具 client编码为中文的gb2312 gbk,这与mysql无关
建库的时候选utf-8
建表的时候选utf-8    utf_unicode_ci 两项
建字段的时候选utf-8   utf_unicode_ci 两项

jdbc url参考:jdbc:mysql://localhost:3306/test?user=root&password=&useUnicode=true&characterEncoding=utf8&autoReconnect=true&failOverReadOnly=false



2.新建web项目

别的先不干,先选中项目:

右键->properties->Info->Text file encoding:Other:UTF-8。

但我用的JBuilder 2007似乎在JS文件上需要重新弄一下:

新建*.js文件,右键该文件->properties->Info->Text file encoding:Other:UTF-8。再把原来带中文的^C^V过来,save。

如果是把js所在的目录设为UTF-8,然后新建js文件,貌似不能继承,得一个个这么^C^V,烦。



3.tomcat的配置

为了保证某些中文文件名的文件能够被正确访问,需要修改tomcat/conf/server.xml,增加:

    <Connector port="8088" maxHttpHeaderSize="8192"
                maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
                enableLookups="false" redirectPort="8443" acceptCount="100"
                connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="UTF-8" />

注意:

   开发时,修改了tomcat安装目录,怎么还是乱码?

CAUSE:

   开发时,JBuilder2007(eclipse maybe)并没有发布到tomcat安装目录下,而是在

workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp1/conf

有个相应的server.xml文件,需要改这个,在JB下才有效。具体tmp0/tmp1/tmpN由发布的次数/项目个数来定。



4.jsp页面

保证任何jsp的第一行都是:

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

并且在jsp页面不要再出现charset的字样!

有的同志第一行按上面所述指定了,下面又来一个:

<META http-equiv='Content-Type' content='text/html;charset=gb2312'>

更有甚者,居然在包含的JS里面来这么一句:

document.charset='gb2312';

你说在JSP里面

<script language="JavaScript" type="text/JavaScript">  
         document.charset='gb2312'; 
</script>

写也就罢了,我还好找些,你把它另外存个文件,然后引入,不是磨人吗?

须知编码不统一,才是乱码之根源。
5.filter!(struts 1)
①一个servlet
import java.io.*;  
import javax.servlet.*;  
import javax.servlet.http.*;  
import org.apache.struts.action.*;  
public class QActionServlet extends ActionServlet {  
    public static final long serialVersionUID = -1L;  
    protected void process(HttpServletRequest request,  
            HttpServletResponse response) throws IOException, ServletException {  
        request.setCharacterEncoding("UTF-8");  
        super.process(request, response);  
    }  
} 

②<servlet> 
        <servlet-name>action</servlet-name> 
        <servlet-class> 
            com.qfx.QActionServlet 
        </servlet-class> 
        <init-param> 
            <param-name>debug</param-name> 
            <param-value>2</param-value> 
        </init-param> 
        <init-param> 
            <param-name>config</param-name> 
            <param-value> 
                /WEB-INF/config/struts-config.xml, 
            </param-value> 
        </init-param> 
        <load-on-startup>2</load-on-startup> 
    </servlet> 
    <servlet-mapping> 
        <servlet-name>action</servlet-name> 
        <url-pattern>*.do</url-pattern> 
    </servlet-mapping> 
分享到:
评论

相关推荐

    过滤器实现get请求和POST请求的中文乱码问题

    使用过滤器实现GET请求和POST请求的中文乱码问题,只需在自己的Web应用中的web.xml中配置该filter即可使用。

    自定义Filter来解决web项目的乱码问题,包括get和post请求

    自定义Filter来解决web项目中的乱码问题,包括get请求和post请求,使用包装设计模式。

    web项目中遇到乱码的解决方法

    解决web开发时乱码的解决办法一般判断表单是用get提交还是Post提交

    万能中文乱码过滤器

    java web开发中文乱码万能过滤器,采用注解配置,拖入项目即可,对post和get提交均有效。

    java web 乱码 问题

    form表单get、post方式都无乱码,页面链接地址也无中文乱码,刷新页面无乱码,但是选中地址栏中的url 敲回车,乱码出现了!  原因:浏览器配置问题。  解决方案:ie:“internet选项/高级”中“总以

    JAVA Web 用过滤器和包装器消除乱码

    我综合网上的几个消除乱码的解决方案做的一个过滤器,可以消除GET请求和POST请求的乱码问题

    【Web开发】彻底解决开发中请求(get/post)、应答以及控制台中文乱码问题

    我们在javaWeb项目时,使用doget和dopost总是会出现各种原因的中文乱码问题,楼主在查阅大量资料后,将为什么有这样的问题,和如何解决这种问题做个总结。 思维导图: 1. 应答乱码处理(response输出页面时乱码) 1.1 ...

    web配置文件.txt

    而POST请求中,如果出现中文时,会导致程序无法正常运行,会出现中文乱码问题,所以就必须在web.xml中配置POST请求中文乱码问题 &lt;filter-name&gt;encodingFilter &lt;filter-class&gt;org.springframework.web.filter....

    做Java项目过程中遇到乱码问题的解决方案

    在做java项目(特别是web项目)的过程中,中文乱码一直是我们开发人员比较头疼的问题,因为涉及到编码,解码,字符集,以及国际化等诸多问题,所以在着手解决的时候也缺乏相关的知识。我花了一些时间自己动手实验了...

    JavaWeb中过滤器的三个小案例

    Javaweb中过滤器的三个小案例:案例1:分IP统计网站的访问次数;案例2 粗粒度权限控制(根据用户名登陆);案例4、解决全站字符乱码(POST和GET中文乱码问题)

    支付宝第三方支付接口

    1 index页面是创建支付url,使用ItemUrl方法拼凑一个url。...4 java程序要注意的中文乱码问题,一定要配置上去中文filter, 注意:一定要在web.xml中配置过滤器。每个项目中都配置了这个过滤器,具体可以直接打开

    吴天雄--JavaWeb完整笔记.doc

    模块二:使用eclipse和idea快速开发jsp(idea和tomcat的相关配置、eclipse创建web项目、jsp页面元素、jsp九大内置对象、四大作用域对象、解决get/post请求乱码问题、cookie和session详解、请求重定向);模块三:...

    从J2SE到J2EE知识点介绍

    5. JSP页面通过URL传递中文参数的乱码问题 139 四、 Struts2 140 (一) 基于struts2的web应用的开发步骤 140 1. MVC设计模式() 140 2. 基于struts的web应用的开发步骤 141 3. 如何写自定义action,实体,以及业务类...

    淘特站内搜索引擎(C#版)

    8编码,某些语言如asp,php,有可能在get提交数据时使用的gb2312编码,如果不进行gb2312对utf-8的转换将会出现乱码现象,另外get方法提交数据也会有数据传输长度限制的问题,因此索引接口我们采用了post方法。...

    harmonyos2-req-fast:从服务器获取网页内容(HTML流)的最快方法,支持:重定向、自动解码(例如:中文)、gzip、cook

    自动解码内容编码(避免乱码,尤其是中文) 饼干 JSON 响应自动处理 Gzip/Deflate 编码(自动解压) 代理人 安装 $ npm install req-fast --production 调试 $ DEBUG=reqfast. * node ... 用法 var req = require ( ...

    Bootstrap分页

    @RequestMapping(value="/delUser.do",method={RequestMethod.POST,RequestMethod.GET},consumes="application/json; charset=UTF-8") @ResponseBody public ModelAndView delUser(@RequestParam(required = true...

    ajax教程 在线视频培训教程(含课程源代码)

    讲解ajax的工作原理和实例全国省市区3级联动01-ajax概要和第一个示例02-AJAX 工作原理03-创建 XMLHttpRequest 对象04-使用phpstorm工具来开发05-Get方法和读取中文乱码解决06-Post方法和小坑的解决07-XMLHttpRequest...

    jsp九大内置对象

     当Request对象获取客户提交的汉字字符时,会出现乱码问题,必须进行特殊处理。首先,将获取的  字符串用ISO-8859-1进行编码,并将编码存发岛一个字节数组中,然后再将这个数组转化为字符串对象  即可。如下:...

    XML轻松学习手册--XML肯定是未来的发展趋势,不论是网页设计师还是网络程序员,都应该及时学习和了解

    (如果你是程序员,你会惊讶的发现,这与模块化面向对象编程的思想极其相似!其实网页何尝不是一种程序呢?) 正是这种区别使得XML在网络应用和信息共享上方便,高效,可扩展。所以我们相信,XML做为一种先进的数据...

Global site tag (gtag.js) - Google Analytics