frei

旧「anney's room」からブログ「frei」だけ引っ越し&残しました

MVC遂に登場。

コンフェデ見ましたかー?

いやぁ、舞い飛ぶ綿毛が懐かしい

ドイツの遅い春、あるいは初夏って感じですなぁ。

…何故、サッカーの内容自体に触れないのか?>自分つっこみ。

さて、Java学校めも。

面白くなってきましたねぇ。でもまだまだレベル低いです。

めも。

SmallTalk

MVCの元祖と言えば、これみたいなので。

ちょっと興味があったりなかったり。

ガイド本のPDFがアップされてるのが、すごい。

頑健なJavaプログラムの書き方

いつかは軽く目を通しておかねば…。

浅煎り珈琲 Java アプリケーション入門

MVC

例によって、Mはモデル、Vはヴュー、Cはコントローラーですが、

Javaでは、MはJavaBeans、VはJSP、Cはサーブレットで実現する事が

多いらしい。あくまでらしい。Strutsとか使った事ないから、らしい(笑)

メモ・MVCを実現すると言えば…検索してみた。

perl

Catalyst

Sledge

PHP

Mojavi

Agavi

guesswork

php.MVC

・JavaBeans

mainメソッドがなく、引数なしのコンストラクタが存在し、

getter/setterを持ち、メンバ変数がpublicでないクラスでないといけないクラス。

JSP中で使えるタグで、

<jsp:useBean id="オブジェクト参照変数" scope="スコープ" class="クラス" />

てな感じで、このクラスのオブジェクトを取り込める。

<jsp:getParameter id="オブジェクト参照変数" property="プロパティ名" />

と書くと、そのオブジェクト内の変数の値なんかが取得できちゃったして。

対して値を設定する jsp:setParameter もあるけど、

そもそも JSP 内で値を設定する事自体がよろしくないのであんま使わない。

・スコープ

普通に考えると、変数の有効範囲。

MVC間で値を中継するにはどうするんだ?と思ってたら

やっぱり、グローバル変数みたいなのが存在する模様。

request(リクエスト変数)は、リクエストを受けたページ内でのみ有効。

session(セッション変数)は、PHPの$_SESSIONと同じ。1ブラウザーにつき1セッション。

application(アプリケーション変数)は、そのURI内でずっと有効、

だから他人とも共有する事になるらしい。

メモ・セッションを使う時どうするのか?

perl

Walrus::Session::Lite

CGI::Session

CGI::Session.pmでセッション管理

PHP

$_SESSION 変数

サーブレットからJSPに飛ばす方法

サックリとフォワードする模様。

ServletContext sc = getServletContext();;

RequestDispatcher rd = sc.getRequestDispatcher( "/飛び先JSPファイルのURL" );

rd.forward( request, response );

メモ・似て非なり?リダイレクト?

perlPHPでは、こんなフォワードなんか滅多にしないと思うんだけど。

強いてやるなら、リダイレクトですか。

perl

print "Location: http://URL\n\n";

PHP

header( "Location: http://URL" );

perlPHPで値を受け渡すには、URLの後に値を続けるか、

値が長ければ、セッションIDだけ引き継がせるか、クッキーに保存して

別にセッション用のDBでも用意するか?ってところですか?