2007-01-01から1年間の記事一覧

Enumに対するVisitorパターン(Generics対応 その2)

ワイルドカードを使った方がかっこいいかも。 追記 と思ったけどワイルドカード使ったときと使わないときの違いがわからなくなってきた... public enum Hoge { FOO { public <T> T accept(HogeSwitch sw) { return sw.foo(); } }, BAR { public <T> T accept(Ho</t></t>…

JavaEE勉強会で小林さんが書いたコード(Enumに対するVisitorパターン)

ぼくのPCに入っているのでコピペしときます。 どういう文脈でこのコードがでてきたかというと、JPAの継承戦略つかわなくてもEnumでEntityごと同一Entityクラスのインスタンスごとに処理を振り分けられるよね、という話題からです。 public enum Hoge { FOO {…

Oracleメモ

INFO: /usr/bin/ld: crt1.o: No such file: No such file or directory oracle 10g installation problem on RHEL4 http://forums.oracle.com/forums/thread.jspa?threadID=347951&start=0&tstart=0うまくいかないものだなあ。追記 以下のサイトの手順通りに…

hibernate-entitymanager(3.3.0.GA)のMaven2Upload申請

申請しようと思ったんですけど、その前に申請しなければいけないもの(依存しているjarでまだリポジトリにないもの)が結構多いことに気づきました。 hibernate-commons-annotations (3.0.0.GA) hibernate-validator (3.0.0.GA) hibernate-search (3.0.0.Bet…

JUnit4.3

JUnit4.3がMaven2のセントラルリポジトリに登録されてました。 4.3では@Ignoreをクラスに対しても指定できるようになりました。 一時期HEADに@MixInとか新しいアノテーションがいくつかあったのですが、結局やめたみたいですね。4.4では革新的な機能が盛り込…

OC4J

最近なぜかOC4J(Oracle Application Server 10gの10.1.3.1.0)を動かしています。 とりあえずわかったこと OC4Jで読み込んだjarのエントリのURLのプロトコルは「code-source」 EJB3(JPAも)に対応している 久々にやってみて思いました、やっぱりwarのデプ…

H2の1.0.20070304版

H2 Database Engineの最新版をMaven2のセントラルリポジトリにUpload申請しました。 昨日あたりに取り込まれたようです。 作者の方に尋ねてみたらソースとかJavaDocとかは含めたくないとのことだったので入れてないです。

JPQLのHAVING句の変な仕様?

JPQLのHAVING句ですが、TopLinkでは以下のクエリが動きませんでした(Hibernateでは問題なく動きます)。 SELECT e.department.id, MAX(e.salary) FROM Employee e GROUP BY e.department.id HAVING MAX(e.salary) > 1000 一見、まったく問題なさそうなので…

TSSでの Rod Johnson と Gavin King のやりとり

http://www.theserverside.com/news/thread.tss?thread_id=44086#226777ひと言で言うと、過去にはいろんないきさつがあったけど仲直りしてやっていこうよみたいな?

相関サブクエリを使ったときサブクエリが駆動表となることはある

DB

SQL Server 2005で試してみました。結果、確かにサブクエリが駆動表になる場合がありました。 これは教えてもらってよかったです。ありがとうございました。> id:koichikさん私は、相関サブクエリを使ったときはサブクエリは必ず後に実行されるものだとばか…

JPQLでスター型のクエリができない

ここで言うスター型のクエリとは、 EmployeeエンティティとProjectエンティティの関連が1対多、 EmployeeエンティティとPhoneエンティティの関連が1対多、 ProjectエンティティとPhoneエンティティのプロパティを条件にしてEmployeeエンティティを取得 とい…

ProEJB 3(asin:1590596455) 7章の資料up

前回の勉強会では、JPQL(JPAの問い合わせ言語)から生成されたSQLをEclipseのコンソールで見たりしたのですが、なんだかわかりにくかったので別のパワポにまとめました。JPQLがどんなSQLに変換されるのかは面白いと思うのでJPAに否定的な人も肯定的な人もよ…

H2 Database Engine の Version 1.0 / 2007-02-09

DB

http://code.google.com/p/h2database/downloads/list ここにおいてあるんだけどまだ正式リリースしたくないのかなぁ?

S2JUnit4でコンテナ作成前に環境名を変更する

Java EE勉強会でのはなし。 @Prerequisiteに指定するOGNL式はコンテナ作成前に評価されるので、これを利用できますです。ただ、最終的に評価される式はtrueにならないとテストケースの実行がスキップされてしまうので注意。 @RunWith(Seasar2.class) public …

Joined Subclass の バルク更新

JPQLのバルク更新はポリモーフィックです。どういうことかというと、たとえば親エンティティへのDELETE操作は子エンティティへのDELETE操作でもあるのです。その結果、マッピングによってはJPQLのDELETE文がSQLでは複数のDELETE文になることがあります。Java…

S2Hibernate-JPA と Kuina-Dao

S2Hibernate-JPAは、前回のサンプルで示したように基本的にEntityManagerを使いやすくするためのものです。 もちろん、これだけでも便利なのですが、Kuina-Daoと組み合わせるともっと便利です。Kuina-Daoを使えばDAOの実装クラスがいらなくなってEntityManag…

S2Hibernate-JPA-rc-1.0.0 の サンプル

前回のつづきです。今回はサンプルを作成します。 定番のDepartmentとEmployeeのone-to-many/many-to-one関連でやってみます。RDBMSはSeasar2に含まれているHSQLDB(hsqldb-1.8.0.1.jar)を使います。流れはこんな感じ。 環境のセットアップ テスト作成(環境…

S2Hibernate-JPA 1.0.0-rc1 リリース !

S2Hibernate-JPA 1.0.0-rc1 をリリースしました。 S2Hibernate-JPA 1.0.0-beta-1 からの変更点は以下の通りです。 S2-Tiger-2.4.8 に対応しました。 同梱する Hibernate のバージョンを以下に更新しました。 Hibernate 3.2.1 GA Hibernate Annotations 3.2.1…

S2Hibernate-JPA を使うと何がうれしいか

S2Hibernate-JPA を使った簡単なサンプルを日記で書いてみようと思います。と、その前に、S2Hibernate-JPAを使うと何がうれしいのかについてちょっとだけ説明してみます。ひと言で言うと... EJB3コンテナを使わなくても EntityManager を DI して利用できる。…