当前位置: 首页 > 面试题库 >

Spring Data:支持“删除依据”吗?

郎曾笑
2023-03-14
问题内容

我正在使用Spring JPA进行数据库访问。我能够找到诸如findByName和countByName之类的示例,对于这些示例,我不必编写任何方法实现。我希望找到一些根据某些条件删除一组记录的示例。

Spring JPA是否支持类似于deleteByName的删除?任何指针表示赞赏。


问题答案:

不建议使用的答案(Spring Data JPA <= 1.6.x):

@Modifying救援的注释。但是,你将需要提供自定义SQL行为。

public interface UserRepository extends JpaRepository<User, Long> {
    @Modifying
    @Query("delete from User u where u.firstName = ?1")
    void deleteUsersByFirstName(String firstName);
}

更新:

在现代版本的Spring Data JPA(> = 1.7.x)中,查询派生为deleteremove并且count可以访问操作。

public interface UserRepository extends CrudRepository<User, Long> {

    Long countByFirstName(String firstName);

    Long deleteByFirstName(String firstName);

    List<User> removeByFirstName(String firstName);

}


 类似资料:
  • 问题内容: 这在Microsoft SQL Server的T-SQL上是有效的语法,但在SQLite中则无效,在SQLite中是否有相同的替代语法? 问题答案: 通常,将整个联接移到一个子查询中,该子查询查找要删除的行的主键: 如果您有复合主键,则可以使用rowid代替: 如果您有复合主键,并且将该表创建为WITHOUT ROWID 表,则必须将联接重写为相关子查询:

  • 作为测试的一部分,我一直在尝试创建一个用户,然后将其删除,但我不断收到相同的错误组织。冬眠hql。内部的QueryExecutionRequestException:即使在我的存储库和控制器中不断更改代码之后,DML操作也不受支持。 这是我的存储库中的代码: 这是我的控制器中的代码:

  • 我有Java控制器: 并遇到以下问题:警告14068--[nio-8080-exec-3].w.s.m.s.defaultHandlerExceptionResolver:Resolved[org.springframework.web.httpRequestMethodNotSupportedException:Request method'DELETE'not support]它发生在我发送删

  • 最近,我将我的eclipse和ADT插件更新为最新版本,并认识到一些重大变化。每当我创建新的Android应用程序项目时,都会出现一个新的appcompat_v7库,它以前不存在,而且还有一个fragment_main。为什么?为什么是activity_main。xml文件不再是直接用于活动布局的首选文件,为什么appcompat库现在包含在每个项目中?我多次尝试删除eclipse/adt/sdk

  • 我正在尝试使用SwipeToDismissUndoList库在< code>ListView中实现滑动删除,该库扩展了Roman Nurik的SwipeToDismiss示例。 我的问题是在删除动画。由于< code>ListView由< code>CursorAdapter支持,因此动画会在< code>onAnimationEnd中触发< code>onDismiss回调,但这意味着在< co

  • 问题内容: 我正在MySQL 5.5中成功运行查询 但是,我需要使用DELETE运行相同的查询,但我不确定如何删除?即返回的结果应该删除? 有任何想法吗 ? 问题答案: 将其放在子查询中: