zoukankan      html  css  js  c++  java
  • Web编码规范中文乱码解决方案

    Web编码规范

    IDEeclipse 4.2.2

    项目构建工具:maven 3

    框架:Srping MVC

    统一编码:UTF-8

    1 文本编码

    1.1 Eclipse编码

    Eclipse的默认编码方式与计算机环境有关,在window下默认的为GBK,我们这里统一改成UTF-8,这里有两种方式来进行一种是整个eclipse的所有文本编码,另外一种是单项目的。

    1、eclipse编码格式设置:windows->preferences->General->WorkSpace

     

    2、项目编码格式设置:项目右击->properties->resources

     

    1.2 JSP编码

    在eclipse中新建jsp文件时,会自动帮你设置好编码,不过默认的情况下会设置成ISO-8859-1这不是我们想要的,所以设置成UTF-8。

    Windows->preferences-web->jsp File

     

           <%@ page language="java" pageEncoding="utf-8"%>就是JSP翻译成servlet时所指定的编码方式。

    1.3 Maven编码

    1、maven编译文件的编码设置

                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>2.0.2</version>
                    <configuration>
                        <source>${java.version}</source>
                        <target>${java.version}</target>
                        <encoding>UTF-8</encoding>
                    </configuration>
                </plugin>

    2、maven资源文件编码设置

        <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-resources-plugin</artifactId>
                    <version>2.3</version>
                    <configuration>
                        <encoding>UTF-8</encoding>
                    </configuration>
            </plugin>

        如果不设置的话会用本地操作系统的编码来编译文件。这里主要设置就是<encoding>这个节点

    2 浏览器和服务器间传输数据的编码设置

    2.1 浏览器端编码

    1、一般有服务端告诉浏览端该如何解码。如果JSP作为视图的话,用下面的方式设置。

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

    2、浏览器在接收或发送数据时,会对URL和参数会进行URL解码(接收)或编码(发送)

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

    2.2 服务器端编码

    浏览器默认使用ISO-8859-1进行编码数据,然后将数据传输到服务器,因此我们默认只需要将浏览器发送过来的数据转换为我们需要的编码即可。

    1、过滤器编码设置web.xml

        <filter>
            <filter-name>SpringCharacterEncodingFilter</filter-name>
            <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
            <init-param>
                <param-name>encoding</param-name>
                <param-value>UTF-8</param-value>
            </init-param>
        </filter>

    2、GET编码方式解决

    TOMCAT默认ISO-8859-1 因此可以设置默认编码为UTF-8解决。理论上,这样设置好之后,filter也可以不用配置。

    <Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443" URIEncoding="UTF-8"/>

    3、eclipse中server编码设置

    在开发项目的过程中,我们一般会直接用eclipse里面的tomcat,这样也方便调试。这个时候,我们也需要对eclipse里面的tomcat进行配置。如果,你新建一个server时,就会多一个Servers的项目直接在里面配置就好了。

    PS:现在还只研究了一部分,肯定还是问题多多,希望后面的过程中不断补充。大家有什么地方需要规范的,也希望告诉我。 

  • 相关阅读:
    动态归划之不同路径走法之和
    【转】在ADO.NET中使用参数化SQL语句的大同小异
    asp.net C#如何实现验证码不区分大小写
    用C# + SqlServer2005 实现的treeview动态树形菜单
    捕捉用户的输入,用回车提交
    【转载】在一个aspx或ashx页面里进行多次ajax调用
    【转】在ashx页面中context.Session["xxx"]获取不到值的解决办法
    【转载】【很不错的文章,值得一看】实现小数据量和海量数据的通用分页显示存储过程
    【原创】纯javascript实现银行卡号的Luhn验证或校验算法
    Sql
  • 原文地址:https://www.cnblogs.com/wukenaihe/p/3066593.html
Copyright © 2011-2022 走看看