繁体   English   中英

JPA中的瞬态字段和来自Query的设置

[英]Transient Field in JPA and setting from Query

我们如何从选择查询中加载JPA中的瞬态字段。

例如,我有这个查询:

SELECT table1.*, (SELECT SUM(field) from table2 WHERE theField=table1.flag) as total FROM table1;

所以我在这里需要一个名为“total”的瞬态字段。

但似乎在JPA中是不可能的

您可以在JPQL使用constructor

查询:

SELECT NEW com.foo.entities.Table1(table1.*, (SELECT SUM(field) from table2 WHERE theField=table1.flag) as total) FROM table1;

实体:

@Entity
public class Table1{

// .. other columns

@Transient
int total;

// table1Field1,table1Field2 etc. map to your table1.* coulmns
public Table1(String table1Field1,int table1Field2,int total){

// ..other assignments here

this.total = total; // transient assignment here

}


}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM