タグ

ブックマーク / taedium.hatenadiary.org (5)

  • オレオレStruts拡張 - taediumの日記

    S2Strutsをメンテナンスしているのですが、メンテナンスしてみて思ったのは「S2Strutsって意外と機能が多くて間単に使いたいだけの人にとっては全体を把握しにくいだろうなぁ」ということです。 もっとシンプルなのがいいな、ということでこんな感じのオレオレStruts拡張を作ってみました。 ActionやActionFormは通常のStrutsと同じように継承して使う。 Actionのメソッドの呼び出しはパラメータ名に基づいて行う。 アノテーションでActionFormのバインディングを行う。 アノテーションでHttpServletRequest/HttpSessionのgetAttribute/setAttributeを自動化する。 Strutsにだけ依存するようにする。 Seasar(2.3系/2.4系)やSpring(1系/2系)など任意のDIコンテナと連携可能にする。 Strut

    オレオレStruts拡張 - taediumの日記
    kmachu
    kmachu 2008/06/27
    参考にさせてもらおう
  • S2Strutsのお奨めパターン - taediumの日記

    S2Strutsを使うときは1.2系/1.3系のバージョンにかかわらず共通で次のパターンでいくのがわかりやすくて安全だと思います。 基的にjspとActionFormとActionとInitActionは1対1対1対1で作成 jspからのサブミットはformのaction属性に対応するActionへのみとする(1つのフォームを異なるActionへサブミットするs2struts:submitタグを記述しない) 呼び出されたActionでは次画面の表示に必要な処理は行わない 次画面の表示に必要な情報はその画面(jsp)のs2struts:initタグから呼び出すInitActionで行う たとえば、従業員のマスタメンテで編集画面(edit.jsp)から確認画面(confirm.jsp)へ遷移するとします。 edit.jsp <html:form action="/edit"> ・・・ <s2

    S2Strutsのお奨めパターン - taediumの日記
    kmachu
    kmachu 2008/06/17
  • JPA、とりあえず覚えたい5つのアノテーション - taediumの日記

    前回のエントリを見直してグループを3つに分けてみました。アルファベット順ではなく優先度順で並べています。とりあえずAグループの5つのアノテーションを覚えればJPAで簡単なサンプル(よくあるEmpとDepとか)を楽しめるはず。JPAのデフォルトのマッピング規約を最大限使用します。 Aグループ @Entity @Id @ManyToOne @OneToMany @PersistenceContext 次に覚えたいのがBグループの5つのアノテーション。簡単なサンプルでは使わなくてもOKなのですが実務では必須となるアノテーションです。 Bグループ @GeneratedValue @Version @Temporal @Enumerated @Transient で、最後はCグループの5つのアノテーション。必須ではないですが、JPAのデフォルトのマッピング規約が使えない場合やIDを採番する戦略を自分

    JPA、とりあえず覚えたい5つのアノテーション - taediumの日記
  • JPAはどれだけSQLの方言の差異を吸収できるのか - taediumの日記

    JPAはSQLの方言の差異を吸収するけど、具体的に何を吸収してくれるのか。ちょっと整理。 ページングの構文の違い たとえば、Oracleだとrownumと副問い合わせを組み合わせて実現するけど、MySQLだとlimit/offsetを使うとか。 ファンクションの違い(文字列操作、日付など) たとえば、JPAでconcat関数を使うと、Oracleは「||」で文字列連結するけど、SQLServerだと「+」で文字列連結するとか。 時間型の違い たとえば、java.util.Dateの時刻の値をOracleではDATE型にマッピングするけど、MySQLだとTIME型にマッピングするとか。 LOB型の違い たとえば、Javaのbyte配列をOracleだとBLOB型にマッピングするけど、SQLServerだとIMAGE型にマッピングするとか。 これらの型はJDBCでの扱いが結構異なるけど、そこを

    JPAはどれだけSQLの方言の差異を吸収できるのか - taediumの日記
  • 2005-01-01

    入門以前 Chapter1 Introduction Chapter2 Entities 2.1 Requirements on the Entity Class 2.1.1 Persistent Field and Properties、2.1.2 Example 2.1.3 Entity Instance Creation, 2.1.4 Primary Keys and Entity Identity, 2.1.5 Embeddable Classes, 2.1.6 Mapping Defaults for Non-Relationship Fileds or Properties 複合プライマリキーを使ってみる 2.1.7 Entity Relationships 2.1.8 Relationship Mapping Default 2.1.8.2 Bidirectional Man

    2005-01-01
  • 1