これは、Hibernate と PostgreSQL を使用する JavaEE6 アプリケーションです。データベースにユーザーが作成され、@GeneratedValue(strategy = GenerationType.AUTO)
長い ID が生成されます。request.login(id.toString(), password )
user_name 列の名前の一意性を保証できないため、データベースの user_id 列をログイン領域の名前列として使用しようとしています (例: )。ただし、Glassfishv3 で組み込みの FORM 認証を使用すると、メカニズムがデータベース内の列が var char であることを期待しているように見えるため、失敗します。
したがって、ユーザーがデータベースに作成されると同時に、列 string_id を入力する方法を探しています。この値は、自動的に生成された ID が文字列に変換されます。次の手術でもできたのですが、これが一発でできるのだろうかと思っていました。@PrePersist を試してみましたが、この段階では ID が生成されていないようです。または、ログインを実行するためのよりスマートな方法がありますか?
ありがとう。