这是一个使用 Hibernate 和 PostgreSQL 的 JavaEE6 应用程序。用户在数据库中创建@GeneratedValue(strategy = GenerationType.AUTO)
,生成长 ID。我正在尝试使用数据库的 user_id 列作为登录领域的名称列(例如request.login(id.toString(), password )
),因为我无法确保 user_name 列中名称的唯一性。但是,使用 Glassfishv3 的内置 FORM 身份验证失败,因为该机制似乎期望数据库中的列是 var char。
因此,我正在寻找一种在数据库中创建用户的同时填充列 string_id 的方法,该列的值将是自动生成的翻译成字符串的 id。我可以在随后的手术中做到这一点,但我想知道这是否可以一次性完成。我试过@PrePersist,但似乎在这个阶段还没有生成id。或者也许有更聪明的方法来执行登录?
谢谢。