1. <rp id="zsypk"></rp>

      2. 總結解決JSP開發Web程序中文顯示三種方法

        時間:2021-03-29 14:51:34 總結 我要投稿

        總結解決JSP開發Web程序中文顯示三種方法

          方法一:最簡單也是用的最多的方法 <%@ page language="java" pageEncoding="GBK" %>

        總結解決JSP開發Web程序中文顯示三種方法

          或者<%@ page contenttype="text/html;charset=gbk";>這里可以用gb2312或者gbk,只是gbk比gb2312支持跟多的字符。

          這個方法用于jsp頁面中的中文顯示。

          方法二:使用過濾器

          過濾器使用主要針對表單提交,插入數據庫的數據都是?號。這也是應為tomcat不按request所指定的編碼進行編碼,還是自作主張的.采用默認編碼方式iso-8859-1編碼。

          編寫一個SetCharacterEncodingFilter類。

          importjava.io.IOException;

          importjavax.servlet.Filter;

          importjavax.servlet.FilterChain;

          importjavax.servlet.FilterConfig;

          importjavax.servlet.ServletException;

          importjavax.servlet.ServletRequest;

          importjavax.servlet.ServletResponse;

          publicclassSetCharacterEncodingFilterimplementsFilter{

          protectedStringencoding=null;

          protectedFilterConfigfilterConfig=null;

          protectedbooleanignore=true;

          publicvoidinit(FilterConfigfilterConfig)throwsServletException{

          this.filterConfig=filterConfig;

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

          Stringvalue=filterConfig.getInitParameter("ignore");

          if(value==null)

          this.ignore=true;

          elseif(value.equalsIgnoreCase("true"))

          this.ignore=true;

          else

          this.ignore=false;

          }

          publicvoiddoFilter(

          ServletRequestrequest,ServletResponseresponse,FilterChainchain)

          throwsIOException,ServletException{

          //TODO自動生成方法存根

          if(ignore (request.getCharacterEncoding()==null)){

          Stringencoding=selectEncoding(request);

          if(encoding!=null)

          request.setCharacterEncoding(encoding);

          }

          chain.doFilter(request,response);

          }

          publicvoiddestroy(){

          //TODO自動生成方法存根

          this.encoding=null;

          this.filterConfig=null;

          }

          protectedStringselectEncoding(ServletRequestrequest){

          return(this.encoding);

          }

          }

          然后再web.xml加上

          <!--SetCharacterEncoding-->

          <filter>

          <filter-name>SetCharacterEncoding</filter-name>

          <filter-class>mon.SetCharacterEncodingFilter</filter-class>

          <init-param>

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

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

          </init-param>

          </filter>

          <filter-mapping>

          <filter-name>SetCharacterEncoding</filter-name>

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

          </filter-mapping>

          <!--SetCharacterEncoding-->

          使用過濾器的好處很多,特別是項目之中。

          而且在使用國際化時就更有用了,只要在頁面指定 <%@ page language="java" pageEncoding="UTF-8" %>,服務器就會根據本地Locale來顯示正確的字符集。

          所以我特別推薦使用過濾器。

          方法三:修改tomcat的server.xml文件中URIEncoding

          <Connectordebug="0"acceptCount="100"connectionTimeout="20000"disableUploadTimeout="true"

          port="80"redirectPort="8443"enableLookups="false"minSpareThreads="25"maxSpareThreads="75"

          maxThreads="150"maxPostSize="0"URIEncoding="GBK">

          </Connector>

          這個方法主要針對從url中獲取字符串的問題。

          在tomcat5.0及以上版本,post和get方法在處理編碼時有所不同。如果你在url中獲取中文就會出現?號。但在tomcat4.1版本沒有問題,因為tomcat4.1的post和get方法在處理編碼時是一樣的。

        【總結解決JSP開發Web程序中文顯示三種方法】相關文章:

        jsp試題及答案08-22

        德福考試的三種付費方法01-19

        任務管理器用戶名不能顯示解決辦法11-19

        電腦內存不足解決方法12-07

        雅思寫作忘詞時的三種換詞方法06-18

        有關概括語段中心的三種方法04-12

        初中文言文學習方法指導04-10

        程序員實習總結05-11

        電腦耳機沒聲音解決方法12-04

        孩子寫作業拖拉的解決方法04-10

        99热这里只有精品国产7_欧美色欲色综合色欲久久_中文字幕无码精品亚洲资源网久久_91热久久免费频精品无码
          1. <rp id="zsypk"></rp>

          2. 婷婷色五月综合激情六月导航 | 亚洲中文字幕网址在线 | 午夜性色福利在线视频网 | 午夜热门精品一区二区 | 在线永久观看国产精品电影 | 亚洲午夜福利院在线观看 |