sta*_*000 37 java hibernate jpa spring-mvc spring-data
我正在使用数据库中的表,并且该表没有主键或具有可作为主键的唯一值的正确列,我没有权限来更改该表.
我该怎么办?我尝试将@id注释放在一个随机列中并且它有效,但我不知道这是否会在以后带来任何麻烦.我能做什么?
我的课
@Entity
@Table(name="my_table")
public class TheTable {
@Column (name="name", nullable=false)
private String name;
@Id <--- I just put this id in this random column but this column should not be a id column
@Column (name="anyfield", nullable=false)
private String anyfield;
}
Run Code Online (Sandbox Code Playgroud)
Cor*_*Roy 142
我有这个问题,并使用错误的导入为@id:
确保它是:
import javax.persistence.Id;
Run Code Online (Sandbox Code Playgroud)
并不是:
import org.springframework.data.annotation.Id;
Run Code Online (Sandbox Code Playgroud)
小智 12
Hibernate是地址SQL数据库的中间件,由于sql数据库中的每一行都应该有唯一的标识符,因此hibernate会强制您定义一个.
以下是生成的主键示例,它将自动添加(不要忘记getter和setter)
@Id
@GeneratedValue
@Column(name = "id")
private int id;
Run Code Online (Sandbox Code Playgroud)
由于不允许重复,因此选择任意列是不可取的.
归档时间: |
|
查看次数: |
79177 次 |
最近记录: |