Java 具有唯一字段的新对象-Hibernate

Java 具有唯一字段的新对象-Hibernate,java,sql-server,hibernate,sql-server-2012,Java,Sql Server,Hibernate,Sql Server 2012,例如,我有一门课: @Entity @Table(name = "example") public class Example{ @Id @GeneratedValue private Long id; @Column(name = "example_name", unique=true) String name; public Example(){} //getters and setters } //Hibernate logic Example ex = new Example();

例如,我有一门课:

@Entity
@Table(name = "example")
public class Example{
@Id
@GeneratedValue
private Long id;
@Column(name = "example_name", unique=true)
String name;

public Example(){}
//getters and setters
}

//Hibernate logic
Example ex = new Example();
ex.setName("something");

如果我想再次保存名为“某物”的对象,我会得到一个错误。如何在保存会话之前更改该值?

使用相同的会话-在保存示例之前,对该域对象调用
findByName
(实现一个逻辑来检查是否存在具有该名称的示例),如果该域对象不存在,则save else会抛出一个已使用该名称的异常