• tomcat设置编码utf8


    1.       Java类: CharacterEncodingFilter

     import javax.servlet.*;

    import java.io.IOException;

     public class CharacterEncodingFilter implements Filter {

        private String encoding = "UTF-8";

        private boolean forceEncoding = true;

        /**

         * Set the encoding to use for requests. This encoding will be

         * passed into a ServletRequest.setCharacterEncoding call.

         * <p>Whether this encoding will override existing request

         * encodings depends on the "forceEncoding" flag.

         */

        public void setEncoding(String encoding) {

            this.encoding = encoding;

        }

        /**

         * Set whether the encoding of this filter should override existing

         * request encodings. Default is "false", i.e. do not modify encoding

         * if ServletRequest.getCharacterEncoding returns a non-null value.

         */

        public void setForceEncoding(boolean forceEncoding) {

            this.forceEncoding = forceEncoding;

        }

        public void init(FilterConfig filterConfig) throws ServletException {

            this.encoding = filterConfig.getInitParameter("encoding");

            String force = filterConfig.getInitParameter("forceEncoding");

            this.forceEncoding = (force == null) || Boolean.valueOf(force).booleanValue() ;

        }

        public void doFilter(ServletRequest servletRequest,

                             ServletResponse servletResponse,

                             FilterChain filterChain) throws IOException, ServletException {

            if (this.forceEncoding || servletRequest.getCharacterEncoding() == null) {

                servletRequest.setCharacterEncoding(this.encoding);

            }

            filterChain.doFilter(servletRequest, servletResponse);

        }

        public void destroy() {

        }

    }

    2.       在web.xml配置文件里加Filters Configurations

     <!-- Filters Configurations        -->

           <filter>

                  <filter-name>CHARACTER_ENCODING</filter-name>

                  <filter-class>

                         common.encoding.CharacterEncodingFilter</filter-class>

                  <init-param>

                         <param-name>encoding</param-name>

                         <param-value>UTF-8</param-value>

                  </init-param>

                  <init-param>

                         <param-name>forceEncoding</param-name>

                         <param-value>true</param-value>

                  </init-param>

           </filter>

           <filter-mapping>

                  <filter-name>CHARACTER_ENCODING</filter-name>

                  <url-pattern>/*</url-pattern>

           </filter-mapping>

     

    3.数据库建立为UTF-8格式 
    4.项目右键属性为UTF-8格式 
    5.所有页面申明为UTF-8 
    6.JDBC URL设为:UTF-8 

    jdbc:MySQL://localhost:3306/databaseuse?useUnicode=true&characterEncoding=utf-8 
    7.数据库Driver选择UTF-8格式 
    8.Tomcat编码改成UTF-8 


    在server.xml里面增加URIEncoding="UTF-8"

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

  • 相关阅读:
    sqlplus登录用户hang住
    ORACLE_19c用户密码登录失败的问题以及ORA-28040
    索引瘦身_oracle_11g
    Linux内存大页设置
    C++ 总体内容(2)
    C++ 总体内容(1)
    vector中erase的用法
    NGUI中的Tween的委托使用
    IOS Android支持中文与本地文件的读取写入
    Unity人工智能学习—确定性AI算法之追踪算法二
  • 原文地址:https://www.cnblogs.com/panxuejun/p/6837784.html
Copyright © 2020-2023  润新知