one-to-oneTweethibernateをつかっていて若干つまっていました。外部キー関連のone-to-oneで他のテーブルと関連させる際に、どうしても外部キーの値がとれない。userテーブルと、profileテーブルがあって一対一の関係の場合。テーブルとかこんな感じ。</class></hibernate-mapping>で、テストケースがこんな感じ。session.beginTransaction();//session.save(profile);//user.setWebProfile(profile);session.save(user);//session.save(profile);//profile.setWebUser(user);//session.save(user);trans.commit();}}こんなことをしてみたら、どうしても外部キーである、web_profileテーブルのuser_idに値が入らなくてエラーになる。web_profileテーブルの外部参照はずして入れたところuser_idに値が入らない。おもってたら、どうやらAUTO_INCREMENTを設定していたのが原因で値がはいらなかったぽい。AUTO_INCREMENT外したうまくいきましたー。AUTO_INCREMENTをを使ってうまくやる方法ないのかなぁ。[追記]どうやら、AUTO_INCREMENTガ悪いわけではなく、マッピングファイルの設定が悪かったみたいです・・・。generatorの設定が間違えていました。いうかそもそもgeneratorの役割を理解していなくて・・・なんとなくサンプルに載ってから書いておくみたいな最低なことしてたため、Hibernateが動かなかったみたいです。generatorは「一意キーを自動生成する方法を指定する」ってことみたいですね。generatorのclass属性にidentityを指定すれば、AUTO_INCREMENTでも大丈夫になります。</class></hibernate-mapping>これでAUTO_INCREMENT使った場合でもone-to-oneガ使えます。SharegitのインストールモダンPHP勉強会に行って来ました。