如何使用Hibernate避免MySQL数据库中的重复条目?

时间:2015-02-27 05:32:45

标签: java mysql hibernate google-places-api

我正在使用Google Radar Place搜索和Place Details API。我从这个API获得json响应。我需要将这些响应存储在我的MySQL数据库中。为此,我将JSON响应转换为Java对象,并将其存储在我的MySQL数据库中。

此API仅提供最多200个响应。所以,如果我需要在某个地方获得所有响应,我必须将该区域分解为更小的区域。而且,对于这些较小的区域,我找到了答案。因此,在此过程中,我使用HIBERNATE来存储我的数据。在更新到数据库时,我需要避免重复输入db。我使用place_id作为主键。但是,place_id是我从这个API收到的唯一。我无法自动增加它。那么,如何避免重复输入?

1 个答案:

答案 0 :(得分:0)

您可以创建一个实体的Java对象,然后告诉Hibernate他需要使用特定字段作为主键

@Entity
public class Region{
    @Id
    Long id;

    String name;
    public void setId(Long id){this.id=id;}
    public Long getId(){return id}
    //And so on...
}

请查看此信息以获取更多信息: https://docs.jboss.org/hibernate/stable/annotations/reference/en/html/entity.html