日経ソフトウエア2016/3月分2

「2年目プログラマのためのWeb+DBアプリ開発再入門」勉強。

引き続き環境構築から。
環境変数の設定・・・
一応設定例は書いてくれてるんだけど、
どのファイルがあるところにパス通すのか書いてくれてないから、
XAMPPでやったときにどういう風にやればいいのかよくわからん。
なんとなく雰囲気で設定してみたけど、
どっかでおかしくなる気がする。

そしてコーディング。重要事項書き出し。

  • ディレクティブの例(通常ページの先頭に記載)
    <%@ page contentType=”text/html;charset=UTF-8″ pageEncoding=”UTF-8″ %>
  • スクリプレットの例
    <% request.setCharacterEncoding(“UTF-8”); %>
    <% out.print(“こんにちは、” + request.getParameter(“name”) + “さん!”); %>
    Javaのコードや式言語を埋め込むことができる
  • 出力する場合のスクリプレットの短縮記法
    <p>こんにちは、<%= request.getParameter(“name”) %>さん!</p>
  • 出力する場合の式言語を使った短縮記法
    <p>こんにちは、${param[‘name’]}さん!</p>
  • GETはURL内にクエリ情報を含む。POSTは隠す。
あと少しと思ったところで罠。
GETでテキストボックス内のデータを送信すると、
見事に文字化けした。
hello1
何回見直してコードは合っているっぽいので調べてみると

Tomcat 5以上からはデフォルトではsetCharacterEncodingが有効になっていない事が分かった.

ちなみに,このsetCharacterEncodingが無視されるのは,GETの場合のみ.POSTは有効になっているらしい.
てことでtomcat\conf\にあるserver.xmlのポート8080の
<connector>情報を書き換え。

tomcatを再起動して無事正常に表示されるようになった。

hello2

これだけでも大変。

コメントを残す

メールアドレスが公開されることはありません。