S2Hibernate

s2jsf-example-s2hibernateV1.1.0リリース

S2JSFExampleV1.0.3のS2DaoをS2hibernateV1.1.0に差し替えた版です。 次のURLからダウンロードできます。 http://sourceforge.jp/projects/seasar/files/?release_id=15272#15272 このサンプルは、Hibernate2,Hibernate3両方の環境で動作します。 また、両環…

S2Hibernate1.1.0(Hibernate3対応版)のリリースファイルを差し替えました

build.xmlを修正するのを忘れてしまい、org.seasar.hibernate3パッケージのファイルが入っていませんでした。 すみません。。。2005-06-22 22:16に差し替えました。

S2Hibernate1.0.6とS2Hibernate1.1.0(Hibernate3対応版)をリリースしました。

■1.0.6リリースノート ・Seasar V2.2.9にライブラリを更新しました。 ・S2SessionFactory に次のメソッドを追加。 void setInterceptor(Interceptor); ・DTO(Data Transter Object)の値をHQL(HQLアノテーションまたは、NamedQuery)に渡す処理を追加。 ・…

S2hibernate.daoのアノテーションなしのDto対応(HibernteのExampleの様な機能)

HibernateのQBE(Query by Example)では、IDのフィールドを検索条件にすることができませんが、このアノテーションなしのDto対応を使うとIDも含めることができます。 (IDを含めて検索条件に出来ることが良いかどうかは、別として。。。) Daoインターフェー…

1.0.6b4リリースしました。

・Seasar V2.2.7, hsqldb1.7.3.3にライブラリを更新しました。 ・beforeCompletion(),afterCompletion()での処理 beforeCompletion() で Session#flush()を呼ぶように修正 afterCompletion() で Session#clear() してから Session#close() を呼ぶように修正 …

flush()を実行するタイミング

S2Hibernateを使って開発をしていて、例外発生時にS2SessionFactoryImplがセッションを閉じるときにflushしようとして更に例外が発生する、ということがありました。 で、closeSessionメソッドでロールバック中かどうかを判断して、ロールバックしてたらflus…

S2Hibernate1.0.6b3リリース

変更点 ・コネクションプールが一杯のときS2SessionFactoryImplでデッドロックするバグを修正 ・Seasar V2.1.13にライブラリを更新しました。 http://sourceforge.jp/projects/seasar/files/?release_id=13478#13478 id:noryksjさんの修正を取り込ませていた…

S2Hibernate1.0.6b2リリース

まだ、ドキュメントが追いついていませんが、 機能追加したままで、リリースできていなかったので、一旦リリースします。 ・1.0.6b2リリースノート追加 ・EAGERアノテーションの追加 http://d.hatena.ne.jp/kenichi_okazaki/20041120#p3 ・DistinctIterator…

s2hibernate.daoのdto対応について

s2jsf-exampleのs2daoをs2hibernate.daoに差し替えた版を作成中なのですが、 従業員検索のEmployeeDtoDao.javaの次の記述とSQLファイルの部分をどうしようかなぁと思い。 public String searchEmployeeDtoList_ARGS = "dto"; public List searchEmployeeDtoL…

EAGERアノテーション追加してみたものの。。。

意図した感じに動かず。。。SQLが2回発行される。あらら。 S2Hibernate.daoをつ使わずに、Criteriaのコードを書いても動かず、、 マッピングファイルとかで、間違っちゃったかなぁ。 うーん、hibernate.propertiesとかから、順番に確認しようかな。

マッピングファイルがなくても動作する機能の記述方法イメージ

うーん、確かにS2Daoと機能がかぶってしまって、意味なしですね。 リリースせずに、個人的に使うだけになるかも。まぁ、その前に実装始めないとできるかどうか、まだ調査しきれてないので。 とりあえず、イメージしていた内容を書いてみます。。。 次の2つ…

マッピングファイルがなくても動作する機能を追加しようと考えています。

S2Hibernateで、トランザクション管理、Sessionのオープン、クローズの記述が不要になりました。 S2Hibernate.daoで、HibernateのSessionを意識する必要がなくなります。 で、次に書く必要がなくなると楽になるのが、Employee.hbm.xmlの様なマッピングファイ…

Eagerフェッチアノテーションを追加する予定です。

今日のテクノロジートラックのkoichikさんの「Hibernate超入門」 でお話いただいたpptの24ページにある「フェッチ戦略」をサポートする形で Eagerフェッチアノテーションを追加する予定です。 P24 フェッチ戦略 ・Lazyフェッチを基本にする -マッピングでは…

D2Daoと統合

S2Dao、S2Hibernateを統合してS3Dao(EJB3対応)にするとのことです。 ということで、EJB3の仕様もちゃんと見ておかないと。

