ふとPHP漬けの毎日からJAVAが気になりだした。
自分の経験は、jdkが1.4 Tomcatが5.0.28 S2Daoの割と初期のころ使ってた経験があるのですが
- いまってjdkの5 or 6 ? SEとEEはどっちがメジャー?
- Tomcat って6 ?
- SAStruts とか S2jdbc とかに興味があるんだけど、Strutsって1? 2?
- ViewはHTMLパーサじゃない系が良いんですが(Velocityとか)Velocityってまだ現役?
などなど、ぜんぜんわかりませんでした。List型に List
ふひーーー
アノテーション!!!!
なんか見て回るたびに見慣れないコードにたどり着く。
アノテーションっていって、アットマークをメソッドのうえに書くと、メタデータのようにプログラムから扱えるらしい。もうドキュメントいらんやん。SAStrutsは(というかSeasar全般?)はこのアノテーションを使うらしいことが分かった。道は遠そうだー。
SAStrutsの良さそうなところ。
久々にJAVA環境を準備してみる
ーー超ものぐさ仕様です。あしからず。
- MacだけどものぐさするためにWindowsXP(VM上)を使用します。ファン回りまくり。
- xamppをインストール → http://www.apachefriends.org/jp/xampp-windows.html#2671
- JAVA 6 sdkもインストールしておく。 → http://java.sun.com/javase/downloads/
- xampp Add on (Tomcat)をインストール → 上記xamppのちょっと下。
- Pleiades All In One(JREつきWTPのやつ)をインストール → http://mergedoc.sourceforge.jp/
- SAStrutsからチュートリアルとブランクを落としてくる。→ http://sastruts.seasar.org/download.html
xampp/Tomcat/jdkいらんかった!!
恐るべしPleiades。JRE付を選ぶと、jdkとTomcatもれなくついてくる!!
「インストール済みのJRE」も設定済みだよママン!
超便利すぐる。まぁちょっとしたテストサーバ用途であれば、よいかもしれないけど、8080でテストしてるうちはいらないやーね。
チュートリアルを実行
チュートリアルはTomcat Launcherて書いてあったけど(Sysdeoのやつかな?)Pleiadesなので「サーバー」ってやつを使う。でもチュートリアルなのでやっぱりSysdeoいれる。
普通に5秒くらいで起動する。一番上の足し算を見てみる。
http://localhost:8080/sa-struts-tutorial/add/
というシンプルなURLです。これに関連するアクションクラスが
tutorial.action.AddAction
さらに関連するviewが
WEB-INF/view/add/index.jsp
わかりやすい!!!!!!!
Struts.configは本当に空っぽ。コントローラとか言うのにseasarが登録されてた。action-mappingはすっからかんでした。
HotDeployを試してみる
さっきのAddActionをTomcatが起動したまま編集して、引き算にしてみる。保存してみたがなにもおこらない。あーアクセスするごとにデプロイするのかーーー。
へーーーー便利!!
これはLLユーザがJAVAに手を出しやすいかも。心理的に。いやマジで。
Eclipse+WTPとかであれば、javaを保存した瞬間ビルド→デプロイ→コンテキストリロードになるんだけど、その時間がもったいない。かつちょっと昔のマシンなんかだと、コンテキスト起動時にいろいろとロードする関係でめちゃめちゃ重くなったりする。そりゃーへたするとタバコいってくるぐらい。
それがこのHotDeployがあればなくなるっぽい。ビルドしてclassファイルを生成すると、HotDeployさんがそのclassファイルだけを再読み込みしてくれる(ような気がする)
トレードオフとしては1アクセス毎の処理が遅い気がする。普通のプロジェクトだと0.5秒くらいでレスポンスがかえるところ、1.5秒くらいかかる感じ。でもそんなの全然良い!これは本当にアツイです。