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

尝试在表实体中进行查询并将结果存储在另一个对象中

邹宏峻
2023-03-14

JPA存储库方法是:@query(“select date,sum(crAmt),sum(drAmt)from Daybook u where u date=?1”)

public DaybookBalance findDaybookBalance(字符串d1);

@Table(name="daybook")
public class Daybook implements Comparable<Daybook>{
    @Id
    @Column(name="dbid")
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long dbId;
    
    private int sNo;
    private String date;
    private String narration;
    private int acccode;
    private Double drAmt;
    private Double crAmt;
    private int sktValue;

public class DaybookBalance {

    private String date;
    private long crTot;
    private long drTot;

我得到以下错误:找不到能够从类型[org.springframework.data.jpa.repository.query.abstractjpaquery$tupleconverter$tuplebackedmap]转换为类型[in.trident.crdr.entities.daybookbalanance],mergedContextConfiguration=[mergedContextConfiguration@51dcb805TestClass=UserRepositoryTests,locations=“{}”,类=“{class in.trident.crdr.crdrReportApplication}”ot.autocigure.jdbc.DataSourceTransactionManagerAutoConfiguration,org.springframework.boot.autocigure.jdbc.jdbctemplateAutoConfiguration

共有1个答案

甘英光
2023-03-14

您似乎需要聚合,所以我认为这是Blaze-Persistence实体视图的完美用例。

我创建这个库是为了允许JPA模型和自定义接口或抽象类定义的模型之间的简单映射,就像Steroids上的Spring数据投影一样。其思想是以您喜欢的方式定义目标结构(域模型),并通过JPQL表达式将属性(getter)映射到实体模型。

使用Blaze-Persistence实体视图的用例的DTO模型可能如下所示:

@EntityView(Daybook.class)
public interface DaybookBalance {
    @IdMapping
    String getDate();
    @Mapping("SUM(crAmt)")
    Double getCrTot();
    @Mapping("SUM(drAmt)")
    Double getDrTot();
}
List<DaybookBalance> findAll(Pageable pageable);
 类似资料:
  • 我试图使用本机查询获得一个非实体对象,我想将其用作应用程序中一个页面上视图的模型。我遵循这个解释,它没有太多细节,它更像是一张备忘单,写给已经熟悉这个主题的人,只需要提醒。很多年前这里和这里都有类似的问题,因为我不知道所提供的代码块应该放在哪里,我想我可能会问一个新问题。无论我尝试什么,我都会遇到以下例外: 这是我的模型类: 存储库界面: 以及我尝试映射非实体类的实体类之一: 我感谢任何输入!

  • 如何将查询结果保存在字符串数组中 查询很简单,只有一列,即: 我想要的是将id存储在String数组中,这样我就可以将它们显示为列表视图中的可点击项。

  • 问题内容: 我在Python中有两个列表 我想对第一个列表进行排序,并使用结果对第二个列表进行排序。 换句话说,结果应为: 我知道如何分别对每个列表进行排序,但是如何使用对另一个列表进行排序所产生的索引排列来对一个列表进行排列呢? 问题答案: 施瓦兹变换

  • 我有两个表TABLE_A,列名为COLUMN1 COLUMN2 COLUMN3 COLUMN 4 COLUM5 abc def ghi jkl mno 123 456 789 001 121 TABLE_B列名为COLUMN6 COLUMN7,其数据为 专栏5 124 第4列bca 第3列aaa 列5 BBB 所以我将Table_A的列名作为Table_B中的数据 所以我想在一个查询中做这样的事情

  • 这是第一个代码: 那么这是它将在其中显示输出的主类: 很抱歉,如果我不清楚我的问题,但我想使用ArrayList,其中我将ArrayList存储在Person类中,我想使用公共字符串toString查看它,这样它将显示名称和年龄