java - 如何使用 Pageable 在 Spring Boot 和 Thymeleaf 中显示按点赞数排序的技能列表?
问题描述
我正在尝试使用 Pageable 在 Spring Boot 和 Thymeleaf 中按喜欢的数量排序技能列表,但我遇到了问题。我不确定该怎么做。解决这个问题的好方法是什么?
编辑。错误:org.springframework.beans.factory.UnsatisfiedDependencyException:创建名称为“accountController”的bean时出错:通过字段“skillRepository”表示的依赖关系不满足;嵌套异常是 org.springframework.beans.factory.BeanCreationException:创建名为“skillRepository”的 bean 时出错:调用 init 方法失败;嵌套异常是 java.lang.IllegalArgumentException: 无法为方法 public abstract java.util.List projekti.Skill.SkillRepository.findAllSkills(projekti.Account.Account,org.springframework.data.domain.Pageable) 创建查询!找不到类型技能的属性 findAllSkills!
AccountController.java
@GetMapping("/profile/{path}")
public String profile(Model model, @PathVariable String path) {
Account account = accountRepository.findByPath(path);
Pageable pageable = PageRequest.of(0, 5, Sort.by("likes").descending());
model.addAttribute("skills", skillRepository.findAllSkills(account, pageable));
return "profile";
}
技能.java
@Entity
@Data
@NoArgsConstructor
@AllArgsConstructor
public class Skill extends AbstractPersistable<Long> {
@NotEmpty
@Size(min = 1, max = 50)
@Column
private String name;
@ManyToMany
@JoinTable(
name="who_liked",
joinColumns=
@JoinColumn(name="skill_id", referencedColumnName="id"),
inverseJoinColumns=
@JoinColumn(name="like_account_id", referencedColumnName="id"))
private List<Account> likes = new ArrayList<>();
}
SkillRepository.java
public interface SkillRepository extends JpaRepository<Skill, Long> {
List<Skill> findAllSkills(Account account, Pageable pageable);
}
配置文件.html
<li th:each="skill : ${skills}">
<span th:text="${skill.name}">skill</span>
<form th:action="@{/profile/{path}/skill/{id}/like(path=${path}, id=${skill.id})}" method="POST">
<input type="hidden" id="skillLike" name="skillLike" value="skillLike"/>
<button type="submit"><span th:text="${#lists.size(skill.likes)}">likes</span></button>
<span> likes</span>
</form>
</li>
解决方案
findAllSkills
界面中不存在JpaRepository
,您可以将其更改为findAll
推荐阅读
- python - 使用 SciPy 在曲线之间进行插值
- node.js - 当MongoDB中至少需要一个子文档时,有什么更好的方法来防止删除所有子文档
- java - 获取最大尺寸的连续子阵列尺寸
- c - 为什么我的 flex 和 bison 程序不起作用?正弦和余弦函数计算器
- go - image.Decode 在解码 .png 文件时返回错误
- javascript - 如果月份无效,则启用/禁用按钮
- python - scipy.integrate.solve_ivp 在 MATLAB 中完成的状态空间模拟上发散
- swift - Swift 5 - 传递给不带参数的调用的参数
- asp.net-core - .NET Core 中的 IFormFile vs byte[] 和文件上传最佳实践
- html - Pug span 无法在 flex div 中正确渲染