2007-11-01から1ヶ月間の記事一覧

mysqldumpのダンプでauto_incrementがなくなる (4.1.20 以前)

先日、mysqldump コマンドでMySQLのデータベースの移行を行ったのですが、そのときに --compatible=mysql40 オプションを付けると カラムの auto_increment が出力される SQL に含まれないという現象に遭遇しました。 既知のバグ MySQL Bugs: #14515: mysqld…

java.util.Listをいかにマップするか

java.util.List をマッピングする場合、@OneToMany や @ManyToMany を使います。しかし、これだけでは要素の順序が不定になってしまいます。また、一対多・多対多の、「多」に属するテーブルは、順序やインデックスを表す整数値のカラムを含むこともよくあり…

テーブルが共通のカラムを持つ場合

Hibernate Annotations を前回にひき続き使っています。かなり良いですね。 各テーブルが共通のカラムを持ってしまう状況 (更新時刻、削除フラグなど) が、実際のアプリケーション開発では出てきます。(正規化するのが正しい解の時もありますが、スキーマが…

MacPortsでlaunchdのサービスをインストール

MacOSX 10.4 以降で、 MacPortsで apache2 や postgresql82-server をインストールすると、 /opt/local/etc/LaunchDaemons に launchd 用のスクリプトが配置されます。launchctl でこれらのサービスを実際に launchd に登録します。 plist を編集する インス…

Hibernate Annotationを使ってみるソース

Applicant というクラスを applicant テーブルにマッピングします。 JUnitで動作。Applicant.java import java.sql.Date; import javax.persistence.Entity; import javax.persistence.Id; /** * 受講申込者情報 */ @Entity abstract public class Applicant…

Hibernate Annotations を使い始めるときにハマったこと

Hibernateは、オープンソースのORマッピングフレームワークです。 http://www.hibernate.org/Hibernate Annotationsを使えば、あのくだらん 〜〜.hbm.xml を書かなくてよいとの事で、結構嬉しそうなので使ってみます。 本家のドキュメントと、Kishida's SITE…