GET、POSTメソッドで日本語文字化け解消法

HTMLのフォーム入力をServletで受け取る方法としてGET, POSTメソッドがあります。

GETメソッド

URLを介してServletにリクエストパラメータとして値を渡します。
例)
ttp://〜〜〜〜.jp/testServlet?name=deepfolteの時には
request.getParameter("name")でdeepfolteを取り出すことができます。
利点としては

  • フォーム入力をせずにURLに直接入れても値を受け取ってくれる
  • リンクタグでも受け取ってくれる。
  • お気に入りに入れておいても大丈夫。

POSTメソッド

URLを介さず直接Servletに値を渡します。
GETと同じくrequest.getParameter("name")で取り出し可能です。
利点

  • プログラム間で受け渡したい情報をユーザに隠して送れる。

日本語文字化け問題

POSTメソッドではパラメータを取り出す前に
request.setCharacterEncoding("Windows-31J")
とすれば可能です。

ただGETメソッドでPOSTと同じ方法でやると文字化けする可能性があります。
その問題点と解決法

※Tomcat5.xより、FORMのGETメソッドでパラメータを送信した場合、 setCharacterEncodingメソッドを無視するようになりました。POSTメソッドの場合は有効です。
GETメソッドの場合、server.xmlファイルのタグの useBodyEncodingForURI属性をtrueに指定することで、setCharacterEncodingメソッドを有効にできます。

Javaの道:Servlet(2.クライアントからのデータ取得)

ipod touchで通勤時間を最適にすごすにはどうしたらいいだろう?

社会人になって早2ヶ月半が経過しました。現在仕事場までの通勤時間は約1時間。バス+電車です。雨の日はバスが遅れることがあるので早めに家を出なければならず、いつも睡魔と闘ってます・・

その1時間を有効活用しようと試行錯誤しています。最初は小説を買って読んでいたのですが、現在は

  • ipod touch + MobileRSS
    • ipod touchを使ってgoogle readerをオフラインでタイトルや内容をさらっと読む
    • 気になったものにスターをつける
    • 帰ったらPCでスターをつけた記事をチェック。
  • ipod touch + 産経新聞
    • タイトル(たまにリード)を読む

というのが日課になっています。

・・が、やはりオフラインは不便です。よくgoogle rss readerを同期し忘れるし。
今日からiphone4が予約開始され、そちらに乗り換えようか?とも考えましたが、今のipod touchに愛着があるので、もう少し試行錯誤して通勤時間を有効に使えるようにしていきたいです。

もし似たような境遇の方でこんな使い方があるよ!という方がいれば教えてください。

何回目かのお久しぶりです。

どうもこんにちは。元ダメ院生です。タイトルをどうしようかと悩んだのですが、めんどくさくなったので「元」をつけただけにしました。まあ大事なのはタイトルではないですよね。更新頻度ですよね。わかります。

4月に入社し、現在も研修を受けています。詳しい内容は省きますが、なかなか楽しい内容です。大学の友達とはまた違った種類(?)の同期が多いので、コンピュータやプログラムの話をしても違った視点があり楽しいです。

会社というものに入ると書けないことなんかもあるので、このブログは更新できないままかなあ・・と思っていたのですが、貴重なアウトプットの場所なので、今後も読んだ本や技術書で学んだ知識などを吐き出していけるようにしたいと思います。社会人になっても自分で勉強する姿勢はなくしちゃいけないですよね。

とりあえず今更ながら

マスタリングTCP/IP 入門編 第4版

マスタリングTCP/IP 入門編 第4版


を買ったのでペラペラ読んでます。

「Whatを列挙するときにHowを列挙する人間」である私

Whatを列挙するときにHowを列挙すべきでない - 発声練習
それが実現できないならば何の意味もないじゃないですか! - 発声練習
id:next49さんの記事を読んで、研究中常に「Whatを列挙するときにHowを列挙する人間」であった私なりの思うところを書きたかったのだけど、考えがうまくまとまらない、書けないで時間がかなり経ってしまった。

なぜ私がそんな人間だったんだろうか・・・考えるに

  1. 研究期間が短かった
  2. なんらかの成果が必要だった(システム、ソフトウェア)
  3. 1,2の中でWhat,WhyとHowを分けて考えられるほど、Howに自信がなかった。

というのが理由かなと思う。

だから期限内にうまく良く方法しか考えない。そうするとid:next49さんが言ってるように

自分のカードだけで戦わなければならないとき、上述のHowから逆算してWhatをでっちあげるという自体が発生する。

Whatを列挙するときにHowを列挙すべきでない - 発声練習

