[1]保證你從數(shù)據(jù)庫取得的數(shù)據(jù)是utf-8編碼
如果你的數(shù)據(jù)庫服務(wù)器的編碼是UTF-8,那么你從數(shù)據(jù)庫取的數(shù)據(jù)就是UTF-8編碼
如果你的數(shù)據(jù)庫服務(wù)器不是UTF-8編碼,那么在取數(shù)據(jù)的時候要轉(zhuǎn)成UTF-8編碼
[2]從action處理的數(shù)據(jù)保證是UTF-8編碼
如果,在action里面處理的編碼不是UTF-8編碼,那么轉(zhuǎn)換成UTF-8編碼
從DAO的數(shù)據(jù)編碼的轉(zhuǎn)換根據(jù)數(shù)據(jù)庫的編碼來轉(zhuǎn)換
如果數(shù)據(jù)是從jsp過來的,那么,取得的數(shù)據(jù)就是ISO8859_1編碼,就需要把ISO8859_1編碼
[3]在jsp上使用UTF-8編碼
這個不是固定的,但是推薦使用UTF-8編碼。
那么,在輸出的時候就需要把UTF-8編碼轉(zhuǎn)成ISO8859_1編碼
如:
<%@ page language="java" import="java.util.*" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@page import="com.cybersoftchina.poimanager.base.Global"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<%
??? Object obj = request.getAttribute(Global.SESSION_JSON_OJBECT);
??? if(obj!=null){
??? ??? String objStr = obj.toString();
??? ??? String codingStr = new String(objStr.getBytes("UTF-8"),"ISO8859_1");
??? ??? out.write(codingStr);
??? }else{
??? ??? // error ??
??? }??? ??
%>
|----------------------------------------------------------------------------------------|
版權(quán)聲明 版權(quán)所有 @zhyiwww
引用請注明來源 http://www.aygfsteel.com/zhyiwww
|----------------------------------------------------------------------------------------|