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

  • 相关阅读:
    webpack debug
    linux下光标操作
    windows 下 基于express搭建 https协议的网站
    js里的null 与undefined
    scrollIntoView 前的元素滚动到浏览器窗口的可视区域内 不止垂直滚动,还有水平滚动
    js 四舍五入实现
    react 踩坑记
    String.slice
    sublime 常用插件
    springcloud 自己挖坑 @ConfigurationProperties不生效
  • 原文地址:https://www.cnblogs.com/wukenaihe/p/3066593.html
Copyright © 2011-2022 走看看