日記を書きつつ、意見を書いたり語ってみたり


by poppy_h
カレンダー

<   2007年 11月 ( 30 )   > この月の画像一覧

大変

他人のソースほど分かりにくいものは無い。
特にエラーの対処ほどそういうもので、もはや全て作り直したくなることもある。
そもそも自分は熟練者などではもちろんないし、初心者という位置づけでもある。

つまりは苦しみがまた増したということだ。


・・・だが意外と楽しい。
[PR]
by poppy_h | 2007-11-30 02:06

追われる

いろいろやらなければならないことに追われつつも、自分の楽しみは続けたいもので。

学びながらも進みつつ。
[PR]
by poppy_h | 2007-11-29 02:04
今日は講義の無い日、なので、
今度こそJavaのみを齷齪とやってました!

で!目標のショッピングカート、予定部分まで完成!

ちょっと参考までにセッション(session)というものについて説明。

今回、sessionとは、クライアント単位の接続のこと。
前にも言いましたが、普通に実装すると、データの共有が起こってしまう、
つまり、自分のカゴに勝手に商品を入れられてしまう。

1人ごとにカゴ、ショッピングカートは必要ですね。
そこでこのsessionというものを利用します。

利用するにはまず
javax.servlet.http.HttpSessionが必要。

めんどくさいので
import javax.servlet.http.*;
と記述しちゃいましょう。

まずセッションの取得を行います。

HttpSession session = request.getSession();
これでセッションを取得しています。

セッションからオブジェクトを取得
たとえば
Integer count = (Integer) session.getAttribute("count");

これはint型のオブジェクトを取得しています。
session.getAttribute()のカッコの中身に注目。
sessionはStringで管理するのです。
つまり、保管しておきたいデータをStringで名前を付けて、管理するってことです。
そのなずけたStringを入れることで、その補完データを読み出すのです。

これは自分で用意したクラスでも可能

たとえば私はShopstaという、書籍情報を保持するクラスを作りました。

Shopsta cart = (Shopsta) session.getAttribute("cart");

これでまるまる保持していたものを呼び出せます。

まぁこれはこれで問題発生したりもしましたが、その辺は後半に書きます。


呼び出したものを書き換えたり、そんな処理の後にはまたその変化後のデータを保管したい、
そういうための記述がこちら
session.setAttribute("count", count);

そう、countというStringで名前をつけ、countというオブジェクトを保管する。

分かりやすい仕組みですね。


どうしてsessionを使うとカゴ(つまりデータ)の共有が起こらないの?という人のためにちょっとした解説。
セッションを取得した際に、セッションIDというものが発行されます。
ちなみにsession.getId();でIDの表示できます。

そのIDで人を判断して、データの振り分けを行ってるわけですね。
これが原因でメモリーリークとかで重大なエラーが起こったりもすることもあるようで。

セッションはデフォルトで30分でタイムアウトするようです。
つまり、30分アクセスのなかったデータは、アクセスできなくなってしまう。
Hotmailとかでセッションの取得がどうたら、出てきたのはそういう理由です。
もちろんこちらも指定できます。


さて、すごいこまったのがJSPのとき。
というのもセッションで取得できない、というエラーが発生したのです。
Javaサーブレットではセッションの取得ができるのに、JSPで記述するとダメ。

これ、私以外にも悩んでる人いました。

そんな人のための解決法。
サーブレットにて、sessionを取得、これは大丈夫ですね。
そして、書き換えたものをsessionに格納、これも同じです。

JSPエラー回避法、それは
request.setAttribute("count", count);
この記述で行うこと。

sessionじゃなくてrequestを使うのです。

呼び出す側(JSP側の記述)はもちろん
Integer count = (Integer) request.getAttribute("count");

これで呼び出せます。

セッションスコープじゃなくてリクエストスコープでやるという手。
これで解決できました。


