java - 创建一个新的 JPA 实体以从两个表中生成一个新对象
问题描述
你好编程委员会,这是我第一次在愤怒中使用 JPA。
我有 2 张桌子:
Entity
@Table(name="category")
public class Category {
@Id
@Column(name="id")
@GeneratedValue(strategy=GenerationType.IDENTITY)
private int id;
@Column(name="category")
private String category;
@Column(name="budget")
private double budget;
@Column(name="savings")
private String savings;
@Column(name="archive")
private String archive;
Entity
@Table(name="Transaction")
public class Transaction {
@Id
@Column(name="transaction_no")
@GeneratedValue(strategy=GenerationType.IDENTITY)
private long transactionNo;
@Column(name="transaction_date")
private String transactionDate;
@Column(name="transaction_category")
private String transactionCategory;
@Column(name="transaction_description")
private String transactionDescription;
@Column(name="transaction_amount")
private double transcationAmount;
@Column(name="transaction_auto")
private String transactionAuto;
我想创建一个名为 Tile 的新对象,它将包含字符串类别和字符串余额,其 SQL 将是:
select t.transaction_category as category, sum(t.transaction_amount) as balance
from budgeteer.category c
join budgeteer.transaction t
on c.category = t.transaction_category
group by t.transaction_category;
对我来说最简单/最好的方法是什么?提前致谢。
解决方案
好的,所以经过更多研究后,我发现我实际上可以使用相同的实体、存储库和服务来执行此操作,而无需生成表。您只需要在创建实体时省略 @Table 注释。
推荐阅读
- javascript - javascript中带有字符串的嵌套数组形成
- sublimetext3 - 突出显示匹配“引号”和“双引号”
- sql - 根据其他几列的条件计算不同的一列
- robotframework - 在robotframework中并行执行KW
- python - 在python中打印异常的正确方法是什么?
- go - 无法使用流发送块
- vue.js - 如何手动比较两条路线
- python - pandas 中的加权平均值 - 字符串索引必须是整数
- rest - 如何在 POST Query 中使用 REST API 获取作者字段值
- jmeter - JMeter将响应保存到具有自定义扩展名的文件