3

データベース内のオブジェクトを削除しようとしています。

私の最初の試みは:

 public void removeAll(){
    TypedQuery<anObject> query = em.createQuery(
            "DELETE FROM tablName",
            anObject.class);
    query.executeUpdate();
}

これにより例外が発生したため、対象のサイトの例を見て、自分のコードを彼らのものに似るように更新しました。

  public int removeAll(){
        int deleted = em.createQuery(
                "DELETE FROM tableName").executeUpdate();
    }

同じ例外が発生しています:

com.objectdb.o._TransactionRequiredException: Attempt to run update query when no transaction is active

誰が私が解決するために何ができるか知っていますか?

4

1 に答える 1

1

他の誰かがこれに出くわした場合に備えて、ここに回答を追加しました。

追記するのを忘れていました@Transactional

最終的なコード スニペットは次のようになります。

   @Transactional
public void removeAll(){
    TypedQuery<anObject> query = em.createQuery(
            "DELETE FROM tableName",
            anObject.class);
    query.executeUpdate();
}
于 2015-08-02T13:07:40.313 に答える