ActiveObjects
今回は「ActiveObjectsを使ってEntityを作成するには」と言う事で前回先に取り上げておけば、と思ったEntityManager#create(RawEntity,DBParam...)辺りをば。 と言っても、こいつはJavaDoc見ればワカンジャンっていうくらいのものですね。DBに実際にINSERT文…
メリクリですね。メリクリ。あんまりそんな気分でもないのだけれども。 前回PreloadアノテーションとImplementationアノテーションについて解説するぜ!って言ってみました。が、たぶんActiveObjects入門とか、「使おうぜ」という本筋からすると、Preloadアノ…
java-ja忘年会に急遽行ってみたらid:yuripopのサンタコスにヤラレタ。なんだかリア・ディゾンぽかったんだけど、id:yuripopってそういう方でしたっけ?ともかく、普通にかわいくてビビった。id:t_yano氏が終始ドキドキしていたのも頷ける。 そういえばActive…
ActiveObjectsのクセがだいぶ分かってきた。 Table Inheritance with ActiveObjects - Code Commitという記事を読んで、「へぇ。継承関係を持つオブジェクトも永続化できるのか。」と思って試してみると、しばらく動かず、うんうんうなっていた。 原因は親ク…
なるほど。setterやgetterメソッドに@IgnoreをつけるとDBのスキーマに変換しない対象になるのか。それで代わりに実装の方でデータを保持すれば良いと。気をつけないといけないのは、DBからデータを取り直しても実装の方のフィールドの値が初期化されるわけで…
シリアライズしてもそのパラメータはシリアライズの対象外という概念が頭にあるんです。XStreamとかでオブジェクトをXMLに変換する時にtransientをつけておくとそのフィールドを外して永続化してくれます。しかしActiveObjectsの@Transientはちょと違う。DB…
正式リリース前のせいか、まともなドキュメントは見当たらないActiveObjects。でも面白い機能が多いせいか、いろんなところで取り上げられているみたいですね。その中でも参考になったのがJavalobbyの記事。結構後ろの「Implementing the Active Record Patt…
ActiveObjectsの中にはトランザクションを保証するためのTransactionクラスがある。Transactionクラスのシグネチャはこんな感じ。 public abstract class Transaction<T>; public T execute() throws SQLException; protected abstract T run() throws SQLExcep</t>…
今日は最近はまり始めたActiveObjectsのTipsです。まずSQLログを出力するにはどうするのか、ですが、EntityManagerのJavaDocに書かれてました。 EntityManager manager = new EntityManager(provider); Logger.getLogger("net.java.ao").setLevel(Level.FINE…
僕はO/Rマッパーについていくつも調べたことがありません。が、一時期Hibernateを使ってみようとしたことがあります。2年くらい前に「Hibernate in Action」が出て、それを元に使ってみようと頑張ってみましたが、モノの2週間くらいで挫折しました。 当時は3…