如何从jpa中的抽象实体中仅获取几列

时间:2016-09-17 05:37:31

标签: java hibernate jpa

我有一个抽象的实体,它有大约140列,我已经映射了所有列。我有一个场景,我必须创建一个扩展这个抽象实体的实体,对于我的要求,我只需要40列属性的数据而不是140.我只需要读取数据,不需要持久化。

当我在Java服务实现中使用扩展实体时,我将获取所有数据。问题是当我读取超过1000条记录时,因为它正在加载所有140列数据而对性能产生影响。

那么,有什么方法或任何注释我可以用来不读取我的扩展实体中其他100列的数据?

  @MappedSuperClass
  public abstract class Base{
   //140 variable declarations like
   private string name;
   .....
   //getters and setters
  }


  @Entity
  @Table("TableName")
  public class A extends Base{
  //need just the 40 columns data from base 

  }

我认为如果我有很多记录,那么剩下的数据可能会提高性能。 注意:我不能写另一个抽象类,因为我们只为一个表使用一个抽象实体。

0 个答案:

没有答案