- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我刚刚在我的 Web Spring 应用程序中遇到了一个问题。我添加了一个方法deleteById,该方法在MessageRepo 中声明,该方法从CRUDRepository 扩展。这种方法工作完美,它重定向到我的“主”页面,但我的 MySQL 数据库没有任何变化。希望任何人都可以回答我的应用程序有什么问题。请随意回答。在我的 Controller 中往下看这个方法
@PostMapping("/main/{id}")
public String delete(@PathVariable(value = "id") Long id) {
messageRepo.deleteById(id);
return "redirect:/main";
}
这就是我的消息在 View 中的样子,带有删除任何内容的按钮。
<#list messages as message>
<div class="task-card">
<p class="task-card-p">${message.text}</p>
<form method="post" action="/main/${message.id}">
<input type="hidden" name="_csrf" value="${_csrf.token}"/>
<button type="submit" class="task-card-btn">delete</button>
</form>
</div>
</#list>
这是我的 messageRepo。没有任何方法导致我扩展 crudRepo。
public interface MessageRepo extends CRUDRepository<Message, Long> {
}
最佳答案
您必须在 Controller 的删除方法上添加@Transactional
注释。您必须导入 org.springframework.transaction.annotation.Transactional 才能使用此注释。还要确保在 Message 类中添加 getter 和 setter。该解决方案将为您完成工作,但作为一个好的实践,您应该在 Controller 和存储库类之间添加一个服务层。将Service类中所有进行数据库操作的方法标记为@Transactional
。
关于Java Spring CRUD 存储库方法 "deleteById"不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61174922/
我使用 SolrJ (4.9.0) 来处理 Solr 查询。 不幸的是,deletByID 方法对我不起作用。它什么也不做(没有错误,没有异常(exception))。 我已阅读有关 schema.x
作为 OOP 的初学者,我在练习中遇到了很多问题。我想知道如何使用 deleteById() 从 myrunner.java 中删除 employe。 我的存储库 import com.ipiecol
我刚刚在我的 Web Spring 应用程序中遇到了一个问题。我添加了一个方法deleteById,该方法在MessageRepo 中声明,该方法从CRUDRepository 扩展。这种方法工作完美
如何在 spring boot 中使用 mockito 模拟 mockRepository.deleteById()? 最佳答案 这取决于你想在哪里使用这个模拟。对于使用 SpringRunner 运
我对 spring-data 中的 deleteById 和 delete 方法有疑问。 这些方法有什么区别?我什么时候应该使用 delete/deleteById? 我在谷歌上搜索了一天,但我没有答
我在我的 Spring 应用程序中观察到一种奇怪的行为。不幸的是我不能分享完整的代码,但基本上是这样的: // the repository @Repository public interface
我是一名优秀的程序员,十分优秀!