国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JSP > 正文

關(guān)于JSP中文問題的解決方法

2020-06-01 23:29:20
字體:
供稿:網(wǎng)友
在jsp中,中文亂碼常會讓人心亂如麻。
  對于中文處理的常見對策,在網(wǎng)上經(jīng)??梢姷闹饕窍旅?種:

<%@ page
contentType="text/html;charset=gb2312" %>  

  或者:

<%
String Hi="你好";
byte[]
tmpbyte=Hi.getBytes("ISO8859_1");
Hi=new
String(tmpbyte);
out.print(Hi);
%>  

  虛擬小龍亭也主要采用了上面2種方法進行了修改,從而變成了1.1版。

  通過簡單總結(jié),示例中的中文處理發(fā)生于以下幾個地方:

  1 在url附帶中文參數(shù),可以直接讀取。


  例如:

<%= request.getParameter("showword")%>  

  2 與數(shù)據(jù)庫有關(guān)的各種sql操作

  這里使用的Access沒有發(fā)生問題。


  3 讀取HTML

  form表單中遞交的中文值

  在jswdk中需要加以編碼,較為簡潔的寫法如:


String name1=new
String(request.getParameter("user_id").getBytes("ISO8859_1"));  

  另外,在jdk1.3的支持下,不需要加入

<%@
page contentType="text/html;charset=gb2312"
%>  

  而在jdk1.2.2下面,即使2種方法同時運用也很不穩(wěn)定。

  而在resin平臺,情況較好。只要在頁面第一行加入:

<%@
page contentType="text/html;charset=gb2312"
%>

  即可正確處理中文。

  如果再加編碼則反而不對。

  5 session中包含的中文

  在jswdk中,奇怪的是如果從form中讀出的值經(jīng)過編碼則可正確顯示;
但直接賦予中文值則不行。
  resin平臺很好,同上。

  6 對于對變量賦中文值后正確顯示中文。

  例如以下程序:

<%@ page contentType="text/html;charset=gb2312"
%>
<html><head></head><body>
<%
String
Hi="你好";
byte[] tmpbyte=Hi.getBytes("ISO8859_1");
Hi=new
String(tmpbyte);
out.print(Hi);
%>
</body></html>  

  同樣是jswdk1.0.1,以上的表示方法在jdk1.2.2中沒有問題,但在jdk1.3下卻無法顯示。

  resin平臺很好,同上,經(jīng)過測試,只需要在<head>中補上

<meta
http-equiv="Content-Type" content="text/html;
charset=gb2312">
而不需要<%@ page
contentType="text/html;charset=gb2312" %>也能正確顯示中文。

  體會:

  jswdk也許只能用于普通開發(fā),穩(wěn)定性和其它問題可能不如商業(yè)軟件。
由于jdk1.3版性能要好于jdk1.2.2很多倍,并且對中文的支持也較好,所以應(yīng)該加以采用。

  作為免費的商業(yè)軟件,resin不僅速度快,穩(wěn)定,自動編譯,可指出出錯行,可在服務(wù)器端支持使用javascript等,而且,至少我覺得對中文的支持很好。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 镇安县| 诏安县| 延津县| 衡阳市| 卫辉市| 梧州市| 伽师县| 漾濞| 北宁市| 桃园县| 千阳县| 永胜县| 凯里市| 通山县| 连南| 普安县| 霍林郭勒市| 禹城市| 广东省| 府谷县| 银川市| 绵阳市| 怀化市| 本溪市| 禹城市| 休宁县| 潜山县| 凤庆县| 杭锦旗| 石棉县| 三台县| 马关县| 武义县| 湛江市| 抚远县| 敦化市| 青海省| 建瓯市| 达孜县| 枞阳县| 都匀市|