さてさて、しかしセッションはなぜJSPで使用できなかったのか。
使用している参考書には
「セッションスコープに登録されたデータでは、リクエストをまたいでデータを受け渡すことができる」
と書いてあります。
じゃあできると思うんですが・・・。これ解決できた方教えてください。
[PR]
by poppy_h | 2007-11-28 02:05 | 情報技術

齷齪

齷齪は「あくせく」と読みます。
休むことなく仕事をすること、
あくせくと仕事をする、なんてよく使いますね。

ということで、今日は齷齪とJavaやってました。
でも結局まったく進まず。
昼食べ過ぎたら腰痛めたし。

それよりもVisualBasicに時間を割いた気がします。
[PR]
by poppy_h | 2007-11-27 02:02

結局行かなかった

東京大学で宇宙のなんかやるから行く!
と、いうことで、初めて赤門くぐっちゃう、東大入っちゃう、とわくわくしていた日だったりしたのですが、

結局行ってません。

疲れが一つ、詳しく調べたら目的とちょっと違う、やりたいことが他にあった。

等等。


まぁ1時間かけて肉じゃが作ったりもした日。学際にて隣の少林寺拳法サークルのじゃがばたの余り物の巨大ジャガイモをなんと6つもいただいたので。


どうしても型崩れがぁぁぁ。
[PR]
by poppy_h | 2007-11-26 01:57

学祭最終日

というわけで、無事学祭最終日。
黒字にもなり、安心して売りに出すことができた最終日。

最後は大量にあまったあげぱんを大量放出です。

楽しかった。最後ははっちゃけた。回りもいい人ばかりで、知らない人との交流も。
初めて会うのにチーム意識が高い。

最後は毎年恒例の芝屋。
宗教とまで言われる、恐ろしくはっちゃけた集会です。

その映像はこんな感じ。

クイックタイムプレーヤー推奨




音がでかすぎて拾えてません。


こうしてみんなで盛り上がって終わりにする学際っていいなとおもいました。
[PR]
by poppy_h | 2007-11-25 01:49

闇風

夜風は、闇は、とても人を冷静にしてくれる。
冷たい風を浴びながら、点々とした光を辿り自転車を走らせた。

失敗はするものだ、そう結論に至るまで、たいした時間はかからなかった。

ちょっとした気持ちの撓みと、他人に流されやすい心。
自分の決意を破り、自分の意志の弱さを知る。

負の思いは、深深と幻の核に迫り、新しき発見をもたらす。
自らに足りぬもの、必要なもの。

冷静な自問の中で、人は歳を重ねるのかもしれない。
[PR]
by poppy_h | 2007-11-24 00:17

文化祭1日目

ということで文化祭開始!

風邪をなんとか動けるところまで回復し、学校に来て見ると、準備できてる。
なんか、乗り遅れた感がすごくあったが、始まってみると楽しい。

途中でバイトで抜けたが、売り上げ上々。
文化祭は内輪な祭りなのだな、と再認識したり。
[PR]
by poppy_h | 2007-11-23 00:54

文化祭休み2日目

で、風邪をしっかり引いたこの日。
朝からだるい、関節が痛い、鼻水、熱、喉。
もう完全にやられた。
完璧あの中途半端な徹夜まがいな睡眠がまずかった。

とにかく治すことをひたすら考えた日。
明日はバイトもあるし、文化祭開始だし。

とにかく寝る。ひたすら寝る。
いっぱい食べる、そして寝る。


風邪を引きやすい身体なので、もう治すパターンは分かってるわけで、38度近くの熱も、1日で治るってもんです。
[PR]
by poppy_h | 2007-11-22 00:46

文化祭休み1日目

寒い寒いと文化祭準備をしたこの日。
すっかり寝坊癖な私であったが、相変わらずの寝坊。

といってもこの日の生活リズムはおかしなもので、朝9時寝、11時起きの1時間30分遅刻というもの。

その結果の風邪となるわけだが、この日は軽く喉が痛い程度だった。


とっとと帰っておくべきだったこの日だった。後悔は後から来る。
[PR]
by poppy_h | 2007-11-21 00:37