Seasar DI Container with AOP

S2Daoは以下の特徴を持っています。

  • XMLを使用しないO/Rマッピング機能
  • 最近のフレームワークのO/Rマッピングは、たくさんの情報を記述したXMLを必要としますが、
    S2DaoではXML自体を必要とせず、 Javaソースコードにメタデータを記述するだけでO/Rマッピングすることが可能です。

  • JDBCの知識が不要
  • Javaアプリケーションにおいて、データベースとの接続・切断などのやり取りにはJDBCのAPIを使用します。
    S2Daoでは、そういったやり取りをS2Dao側で処理するので、開発者はJDBCを意識することなくデータベースとのやり取りが実現可能です。 データベースとの接続・切断といった処理をソースコードに記述する必要がなく、作業量の削減にも繋がります。

  • SQLプログラマとJavaプログラマの分業した作業が可能
  • S2Daoでは実行するSQL文は外部ファイルとして用意します。 そのSQL文はSQL*PlusなどのSQLを扱うツールで実行して動作することを確かめたSQL文にコメントでJavaとのマッピングを書くことで、 SQLのツールでもそのまま実行が可能なSQL文です。(これを2Way SQLと呼んでいます。)またS2Daoで読み込んでJavaとマッピングをすることもできます。 SQL文は外部ファイル(SQLファイル)に記述し、SQL文以外Javaのロジックは一切書く必要がないので、 SQLプログラマとJava開発者が完全に分業して作業することが可能となり、開発効率が向上します。 動的なSQL文もJavaのロジックを書かずに開発することが可能です。

  • SQL文の自動生成
  • Javaに定義するメソッドを命名規則に合わせることで、SQL文の記述が不要で自動的にSQL文を生成させることができます。
    ほとんどの場合は自動生成で済みますが、複雑なSQL文を発行したい場合やカスタマイズしたい場合などは、手動で任意のSQL文を記述することもできます。

  • インターフェースと実装の分離
  • インターフェースを定義するだけで、アスペクトの適用やSQL文の自動生成が可能になります。

ドキュメント

トラッキング

ダウンロード

ツール

過去のバージョン