中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

J2EE Web組件中中文及相關的問題是什么

發布時間:2022-01-12 09:27:19 來源:億速云 閱讀:138 作者:柒染 欄目:編程語言

J2EE Web組件中中文及相關的問題是什么,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

J2EE Web組件中中文及相關的問題

1、  國際化XML:namespace prefix = o ns = "urn:schemas-microsoft-com:Office:office" />

在前面第五小節中的form.JSP里,也許臺灣省的客戶更喜歡

我們首先在webappWEB-INFclasses中創建三個區域相關的資源文件。中文簡體版:

#LocalStrings_zh_CN.properties

page.title=國際化

form.label=請輸入你的姓名

form.button=提交

中文繁體版:

#LocalStrings_zh_TW.properties

page.title=國際化

form.label=請輸入您的姓名

form.button=提交

英文版:

#LocalStrings_tw.properties

page.title=internationalization

form.label=Please enter your name

form.button=submit

LocalStrings_zh_CN.properties、LocalStrings_zh_TW.properties和LocalStrings_tw.properties這三個文件均以系統缺省的編碼方式保存。form.jsp改成:

<%@ page="" contenttype="text/html;charset=utf-8">

<%@ page="" import="beans.LocaleStrings">

<%localstrings lss="new">

 

 

 

beans.LocalStrings的源文件如下:

package beans;

import Java.util.ResourceBundle;

import java.io.UnsupportedEncodingException;

import java.util.Locale;

public class LocalStrings

{

  protected ResourceBundle rb;

  protected boolean encoded;

  public LocalStrings(String baseName, Locale locale)

  {

  this.rb = ResourceBundle.getBundle(baseName, locale);

  if(locale.getCountry().equals("CN") || locale.getCountry().equals("TW"))

  encoded = true;

  }

  public String getString(String key)

  {

  String value = rb.getString(key);

  if(encoded)

  {

  try

  {

  byte bs[] = value.getBytes("ISO-8859-1");

  return new String(bs, "GBK");

  }

  catch(UnsupportedEncodingException uee)

  {

  return value;

  }

  }

  return value;

  }

}

從瀏覽器訪問form.jsp,我們應該看到正確的輸出,然后通過瀏覽的Inte.NET選項,將瀏覽器的語言設置成“中文(臺灣)[zh-tw]”,再訪問form.jsp,我們就能看到繁體字的提示信息了;再將瀏覽器語言設置成“英語(美國)[en-us]”,再訪問form.jsp。為什么要用LocalStrings到重新編碼這些字符串呢,查看ResourceBundle的源程序可以發現,它讀取文件中時,并沒有對字符串進行編碼,所以我們不得不在LocalStrings中對使用正確的編碼對這些區域相關的字符串編碼。

2、  一些建議

我們用J2EE(Java 2 Enterprise Edition/ Java 2 Platform, Enterprise Edition,Java 2企業版)開發的企業應用程序,可能在一些支持J2EE規范的服務器之間移植,而這些服務器的平臺也可能不同。我們的客戶的操作系統或所使用的瀏覽器,也有可能不同,所以我們應努力遵循一些建議:

l  從請求頭中判斷出用戶的操作系統、瀏覽器和所使用的語言,而用適當的方法進行相應的響應頭中的charset的設置。

l  盡量不在servlet中使用含非英文字符的常量字符串。

l  對于JSP文件,只要頁面中存在不被服務器忽略的含非英文字符的常量字符串,就應該對page指令中的pageEncoding屬性進行相應的設置。

l  使用過濾器來設置通過

ServletRequest.setCharaterEncoding(String encoding);

來設置請求實體的編碼,而不是在每個JSP或Servlet中設置。拋棄在Servlet設置content-Type的習慣,讓過濾器根據不同的資源和用戶對象通過

ServletResponse.setContentyType(String type);

來設置。

l  盡量使用UTF-8作編碼,而不是GBK或GB2312。

l  充分考濾到底層數據庫所使用的編碼,它可能在應用程序的移植中帶來麻煩。

l  不能簡單有效地判斷出用戶瀏覽器編碼提交的數據所使用的編碼,是程序員的一大遺憾,如果w3c對現有的標準進行擴展,修改form元素的enctype,讓這個屬性也完全兼容MIME的charset,Web應用程序的開發,又少去了一些麻煩。

附錄A. 所有的實驗,環境配置如下:

l  操作系統  MS windows 2000 Server

l  區域設置  中文(中國)

l  系統語言  中文(簡體)  默認

l  瀏覽器  Microsoft Internet Explorer 6.0b

l  Java虛擬機  J2SDK 1.4.0-b92

l  Java服務器  apache tomcat 4.0.4

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

兴和县| 邹城市| 大荔县| 荆州市| 庄浪县| 博湖县| 米脂县| 荥经县| 安陆市| 大名县| 贡觉县| 巴东县| 通渭县| 微山县| 泸西县| 会昌县| 大竹县| 永嘉县| 渝中区| 淮安市| 平果县| 尖扎县| 伊春市| 竹溪县| 娄底市| 茶陵县| 英德市| 云安县| 兴业县| 衡南县| 衡阳县| 乐陵市| 梁山县| 合肥市| 台安县| 溧水县| 保定市| 万盛区| 定南县| 广西| 万山特区|