何も知らないプログラマーがStrutsでWebサービス開発に取り組んでみたことまとめ。
個人的なまとめとしても掲載します。
私的な用事でJavaでWebサービスを開発する用事があったので、Javaのフレームワークから調べて行くことに。
Javaは書けることは書けますが、JavaでWebサービス開発なんてしたことないです。
とりあえず、聞いたり調べたりしていく中でJavaのWebサービス向けフレームワークには
というものがあるらしい。Playはちょっと新しすぎるようなので却下。
残るはStrutsかSeasarだけど、とりあえず規模が大きそうなStrutsに取り組んでみることにする。
(後で、Seasar2にはSAStrutsが含まれるのを知るのですが。。。。)
何はともあれ環境構築とHelloWorld
そして、軽い気持ちで挑んだ結果がコレ。
http://d.hatena.ne.jp/masa_charcoal/20101103/1288781644
Struts難しいでござる。というか、設定めんどくさいでござる。
覚えること多いし。
で、それから研究室で「やっとStruts2動かせたんだよねー。」
という話をしたところ、同期のバリバリベンチャー企業でバイトをしている友人より
SAStrutsの話を聞く。なんでも、設定の必要がないStrutsらしい。
ほうほう。
SAStrutsと環境構築と私。
そして、実践してみたり調べたりしてみたところ、SAStrutsの開発元は
Seasarを作っているところと同じところで、SeasarはSAStrutsを利用したフレームワーク。らしい。
で、とりあえずSAStruts用の環境を整え直す事に。
そこで、とても参考になった記事がこちら。
Doltengとはなんぞや?SAStrutsの環境を作るんじゃないの?と思われそうですが、
Doltengは一発でSAStruts用の環境をEclipseのWorkspaceにプロジェクトとして整えてくれる優れもの。
特に、このページの通りに進めていると必要な環境、プラグインが整っちゃいます。
で、実践してみた(さらにうろ覚え)な感想は
- サーバ止めなくて良い。更新したものがすぐに反映される。
- でも無茶なコード書いて保存すると止まる。(仕方ないね)
- アノテーションで定義に必要なものを書いてしまうのが超便利。
- 設定を書かなくてもいいし、見やすい、分かりやすい。
- 画面遷移の把握がしやすくなった。
んで、同じようにLinux(Ubuntu10.04 on iMac)でも環境を構築しようー。
せっかくだから日本語版も導入しようー。と思い
から、日本語環境を導入。が、しかし以下の問題が発生
- プロジェクトがインポートできない
- ショートカットキーの設定画面でエラーを起こす。
なじぇ。。。しかもLinux上だと日本語入力ができなーい!ぐぬぬ。
未だ未解決。なので、Linux上の日本語環境は諦めることに。
とりあえず、やっておきたいこと。
で、Webシステムを開発するのですから、とりあえず必要な以下の3つをセレクト。
また、ひと通りの参考書として
- Seasar 2 徹底入門
という本がセオリーらしいのでチョイス。中身も見やすくて必要なところをサクっと
見つけられるので確かにオススメです。もちろんSAStrutsの解説もかなり詳しく書かれています。
全部読んで実践する暇がなかったので、必要なところを必要なときに実践してみる形にしました。
そして以下のサイトを参考にMySQLに接続してみる。
- MySQLからS2JDBC-Genで各種クラスを自動生成しましょう(Eclipse編)
無事、接続完了。
接続後は、Entityクラスにアノテーションで、変数と、DBのカラムを結び付けてやってSQLを実行する命令を
実行すれば良いご様子。命令の内容や解説は上のSeasar2徹底入門を参考に実行。
特殊文字のエスケープは上記の@ITの記事にもあったようにEL式の拡張を用いる。
また、カスタムタグや各種リファレンスとしては以下のページを参考に。超絶役に立ちました。
- カスタムタグリファレンス
XMLの操作は今のところまだ取り組んでないのででき次第。。。。
あとは、プロジェクトの管理やセッション管理等をやっていきたいところですね。