でっち上げをする。まさに私の研究はこんな感じ。期限について、私自身はすごくプレッシャーだった。「卒業できればなんでもいい」くらいの勢いだった。もう就職活動したくない!来年も研究したくない!。10月にテーマを変更することになり、さらに焦ることになった。だから私の研究は
卒業するには成果が必要->教授が与えるテーマで作れそうなもの、現実的なものを探す->それをなんとなく作る->「これなんなんでしょうね?」と教授と話し合う->教授「こういう使い方ならありじゃない?」->私「それなら出来ます。そのように改良します」->二人「結局これって何なんだっけ?何したいんだっけ?」
という悲惨な流れを辿っていた。

研究室に3年間いた経験では、研究がうまくいく学生は
(研究期間が長い)and(他人によく相談している)
という条件によく当てはまってると思う。早いうちに(焦りがでないうちに)教授と研究について、whatを意識して何度も議論する。それを研究室のメンバー、研究内容を話せる範囲にいる人達と議論することで

よく、素人が**の開発のキーパーソンだったという話があるけど、それは、素人はHowを知らないから、純粋にWhatに注力できるために生じることと私は解釈している。

Whatを列挙するときにHowを列挙すべきでない - 発声練習

と似た効果を発揮するのではないだろうか。


3年間(実質1年は・・ry)研究をしていて、上記2つの記事は非常に共感できるものだったので、これから大学に入学する人、研究室に配属になる人は是非読んでみてください。

追記

間違って編集中の記事を一度アップしてしまいました。そしてすぐ削除してしまいました。
id:next49さんにはトラックバック等ご迷惑をおかけしました。
RSSリーダ等で編集中記事をご覧になった方もいるかと思います。ご迷惑をおかけしました。
申し訳ありませんでした。

卒業決定と今後

研究発表、論文提出が2月で終了。引越しも済ませ、そして先日卒業が決定しました。

研究結果も発表もグダグダだったけど・・・なんとか全てを終わらせることができて、ほっとしています。
教授には研究以外も含めると丸5年もお世話になりました。こんなダメ院生を指導してくださって本当に感謝しています。


今後は地元に帰ってSEとして働くことになりました。
東京は人が多くて(((;゚ Д゚)))ガクガクブルブル なのでやめました。
仕事や技術的に東京へ行ったほうがいいとは思うのですが、それ以上に環境や家族等との兼ね合いを考えた結果地元に帰ることにしました。
後輩には「なんで東京に行かないんですか?」と聞かれ、
社会人を経験したことのある先輩には「実家が一番」「東京なんか行くもんじゃない」と言われ。
どちらが正しいのか分かりませんが、自分なりに優先度を考えそれに基づいて就職活動を行い、無事内定をもらえることが出来たので、とりあえずよかったです。

このブログですが、今後も細々と続けていきます。
タイトルは「ダメSEが〜」にでもしましょうかね。
今までと記事の内容が変わっていくと思いますが、これからもよろしくお願いします。

明けましておめでとうございます。

遅くなりましたが、明けましておめでとうございます。今年もダメ院生をよろしくお願いします。

12月まではカンファレンス関連、今は修士論文の仮提出やプレゼンテーションの練習に追われています。それをネタに日記が書ければいいのですが、書けるほどのことをしておらず、とりあえず終わらせるのに精いっぱいという日々を送っています。

3月になれば時間があるので、その時に修士研究の経験から何か書ければいいなと思っています。特に私は研究がしたかったわけでなく学生期間を延長したかっただけなので、その選択は正しかったのか?おススメ出来るのか?ということが書きたいですね。


ではまた。

カンファレンスに論文を提出しました。

教授が以前主催(この言い方が正しいか分かりませんが)していたカンファレンスに、論文を提出しました。このカンファレンスがどんな位置づけなのかはいまいち分からないまま、修論のアイディアだけをツラツラ書いて提出しました。全員提出なのでしかたなく。最低な院生だ?そうですね。自分でもそう思います。

先輩の遺産が残っていたので書くのは楽だったのですが、自分のアイディアを合わせようとしたときに思ったような結果にならないと気付き、そのアイディアでいけると思っていた自分の知識の低さを再認識しました。

これから自分の知識に何が足りなかったのか、それをどう補うか。
理論とシステム開発の時間配分、優先度、目標をどこまで設定するか。

これからは時間との勝負。まずはしっかり設定しないと足元がぐらつく。
一番の問題は目標。そのために自分がどう動けばいいかを考える。
プライドとかはどうでもいい。頭だけで考える。

自分で出来るところまではやる。でもあくまで目標を設定しそこまでどうやって到達するか。

脳をフル活用する。そのために運動も欠かさない。甘いものも適度に。
睡眠はしっかりとる。食事もしっかりとる。

あと4カ月くらい。どこまで到達できるだろうか。