職案人

求職・歴史・仏教などについて掲載するつもりだが、自分の思いつきが多いブログだよ。適当に付き合って下さい。

Webアプリの文字化けについて(Java)

2016年02月26日 | Tomcat プロジェクト
Webアプリの文字化け


【Javaの文字化け対策】

■HTMLファイルの場合
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />←必要
<title>テスト</title>
</head>
<body>
テストです。
</body>
</html>

■jspファイルの場合
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8" %>←これが重要
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />←これは無駄、
<title>テスト</title>
</head>
<body>
テストです。
</body>
</html>

■サーブレットファイル
package hoge;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

@WebServlet(name="mysrv",urlPatterns="/mysrv")
public class MyServlet extends HttpServlet{

public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException{
try{
response.setContentType
("text/html;charset=UTF-8");←ここで文字コード設定

//HTML
PrintWriter pw = response.getWriter();
pw.println("<html>\n"
+ "<head><title>テスト</title>\n"
+ "<body>テストです。</body>\n"
+ "</html>\n");
}
catch(Exception e) {
e.printStackTrace();
}
}
}

以上、
文字コードを設定するには、各ファイルによって異なる。ファイル間で文字データをやり時する時は、文字コードを統一しなければ、文字化けを起こす。
文字コードにはShift-JIS EUC-JP JIS UTF-8 UTF-16がある。
コメント    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« コンテキストルートをプロジ... | トップ | web.xmlのバージョン別DTD・X... »
最新の画像もっと見る

コメントを投稿

Tomcat プロジェクト」カテゴリの最新記事