Java 如何在Hibernate中创建插入忽略查询?

Java 如何在Hibernate中创建插入忽略查询?,java,hibernate,Java,Hibernate,Hibernate必须在具有唯一字段的表中进行插入。我想忽略重复的条目,以便我的程序继续运行。在MySQL中,我会简单地说INSERT IGNORE,但我不知道如何在Hibernate中做到这一点。有什么建议吗?谢谢 您是否尝试过使用@SQLInsert?这样,您就可以使用自己的自定义SQL覆盖Hibernate语句,并使用INSERT IGNORE: @SQLInsert(sql="INSERT IGNORE INTO CUSTOMER(id,name) VALUES(?,?)") class

Hibernate必须在具有唯一字段的表中进行插入。我想忽略重复的条目,以便我的程序继续运行。在MySQL中,我会简单地说
INSERT IGNORE
,但我不知道如何在Hibernate中做到这一点。有什么建议吗?谢谢

您是否尝试过使用
@SQLInsert
?这样,您就可以使用自己的自定义SQL覆盖Hibernate语句,并使用
INSERT IGNORE

@SQLInsert(sql="INSERT IGNORE INTO CUSTOMER(id,name) VALUES(?,?)")
class Customer{
   ...
}

您是否尝试过使用
@SQLInsert
?这样,您就可以使用自己的自定义SQL覆盖Hibernate语句,并使用
INSERT IGNORE

@SQLInsert(sql="INSERT IGNORE INTO CUSTOMER(id,name) VALUES(?,?)")
class Customer{
   ...
}

如果您使用的是简单的SQL查询, 使用以下代码

               Query query = session.createSQLQuery("INSERT IGNORE INTO user (name,username) VALUES (:name,:username)");
               query.setParameter("name", name);
               query.setParameter("username", username);
               int i= query.executeUpdate();

如果您使用的是简单的SQL查询, 使用以下代码

               Query query = session.createSQLQuery("INSERT IGNORE INTO user (name,username) VALUES (:name,:username)");
               query.setParameter("name", name);
               query.setParameter("username", username);
               int i= query.executeUpdate();