DTO(Data Transter Object)対応しないとなぁ。

S2JSFExampleVEA2のS2Hibernate差し替え版を作ろうとおもったものの、 DTO対応してないのでできず。。。

メソッドの引数にListを宣言した場合の処理を追加する予定です。

メソッドの引数にListを宣言した場合、SQL 関数(HQLかな?)の"in"を使って検索処理を自動的に行う機能を追加しようと考えています。 次のようなイメージです。 例)複数の社員No(empno)を保持しているListを渡して、該当するEmployeeオブジェクトを取得する…

オブジェクトのロードについて

HibernateのSession#load()を呼び出すLoadCommandを作ろうと思ったのですが、 LockModeを呼び出す関係で、Session#get()を呼び出すコマンドになりそうです。 しかし、メソッドの命名規則を「getで始まる場合、get()を呼び出す」としてしまうと、 getEmployee…

1.0.6bをCVSにアップしました。

忘れてました。すみません。

S2Hibernate1.0.6bは、Seasar 2.0.22でも動作します。

というか、 Seasar 2.0.22上で作っていたのですが、 リリース直前にSeasar 2.1.0に差し替えてテストしたところ動作したので、 Seasarのモジュールを2.1.0にして出してみました。 なので、S2Hibernate1.0.6bは次のどちらのS2の上でも動作します。 Seasar 2.0.…

メソッドの命名規則 Updateの場合を変更する予定です。

インターフェースに次の3つのメソッドのどれかがあった場合があった場合、HibernateのSession#update()を呼び出していたのを update,modify,store 次の2つのメソッドのどちらかの場合に、HibernateのSession#update()を呼び出すように修正。 update,merge …

DistinctIteratorを追加させていただく予定です。

id:koichikさんが作られたDistinctIteratorを追加させていただく予定です。 http://d.hatena.ne.jp/koichik/20040920#1095687899 ご希望のパッケージ名ありませんか?>id:koichikさん

S2Hibernate.daoを使ったDaoインターフェースの例

実行するには、このDaoインターフェースの他に、 S2hibernate.diconとHibernateのマッピングファイル、データベースがあれば動作します。 EmployeeAutoDaoインターフェイスの実装クラスEmployeeAutoDaoImpl等を記述する必要はありません。 S2Hibernate.daoを…

S2Hibernate.daoのHQLアノテーションについて

現状ソースの中で、HQL文を直接指定できるアノテーションとして実装しています。 HibernateのマッピングファイルにDaoインターフェースのメソッド名と同じNamedQueryを書けばソースに書く必要はないと言えば、ないのですが、 ソースの中に書けた方がコードが…

S2Hibernate.daoのselect時に実行するHQL文の優先順位

次の順番で、各検索用メソッドに対応する検索処理を取得または生成します。 HQLアノテーションを指定している場合、HQLアノテーションに記述したHQL文を実行します。 Hibernateのマッピングファイルに[ Daoインターフェース名 + "_" +メソッド名 ] でNamedQu…

S2Hibernate1.0.6bリリース

S2HibernateにDaoサポート用のインターセプタを追加したS2Hibernate1.0.6bをリリースさせていただきました。 1.0.6bのbはベータのbです。ちょっと、弱気。。。 S2Hibernate1.0.6bのダウンロード ドキュメントは、http://www.seasar.org/のトップページから[…

NamedQuery対応

koichikさんから頂いたコメントを受けて考えてみました。 QUERYアノテーション改めHQLアノテーションについて. HibernateではHQLをマッピングファイルに記述できるので,アノテーションを使って記述するのはHQLそのものよりもマッピングファイルに書いたHQL…

S2HibernateDaoInterceptor

近々リリースしたいと思っております。 ・save,update,delete,loadの自動処理?について まぁ、Hibernateなので、自動は当たり前なのですが。。。 interfaceで、次のように記述するだけで、実装しなくてよいので、多少はコードが短くなります。 public void …

実戦投入します。

S2Hibernateを今回の案件に実戦投入します。 これで、少しは開発のペースが上げられると思います。

CVSのモジュール名s2hibernateのままにしようと思います。

削除依頼をしたら、原則として削除依頼などはプロジェクト管理者グループに 入っている人のみが受け付けてもえるとのことなので、 ややこしくしないためにも、このままのs2hibernateで行こうと思います。

cvsにアップしたのですが。。。

id:masataka_kさんの「Seaser CVSへEclipse3から接続」を参考にアップさせていただきました。 ありがとうございました。 ガーン!cvsモジュール名を間違えた。。。 命名規則あったんですね。(http://www.kakutani.com/wiki/articles/?cmd=view&p=Seasar2And…