亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

struts中文問題和國際化問題的終極解決方案

2019-11-18 15:56:00
字體:
來源:轉載
供稿:網友

  java本身就支持多國語言編碼,不需要寫任何程序,可以很簡單的 實現。 秘訣就是兩點:
  
  1、所有Html/jsp頁面全部采用UTF-8編碼
  
  2、客戶端瀏覽器完全支持UTF-8編碼
  
  步驟:
  1、首先把所有的HTML/JSP的ContentType都設為UTF-8
  
  2、然后對于JSP程序中的非ASCII碼提示信息都不應該寫在程序里面,都應該放在
  application.PRoperties里面統一治理。
  
  3、對HTML用native2ascii工具統一做一次處理,把HTML中的非ASCII碼都轉換為Unicode編碼。
  
  4、針對不同的語言,寫不同的application.properties,比如說簡體中文是
  application_zh_CN.properties,繁體中文是application_zh_TW.properties這樣,然后對這些配置信
  息文件同樣用native2ascii工具處理一次,把非ASCII碼統統轉為Unicode編碼。
  
  5、在Servlet的request.getCharacterEncoding()獲得客戶端的操作系統默認編碼,然后set到Struts
  的HTTPsession的Locale中。
  
  OK!現在不同的客戶訪問,就會顯示不同的語言版本了。你可以看看此時你的瀏覽器的字符集,就是
  UTF-8?,F在你的網站和Google一樣了,嘿嘿,其實你有心的話,看看你的瀏覽器訪問Google的時候是
  什么字符集吧
  
  切記:所有的HTML/JSP都要設為UTF-8編碼,所有的文件中的非ASCII碼字符都要用native2ascii工具轉
  為用ASCII表示的Unicode編碼。
  
  --------------------------------------
  上面所述是我從網上下的一篇于中文問題的解決方案,確切的說應該是關于Struts的國際化問題,下面我結合我的實踐談談具體如何實現Struts的國際化問題,我對理論不是非常精通,我只能完全憑自己的理解和實踐來講述,所以下面講的內容可能不是非常正確,還請大家原諒。但有一點可以肯定,我通過自己的努力解決了Struts的中文問題,并實現Struts的國際化,其實一切并不復雜,下面是具體步驟:
  
  0.碰到的問題(這些問題也許不會同時出現)
  a.中文數據從數據庫中到jsp中后就變成了"????"
  b.做好的中文properties文件,其中的中文value在頁面顯示亂碼
  c.jsp文件中的中文到瀏覽器后顯示時也是亂碼(建議不要在jsp文件中輸入中文,盡量放在properties文件中)
  d.由jsp傳給bean的中文值,再由bean傳回頁面又是亂碼
  e.當更換本地瀏覽器的語言選項時,Web應用程序不能自動根據你的locale選擇合適的*.properties文件。導致Web應用程序不能國際化。
  1.環境:
  Web服務器: Tomcat 5.0.19
  操作系統: Win2000 Server
  JVM : jdk 1.4
  數 據 庫: Oracle 8.1.7
  開發工具: struts studio 5.2 pro for eclipse
  2.先將所有*.jsp 網頁中開頭處加入
  
  再設置
  3.然后編輯好兩個*.properties文件,放在classes文件夾下你指定的地方,這里是放在/web-inf/classes/com/wiley 下,它們分別是:
  
  ApplicationResources.properties (英文資源文件)
  ApplicationResources_zh.properties (中文資源文件)
  隨便用什么工具編寫都行??!
  4.將ApplicationResources_zh.properties轉碼成gb2312。上面引文說要轉成UTF-8,結果我試了,不行。轉成gb2312就行了,操作是。
  將ApplicationResources_zh.properties更名為ApplicationResources_xx.properties
  在DOS命令行進入ApplicationResources_xx.properties所在的文件夾
  使用命令:native2ascii -encoding gb2312 ApplicationResources_xx.properties ApplicationResources_zh.properties(至于你為什么會出現“native2ascii不是內部命令”,,請查其它資料,可能你要設置環境變量,因為他是jdk的文件夾bin下的一個應用程序)
  5.接下來配置struts-config.xml,很簡單,我們加入: 就行了;
  
  到此已能解決大多數中文問題。如上面所說的a,b,e 現在打開瀏覽器,選擇菜單:工具》internet選項》語言,將“中文-中國[zh-cn]”刪掉,添加一個“英語-英國[zh-gb]”確定后,重啟Tomcat,輸入網址你就會發現,你的頁面的文本信息就會用的是ApplicationResources.properties (英文資源文件)中的內容。假如換回“中文-中國[zh-cn]”,它就會顯示ApplicationResources_zh.properties (中文資源文件)中的中文內容。
  
  至于問題“c.jsp文件中的中文到瀏覽器后顯示時也是亂碼” 你就要用與第4步類似的方法來重新對*.jsp 文件編碼,這時-encoding的參數就要用UTF-8了,假如你用的也是struts studio 5.2 pro for eclipse工具,這一步就免了。它會自動用UTF-8的格式存儲。
  至于問題“d.由jsp傳給bean的中文值,再由bean傳回頁面又是亂碼”的解決,我只是加了個過濾器。
  你可以現在web.xml中加入:
  
  Set Character Encoding
  com.wiley.SetCharacterEncodingFilter
  
  encoding
  utf-8
  
  ignore
  true
  
  Set Character Encoding
  action
  
  然后在你指定的包內加個java文件 我放在了/web-inf/classes/com/wiley 里,下面是源代碼:
  /*
  * XP Forum
  *
  * Copyright (c) 2002-2003 RedSoft Group. All rights reserved.
  *
  */
  package com.huahang.tj.struts.filters;
  
  import javax.servlet.*;
  import java.io.IOException;
  
  /**
  *
  Filter that sets the character encoding to be used in parsing the
  * incoming request, either unconditionally or only if the client did not
  * specify a character encoding. Configuration of this filter is based on
  * the following initialization parameters:
  
  *
  
  *
  encoding - The character encoding to be configured
  * for this request, either conditionally or unconditionally based on
  * the ignore initialization parameter. This parameter
  * is required, so there is no default.
  *
  ignore - If set to "true", any character encoding
  * specified by the client is ignored, and the value returned by the
  * selectEncoding() method is set. If set to "false,
  * selectEncoding() is called only if the
  * client has not already specified an encoding. By default, this
  * parameter is set to "true".
  *
  
  *
  *
  Although this filter can be used unchanged, it is also easy to
  * subclass it and make the selectEncoding() method more
  * intelligent about what encoding to choose, based on characteristics of
  * the incoming request (sUCh as the values of the Accept-Language
  * and User-Agent headers, or a value stashed in the current
  * user´s session.
  
  *
  * @author John Wong
  *
  * @version $Id: SetCharacterEncodingFilter.java,v 1.1 2002/04/10 13:59:27 johnwong Exp $
  */
  public class SetCharacterEncodingFilter implements Filter {
  
  // ------------------------ Instance Variables
  
  /**
  * The default character encoding to set for requests that pass through
  * this filter.
  */
  protected String encoding = null;
  
  /**
  * The filter configuration object we are associated with. If this value
  * is null, this filter instance is not currently configured.
  */
  protected FilterConfig filterConfig = null;
  
  /**
  * Should a character encoding specified by the client be ignored?
  */
  protected boolean ignore = true;
  
  
  // ---------------------Public Methods
  
  /**
  * Take this filter out of service.
  */
  public void destroy() {
  
  this.encoding = null;
  this.filterConfig = null;
  
  }
  
  /**
  * Select and set (if specified) the character encoding to be used to
  * interpret request parameters for this request.
  *
  * @param request The servlet request we are processing
  * @param result The servlet response we are creating
  * @param chain The filter chain we are processing
  *
  * @exception IOException if an input/output error occurs
  * @exception ServletException if a servlet error occurs
  */
  public void doFilter(ServletRequest request, ServletResponse response,
  FilterChain chain)
  throws IOException, ServletException {
  
  // Conditionally select and set the character encoding to be used
  if (ignore (request.getCharacterEncoding() == null)) {
  String encoding = selectEncoding(request);
  if (encoding != null)
  request.setCharacterEncoding(encoding);
  }
  
  // Pass control on to the next

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
成人性生交大片免费看小说| 国产91色在线|免| 国产精品久久一| 国产精品久久77777| 欧美最顶级丰满的aⅴ艳星| 精品久久久久久中文字幕大豆网| 日韩欧美国产一区二区| 亚洲免费伊人电影在线观看av| 久久精品视频中文字幕| 日本久久久久久久久久久| 国产成人精品午夜| 国产精品久久久久77777| www.99久久热国产日韩欧美.com| 萌白酱国产一区二区| 日韩中文字幕网址| 亚洲国产精品美女| 国产日本欧美一区二区三区在线| 永久免费精品影视网站| 亚洲精品电影久久久| 中文字幕在线观看亚洲| 欧美日韩在线免费| www日韩欧美| 狠狠色狠狠色综合日日五| 日本精品视频在线| 久久在线免费视频| 青青草国产精品一区二区| 91精品国产91久久久久福利| 91亚洲va在线va天堂va国| 国产精品视频导航| 久久99久久亚洲国产| 久久精品免费电影| 日韩欧中文字幕| 国产精品狼人色视频一区| 国产欧洲精品视频| 久久最新资源网| 日韩中文字幕在线免费观看| 尤物yw午夜国产精品视频| 怡红院精品视频| 亚洲国产中文字幕久久网| 欧美日本高清视频| 久久久91精品国产一区不卡| 日韩成人在线视频网站| 亚洲欧洲xxxx| 久久久久久久久亚洲| 国产精品久久久久久久天堂| 久久影视电视剧免费网站| 中文在线资源观看视频网站免费不卡| 国产丝袜一区二区| 中文字幕精品国产| 国产噜噜噜噜久久久久久久久| 福利视频一区二区| 91在线无精精品一区二区| 3344国产精品免费看| 成年无码av片在线| 日韩最新免费不卡| 亚洲在线视频观看| 国内偷自视频区视频综合| 欧美亚洲第一页| 午夜精品久久久久久久久久久久| 欧美精品在线第一页| 亚洲免费成人av电影| 亚洲精品中文字| 一区二区三区视频观看| 欧美电影《睫毛膏》| 亚洲香蕉成人av网站在线观看| 亚洲国产精品女人久久久| 欧美日韩在线免费观看| 精品国产老师黑色丝袜高跟鞋| 日韩精品视频中文在线观看| 精品magnet| 日韩麻豆第一页| 亚洲香蕉伊综合在人在线视看| 亚洲精品国精品久久99热一| 亚洲激情在线观看| 91夜夜揉人人捏人人添红杏| 久久av在线播放| 成人深夜直播免费观看| 91老司机精品视频| 欧美日韩综合视频网址| 日韩一区二区av| 黑人巨大精品欧美一区二区一视频| 这里只有视频精品| 2020久久国产精品| 91久久夜色精品国产网站| 国产精品大陆在线观看| 久久精品免费播放| 国内精品久久久久久| 亚洲国模精品一区| 黄网站色欧美视频| 国产精品第一第二| 亚洲国内精品在线| 国产va免费精品高清在线观看| 国产在线观看91精品一区| 欧美天堂在线观看| 欧美精品少妇videofree| 国产日韩欧美91| 国产精品a久久久久久| 日韩少妇与小伙激情| 97热精品视频官网| 成人午夜在线视频一区| 久久精品亚洲国产| 精品国内自产拍在线观看| 欧美激情一区二区三级高清视频| 国产精品免费观看在线| 萌白酱国产一区二区| 欧美精品18videos性欧| 亚洲护士老师的毛茸茸最新章节| 亚洲在线观看视频| 国产视频综合在线| 久久视频在线播放| 最近中文字幕日韩精品| 国产在线精品一区免费香蕉| 国产成人精品一区二区三区| 91精品国产综合久久香蕉最新版| 国产成人高清激情视频在线观看| 欧美成人全部免费| 欧美激情乱人伦| 最近2019年手机中文字幕| 国产视频精品免费播放| 日韩a**站在线观看| 欧美激情手机在线视频| 91chinesevideo永久地址| 亚洲成人激情视频| 午夜精品久久久久久久男人的天堂| 亚洲色图第一页| 国产剧情久久久久久| 欧日韩在线观看| 成人日韩在线电影| 成人免费在线视频网址| 亚洲视频在线观看视频| 亚洲精品98久久久久久中文字幕| 亚洲人成在线一二| 亚洲香蕉av在线一区二区三区| 久久久久中文字幕2018| 亚洲美女福利视频网站| 色综合久久悠悠| 精品久久在线播放| 国产一区二区三区在线免费观看| 亚洲国语精品自产拍在线观看| 91av视频导航| 亚洲人成伊人成综合网久久久| 久久精品电影网站| 69影院欧美专区视频| 国产精品18久久久久久麻辣| 日韩中文在线视频| 一区三区二区视频| 久久69精品久久久久久久电影好| 91九色国产视频| 日本欧美黄网站| 亚洲有声小说3d| 亚洲精品资源在线| 国产精品一区专区欧美日韩| 日韩中文字幕av| 奇米一区二区三区四区久久| 成人黄色免费网站在线观看| 亚洲最大的免费| 精品中文字幕乱| 91久久嫩草影院一区二区| 日韩在线观看免费全| 日韩成人中文电影| 久久久久亚洲精品成人网小说| 国产精品免费网站| 久久久国产一区| 日韩激情av在线播放|