参考になるメモ

最近のkoichikさんのブログは非常に参考になる。
昨年、hibernateを使った際にも非常にお世話になった。
今回はこれ。
遅延ロードと整合性とトランザクション
個人的に遅延ロードが大嫌い(hibernateをつかって嫌いになった)な私。
同じような疑問をもち、しかしJava/Web開発の現場経験の乏しい私は日々悶々としていた。そこに同じような問いかけから、”ひとつの”解が示された。
思っていたこととほとんど同じだったので、ちょっとうれしい。


大量のトランザクションが発生し、パフォーマンスが要求される業務システムにおいてのO/Rマッパーの使いどころは
ResultSetの詰め替え
につきる。(あくまでも個人的な考え)
以前携わった物流系のシステムでは、業務ロジックはSQLで表現していた。
実際ロジックの元となるデータは全てDBMSに格納されており、そこからデータを取り出し、計算し、格納するとなるとわざわざJavaのコードで書く必要性が感じられない。
全てのシステムがそうではないが、ほとんどの業務システムはDBMSのデータを操作することに尽きる気がする。そうなると

  • 実行したいSQLがそのまま記述できる。
  • プロシージャーコールが可能。

というのは必須条件のような気がする。


なんて偉そうに書いてはいるものの、通信系でC/C++でOnメモリでDBなんてまともに現場で使った事のない人間なのでなんとも・・・。