当前位置: 首页 > 知识库问答 >
问题:

Spring Data JPA创建方法查询失败

孙俊彦
2023-03-14

我想列一份订单,比如

select * from post
Order by created_date desc

这是我的密码

public class Post {
    @Id
    @GeneratedValue(strategy = IDENTITY)
    private Long postId;
    @NotBlank
    private String postName;
    @Nullable
    private String url;
    @Nullable
    @Lob
    private String description;
    private Integer voteCount = 0;
    @ManyToOne(fetch = LAZY)
    @JoinColumn(name = "userId", referencedColumnName = "userId")
    private User user;
    private Instant createdDate;
    @ManyToOne(fetch = LAZY)
    @JoinColumn(name = "id", referencedColumnName = "id")
    private Sub sub;
    public Integer getVoteCount() {
        if (this.voteCount == null) {
            return 0;
        }
        return this.voteCount;
    }
    

}
public interface PostRepository extends JpaRepository<Post, Long> {
    List<Post> findAllOrderBycreateDateDesc();
}

我使用的是Java Spring Boot和Spring Data JPA,我遇到了如下错误

 Could not create query for public abstract java.util.List com.Website.Step2.repository.PostRepository.findAllOrderbycreateDateDesc()!
 Reason: Failed to create query for method public abstract java.util.List com.Website.Step2.repository.PostRepository.findAllOrderbycreateDateDesc()! 
 No property findAllOrderbycreateDateDesc found for type Post!

你们能帮帮我吗!我想我在《findAllOrderBycreateDateDesc》中错了。谢谢对不起我的英语。这是我第一次发布我的问题。除息的

共有1个答案

伊光赫
2023-03-14

尝试如下编辑方法:

List<Post> findByOrderBycreateDateDesc();

由于表列名和实例名看起来不同,因此必须按如下所示注释实例变量:

@Column(name="created_date")
 类似资料:
  • 基础Spring Data repository内置的查询生成器机制对于创建实体仓库的约束查询是有用的,它会从方法名中去掉find…By,read…By,query…By,count…By和get…By这些前缀并解析剩下的内容.这些前缀还能包含更多的表达式例如Distinct,设置一个distinct标志并在查询中创建它,然后第一个By的动作就像一个分隔符来表明查询实际标准的开始。最基本的方式你可

  • 我很难找到任何类型的文档,说明如何在我的模型中查询更复杂的属性。 关于这个查询创建是如何工作的,有没有更好的文档?

  • 错误: unsatisfiedDependencyException:创建名为“app controller”的bean时出错:通过字段“service”表示的未满足的依赖关系;嵌套异常为org.springframework.beans.factory.unsatisfieddependencyexception:创建名为“jenkins service”的bean时出错:通过字段“repo”表

  • 以下示例将演示如何在DBUtils的帮助下,使用语句来创建记录。 我们将在表中插入一条记录。 语法 其中, insertQuery − Insert query having placeholders. queryRunner − QueryRunner object to insert employee object in database. 为了理解上述与DBUtils相关的概念,我们编写一个

  • 主要内容:创建一个更新查询,创建一个删除查询,创建一个建表查询在本章中让我们来了解如何创建查询。 创建一个更新查询 可以使用更新查询更改表中的数据,并且可以使用更新查询来输入条件以指定应更新哪些行。 在执行更新之前,更新查询提供了一个查看更新数据的机会。 让我们再次转到“创建”选项卡,然后单击“查询设计”。 在“表”选项卡的“显示表”对话框中,双击表,然后关闭对话框。 在“设计”选项卡的“查询类型”组中,单击“更新”并双击要更新值的字段。假设要将员工编号为:

  • 通常情况下,Elasticsearch模块创建查询的机制与4.2节查询方法中描述的一样。通过下面的例子,我们来看看Elasticsearch模块会根据一个查询方法生成怎样的查询语句。 Example 37. Query creation from method names(通过方法名创建查询) public interface BookRepository extends Repository<B