我添加了唯一约束注释,但仍然可以插入重复条目。
@Entity
@Table(uniqueConstraints = {@UniqueConstraint(columnNames = {"firstName", "LastName"})})
public class Student {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private String firstName;
private String LastName;
//getter and setter and no-arg constructor
Session session = HibernateUtil.getSessionFactory().openSession();
session.beginTransaction();
Student student1 = new Student("alireza", "rayani");
Student student2 = new Student("alireza", "rayani");
session.save(student1);
session.save(student2);
session.getTransaction().commit();
最佳答案
终于,我发现了问题,我改变了方言
properties.put(Environment.DIALECT,"org.hibernate.dialect.MySQL5Dialect");
到
properties.put(Environment.DIALECT, "org.hibernate.dialect.MySQL57Dialect");
关于java - 为什么@UniqueConstraint在 hibernate 中不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60270432/