文字化けした Java オブジェクトの解決策: 1. 文字化けしたファイルをダウンロードするときは、HTTP 送信前にダウンロード応答ヘッダーとファイル名を URLEncoding でエンコードする必要があります; 2. Java とデータベースの間で文字化けしたファイルの場合は、unicode と To を直接使用します。データベースと対話する場合は、ドライバーの URL で指定できます。
Java オブジェクトのコードが文字化けする問題の解決策:
JSP パラメータとページ パラメータの間のコードが文字化けする
リクエストのエンコード方式を強制的に指定します:
request.setCharacterEncoding("UTF-8");
ページへの JSP 出力が文字化けしている場合:
response.setCharacterEncoding("UTF-8");
または、web.xml でサーブレット フィルター フィルターを設定します (有効な場合のみ) POST モードの場合、GET モードでは無効):
<filter> <filter-name>CharacterEncodingFilter</filter-name> <filter-class>net.vschool.web.CharacterEncodingFilter</filter-class> <init-param> <param-name>encoding</param-name> <param-value>UTF-8</param-value> </init-param> </filter> <filter-mapping> <filter-name>CharacterEncodingFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
Tomact 設定ファイルの変更、server.xml
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false" URIEncoding="UTF-8">
URL 処理:
<a href="TestAction.do?name=<%=java.net.URLEncoder.encode("你好","UTF-8")%>" ></a>
ファイル ダウンロードの文字化けコード:
キーはダウンロード時の応答ヘッダーであり、HTTP 送信ではファイル名を URLEncoding でエンコードする必要があります。
response.setHeader("Content-disposition", "attachment;filename="+ URLEncoder.encode(fileName,"utf-8"));
Get メソッドの文字化けコード:
String args = new String(strCn.getBytes("ISO-8859-1"),"UTF-8");
Post メソッドの文字化けコード:
Just request.setCharacterEncoding( " UTF-8");
で十分です。
Java とデータベース間の文字化け
Unicode を直接使用してデータベースと対話します。これは、mysql ドライバーなどのドライバーの URL で指定できます:
jdbc:mysql://127.0.0.1:3306/database?useUnicode=true&characterEncoding=utf-8
関連する学習の推奨事項: Java 基本チュートリアル
以上がJavaオブジェクトが文字化けした場合の対処方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。