Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/unit-testing/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何放置用许多字段标识实体但不是ID字段的注释(Hibernate)_Hibernate_Ejb 3.0 - Fatal编程技术网

如何放置用许多字段标识实体但不是ID字段的注释(Hibernate)

如何放置用许多字段标识实体但不是ID字段的注释(Hibernate),hibernate,ejb-3.0,Hibernate,Ejb 3.0,我使用的是Hibernate,EJB3没有xml。 我需要实现一个逻辑来防止重复数据。我上过这样的课: public class CvnCity implements java.io.Serializable { private Integer idCity; private String city; public CvnCity() { } public CvnCity(String city) { this.city = city;

我使用的是Hibernate,EJB3没有xml。 我需要实现一个逻辑来防止重复数据。我上过这样的课:

public class CvnCity  implements java.io.Serializable {

   private Integer idCity;
   private String city;

   public CvnCity() {
   }  

   public CvnCity(String city) {
      this.city = city;
   }

   @Id @GeneratedValue(strategy=IDENTITY)

   @Column(name="ID_CITY", unique=true, nullable=false)
   public Integer getIdCity() {
      return this.idCity;
   }
...
}

另一个是这样的:

public class CvnCity  implements java.io.Serializable {

   private Integer idCity;
   private String city;

   public CvnCity() {
   }  

   public CvnCity(String city) {
      this.city = city;
   }

   @Id @GeneratedValue(strategy=IDENTITY)

   @Column(name="ID_CITY", unique=true, nullable=false)
   public Integer getIdCity() {
      return this.idCity;
   }
...
公共类Person实现java.io.Serializable{

   private Integer idPerson;
   private String name;
   private City city;

   ...
}

我想防止插入同名同城的人,同时,我需要将这个问题扩展到许多类,所以我想实现一个只有uniques字段作为输入的通用逻辑

查看第2.2.3.2节。的复合标识符